{\rtf1\ansi \deff4\deflang1033{\fonttbl{\f0\froman\fcharset0\fprq2 Tms Rmn;}{\f1\froman\fcharset2\fprq2 Symbol;}{\f2\fswiss\fcharset0\fprq2 Helv;}{\f3\fmodern\fcharset0\fprq1 Courier;} {\f4\froman\fcharset0\fprq2 Times New Roman;}{\f5\fswiss\fcharset0\fprq2 Arial;}{\f6\froman\fcharset0\fprq2 MS Serif;}{\f7\fswiss\fcharset0\fprq2 MS Sans Serif;}{\f8\froman\fcharset0\fprq2 Times{\*\falt Times New Roman};} {\f9\fswiss\fcharset0\fprq2 Helvetica;}{\f10\fswiss\fcharset0\fprq2 System;}{\f11\fmodern\fcharset0\fprq1 Courier New;}{\f12\froman\fcharset0\fprq2 New York;}{\f13\fswiss\fcharset0\fprq2 Geneva;}{\f14\fnil\fcharset2\fprq2 Marlett;} {\f15\fnil\fcharset2\fprq2 Wingdings;}{\f16\fswiss\fcharset0\fprq2 Arial Narrow;}{\f17\fswiss\fcharset0\fprq2 Arial Black;}{\f18\fswiss\fcharset0\fprq2 Arial Rounded MT Bold;}{\f19\froman\fcharset0\fprq2 Book Antiqua;} {\f20\froman\fcharset0\fprq2 Bookman Old Style;}{\f21\fswiss\fcharset0\fprq2 Century Gothic;}{\f22\froman\fcharset0\fprq2 Century Schoolbook;}{\f23\fswiss\fcharset0\fprq2 Haettenschweiler;}{\f24\fdecor\fcharset0\fprq2 Algerian;} {\f25\fdecor\fcharset0\fprq2 Braggadocio;}{\f26\fswiss\fcharset0\fprq2 Britannic Bold;}{\f27\fscript\fcharset0\fprq2 Brush Script MT;}{\f28\fdecor\fcharset0\fprq2 Colonna MT;}{\f29\fdecor\fcharset0\fprq2 Desdemona;} {\f30\froman\fcharset0\fprq2 Footlight MT Light;}{\f31\froman\fcharset0\fprq2 Garamond;}{\f32\fswiss\fcharset0\fprq2 Impact;}{\f33\fdecor\fcharset0\fprq2 Kino MT;}{\f34\froman\fcharset0\fprq2 Wide Latin;} {\f35\fscript\fcharset0\fprq2 Matura MT Script Capitals;}{\f36\fdecor\fcharset0\fprq2 Playbill;}{\f37\fmodern\fcharset2\fprq1 MS LineDraw;}{\f38\fscript\fcharset0\fprq2 Comic Sans MS;}{\f39\fnil\fcharset2\fprq2 MSIcons;} {\f40\fswiss\fcharset0\fprq2 AvantGarde;}{\f41\froman\fcharset0\fprq2 Bookman;}{\f42\fswiss\fcharset0\fprq2 Helvetica-Narrow;}{\f43\froman\fcharset0\fprq2 NewCenturySchlbk;}{\f44\froman\fcharset0\fprq2 Palatino;}{\f45\froman\fcharset0\fprq2 ZapfChancery;} {\f46\fdecor\fcharset2\fprq2 ZapfDingbats;}{\f47\froman\fcharset255\fprq2 Roman;}{\f48\fscript\fcharset255\fprq2 Script;}{\f49\fmodern\fcharset255\fprq2 Modern;}{\f50\fswiss\fcharset0\fprq1 MS Dialog;}{\f51\fmodern\fcharset0\fprq1 Lucida Sans Typewriter;} {\f52\fmodern\fcharset0\fprq1 LinePrinter;}{\f53\froman\fcharset0\fprq2 CG Times;}{\f54\fswiss\fcharset0\fprq2 Univers;}{\f55\fswiss\fcharset0\fprq2 Univers Condensed;}{\f56\fswiss\fcharset0\fprq2 Antique Olive;}{\f57\fswiss\fcharset0\fprq2 CG Omega;} {\f58\fswiss\fcharset0\fprq2 Albertus Medium;}{\f59\fswiss\fcharset0\fprq2 Albertus Extra Bold;}{\f60\froman\fcharset0\fprq2 Clarendon Condensed;}{\f61\fscript\fcharset0\fprq2 Coronet;}{\f62\fmodern\fcharset0\fprq1 Letter Gothic;} {\f63\fscript\fcharset0\fprq2 Marigold;}{\f64\fswiss\fcharset0\fprq2 News Gothic MT;}{\f65\fscript\fcharset0\fprq2 Lucida Handwriting;}{\f66\fswiss\fcharset0\fprq2 Lucida Sans;}{\f67\fswiss\fcharset0\fprq2 Lucida Sans Unicode;} {\f68\fmodern\fcharset0\fprq1 OCR A Extended;}{\f69\froman\fcharset0\fprq2 Calisto MT;}{\f70\fswiss\fcharset0\fprq2 Abadi MT Condensed Light;}{\f71\fswiss\fcharset0\fprq2 Copperplate Gothic Bold;}{\f72\fswiss\fcharset0\fprq2 Copperplate Gothic Light;} {\f73\fmodern\fcharset0\fprq1 Lucida Console;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128; \red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\widctlpar \f4\fs20 \snext0 Normal;}{\s1\li-1800\sb200\sa80\sl-440\slmult0 \keepn\widctlpar \b\f16\fs40 \sbasedon0\snext0 heading 1;}{\s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 \sbasedon1\snext0 heading 2;}{\s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 \sbasedon1\snext0 heading 3;}{ \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 \sbasedon1\snext0 heading 4;}{\s5\sb40\sa40\sl-240\slmult0\keepn\widctlpar \b\f16\fs21 \sbasedon1\snext0 heading 5;}{\s6\sb40\sl-238\slmult0 \keepn\widctlpar\pvpara\posy0\absh255\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 \sbasedon1\snext15 heading 6;}{\*\cs10 \additive Default Paragraph Font;}{\s15\sb40\widctlpar \f4\fs20 \sbasedon0\snext0 H6p;}{\s16\sb40\sl-238\slmult0 \keepn\nowidctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21\cf2 \sbasedon17\snext18 Wh;}{\s17\sb40\sl-238\slmult0\keepn\nowidctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 \snext18 Nh;}{ \s18\sb40\sa80\keepn\widctlpar \f4\fs20 \sbasedon19\snext20 Np1;}{\s19\sa80\keepn\widctlpar \f4\fs20 \sbasedon0\snext20 Np2;}{\s20\li30\ri30\sa40\sl-140\slmult0\nowidctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \snext0 Ne;}{ \s21\li30\ri30\sb40\sl-80\slmult0\keepn\nowidctlpar\brdrb\brdrdb\brdrw15\brdrcf2 \f4\fs12\cf8 \snext16 Ws;}{\s22\li30\ri30\sl-200\slmult0\widctlpar\brdrt\brdrdb\brdrw15\brsp20\brdrcf2 \f4\fs16\cf8 \sbasedon0\snext0 We;}{\s23\li30\ri30\sl-80\slmult0 \keepn\nowidctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \snext17 Ns;}{\s24\li280\sb40\sl-238\slmult0\keepn\nowidctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 \sbasedon17\snext25 Nhi;}{ \s25\fi-280\li280\sb40\sa80\keepn\widctlpar \f4\fs20 \sbasedon18\snext26 Np1i;}{\s26\li310\ri30\sl-140\slmult0\nowidctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \sbasedon20\snext27 Nei;}{\s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \sbasedon0\snext27 Ln1;}{\s28\li310\ri30\sl-80\slmult0\keepn\nowidctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \sbasedon23\snext24 Nsi;}{\s29\li310\ri30\sb40\sl-80\slmult0\keepn\nowidctlpar\brdrb\brdrdb\brdrw15\brdrcf2 \f4\fs12\cf8 \sbasedon21\snext30 Wsi;}{\s30\li280\sb40\sl-238\slmult0\keepn\nowidctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21\cf2 \sbasedon24\snext25 Whi;}{\s31\li-240\sl-300\slmult0\nowidctlpar \f4\fs16 \snext0 Sbre;}{\s32\li310\ri30\sl-140\slmult0\widctlpar \brdrt\brdrdb\brdrw15\brsp20\brdrcf2 \f4\fs12\cf8 \sbasedon22\snext27 Wei;}{\s33\li280\ri280\sb220\sa40\sl-280\slmult0\keepn\nowidctlpar \b\f16 \snext34 Sbrh;}{\s34\li280\ri280\sa160\sl-240\slmult0\keepn\nowidctlpar \f4\fs21 \snext34 Sbrp;}{ \s35\sb20\sa60\sl-220\slmult0\keepn\nowidctlpar \b\f4\fs19 \snext36 Tt;}{\s36\qr\sl-20\slmult0\keepn\nowidctlpar\brdrt\brdrs\brdrw15 \f4\fs8 \snext0 Tr;}{\s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar \b\f4\fs19 \sbasedon0\snext37 Th;}{ \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\tx280\tx560 \f4\fs19 \sbasedon0\snext38 Tp;}{\s39\qr\li30\ri30\sb80\sa80\sl-180\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs16 \sbasedon0\snext0 Te;}{\s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \sbasedon0\snext0 Le;}{\s41\li-1800\sb20\sa60\sl-220\slmult0\keepn\nowidctlpar \b\f4\fs19 \sbasedon35\snext36 Ttw;}{\s42\li-1800\sa420\sl-600\slmult0\keepn\pagebb\nowidctlpar \b\f16\fs48 \snext0 Ih;}{\s43\sl-540\slmult0 \keepn\nowidctlpar\pvpara\phmrg\posnegx-1801\posy0\absh-2460\absw6720\nowrap \b\f16\fs48 \snext0 Ch;}{\s44\sl-220\slmult0\nowidctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 \snext44 Ex;}{\s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 \sbasedon0\snext45 Lb1;}{\s46\fi-360\sb80\sa80\sl-240\slmult0\keepn\nowidctlpar\tx280 \b\f4\fs21 \snext27 Proch;}{\s47\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 \sbasedon1\snext0 Hn1;}{\s48\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 \sbasedon2\snext0 Hn2;}{\s49\sl-220\slmult0\keepn\nowidctlpar\pvpara\phpg\posy0\absw1560\dxfrtext240\dfrmtxtx240\dfrmtxty0 \f16\fs19 \snext0 Mp;}{ \s50\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \sbasedon27\snext50 Lp1;}{\s51\ri240\sb100\sa40\sl240\slmult0\keepn\widctlpar \b\f4\fs20 \sbasedon0\snext52 Erm;}{\s52\sa100\widctlpar \f4\fs20 \sbasedon0\snext52 Erp;}{\s53\li-1800\sa280\sl-240\slmult0 \keepn\nowidctlpar \caps\f4\expnd24\expndtw120 \snext43 Cn;}{\s54\fi-280\li560\sa80\widctlpar\tx560 \f4\fs20 \sbasedon45\snext54 Lb2;}{\s55\li280\sl-220\slmult0 \nowidctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 \sbasedon44\snext55 Exl;}{\s56\sa240\sl-220\slmult0\nowidctlpar\tx280\tx560 \b\f4\fs19 \snext0 Cap;}{ \s57\fi-600\li560\sa80\widctlpar\tqr\tx440\tx560 \f4\fs20 \sbasedon27\snext57 Ln2;}{\s58\li560\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \sbasedon50\snext58 Lp2;}{\s59\li-1770\ri30\sb50\sl-80\slmult0\nowidctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \snext0 header rule;}{\s60\li-1800\sa180\sl-440\slmult0\keepn\nowidctlpar\tx0 \b\f16\fs40\up6 \snext61 Rh1;}{\s61\sb20\sl-220\slmult0\keepn\nowidctlpar\pvpara\phpg\posy0\absw1560\dxfrtext240\dfrmtxtx240\dfrmtxty240 \b\f16\fs21 \snext0 Rmh;}{ \s62\ri240\sb20\sa60\sl240\slmult0\keepn\widctlpar \b\f4\fs20 \sbasedon51\snext62 Ermn;}{\s63\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 \sbasedon3\snext0 Hn3;}{\s64\sl-240\slmult0\keepn\nowidctlpar \f4\fs21 \snext65 Term1;}{ \s65\li280\sa80\widctlpar \f4\fs20 \sbasedon0\snext64 Def1;}{\s66\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 \sbasedon45\snext40 Lbp;}{\s67\li280\sa80\keepn\widctlpar \f4\fs20 \sbasedon19\snext26 Np2i;}{\s68\li280\sl-240\slmult0\keepn\nowidctlpar \f4\fs21 \sbasedon64\snext69 Term2;}{\s69\li560\sa80\widctlpar \f4\fs20 \sbasedon65\snext68 Def2;}{\s70\li-1800\sl-220\slmult0 \nowidctlpar\tx-1410\tx-1020\tx-630\tx-240\tx150\tx540\tx930\tx1320\tx1710\tx2100\tx2490\tx2880\tx3270\tx3660\tx4050\tx4440\tx4830\tx5220\tx5610\tx6000\tx6390\tx6780 \f51\fs16 \sbasedon44\snext70 Exw;}{\s71\li-1770\ri30\sb280\sa250\sl-120\slmult0 \keepn\nowidctlpar\brdrb\brdrs\brdrw15\brdrcf2 \f4\fs8\cf8 \snext60 Rule;}{\s72\li-1800\widctlpar\tx-1520\tx-1240\tx-960\tx-680\tx-400\tx-120\tx160\tx440\tx720\tx1000 \f4\fs20 \sbasedon0\snext0 Synw;}{ \s73\widctlpar\tx280\tx560\tx840\tx1120\tx1400\tx1680\tx1960\tx2240\tx2520\tx2800\tx3080\tx3360\tx3640\tx3920\tx4200\tx4480\tx4760\tx5040\tx5320\tx5600\tx5880\tx6160\tx6440\tx6720 \f4\fs20 \sbasedon0\snext0 Syn;}{\s74\qr\sl-80\slmult0\widctlpar \f4\fs12 \sbasedon40\snext1 Leh;}{\s75\sa80\widctlpar \f4\fs20 \sbasedon0\snext75 Lmc;}{\s76\li-280\sl-80\slmult0\keepn\pagebb\nowidctlpar\pvpara\phpg\posy0\dxfrtext180\dfrmtxtx180\dfrmtxty0 \f4\fs12 \snext0 Pb;}{\s77\sa80\keepn\widctlpar \f4\fs20 \sbasedon0\snext27 Procp;}{\s78\fi-280\li520\sb20\sa60\sl-220\slmult0\widctlpar\tx520 \f4\fs19 \sbasedon38\snext78 Tpi;}{\s79\qr\li240\sb20\sa60\sl-220\slmult0\widctlpar \f4\fs19 \sbasedon38\snext38 Tpr;}{\s80\sb20\sa60\sl-220\slmult0 \nowidctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 \sbasedon44\snext80 Texf;}{\s81\fi-140\li140\sb20\sa40\sl-200\slmult0\widctlpar\tx280 \f4\fs17 \sbasedon38\snext81 Tf;}{\s82\sb20\sa60\sl-220\slmult0\widctlpar\tx280\tx560 \f4\fs19 \sbasedon38\snext82 Tpf;}{\s83\qr\li-1770\ri30\sb80\sa80\sl180\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs16 \sbasedon39\snext0 Tew;}{ \s84\li-1800\sb80\sa240\nowidctlpar\tx0\tx280\tx560 \f4\fs28 \snext0 Art;}{\s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar \b\f4\fs19 \sbasedon37\snext37 Thf;}{\s86\fi-280\li280\sb20\sa60\sl-220\slmult0\widctlpar\tx280 \f4\fs19 \sbasedon78\snext86 Tpif;}{ \s87\sl-640\slmult0\keepn\nowidctlpar\pvpara\phmrg\posnegx-1801\posy2\absh-2460\absw6720\dxfrtext180\dfrmtxtx180\dfrmtxty0\nowrap \f4\fs60\cf2 \sbasedon43\snext0 Ph;}{\s88\sa80\keepn\widctlpar \v\f16\cf5 \sbasedon0\snext0 index;}{\s89\sl-220\slmult0 \nowidctlpar\tqr\tx1560\pvpara\phpg\posy0\absw1560\dxfrtext240\dfrmtxtx240\dfrmtxty0 \b\f4\fs19 \sbasedon56\snext0 CapSd;}{\s90\sa240\keepn\nowidctlpar\tqr\tx1560\pvpara\phpg\posy0\absw1560\dxfrtext240\dfrmtxtx240\dfrmtxty0 \f4\fs28 \sbasedon84\snext0 ArtSd;}{\s91\li240\sb20\sa60\sl-220\slmult0\nowidctlpar\tx630\tx1020\tx1410\tx1800\tx2190\tx2580\tx2970\tx3360\tx3750\tx4140\tx4530\tx4920\tx5310\tx5700\tx6090\tx6480\tx6870 \f51\fs16 \sbasedon80\snext91 Tex;}{\s92\ri120\sl-360\slmult0\keepn\widctlpar\box \brdrs\brdrw15\brsp80\brdrcf8 \pvpara\phmrg\posxr\posy0\absh-390 \shading6000\cfpat2 \b\f16\cf8\up10 \sbasedon0\snext60 *hb2;}{\s93\qc\sl-360\slmult0\keepn\widctlpar\box\brdrs\brdrw15\brsp20\brdrcf8 \pvpara\phpg\posy0\absh-390\absw1460\dxfrtext220\dfrmtxtx220\dfrmtxty0 \shading6000\cfpat2 \b\f16\cf8\up4 \sbasedon4\snext4 *hb1;}{\s94\sb20\sa60\widctlpar\tx240\tx280\tx560 \f4\fs19 \sbasedon38\snext94 Tart;}{\s95\qr\li310\ri30\sb80\sa80\sl180\slmult0 \widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs16 \sbasedon0\snext27 Tei;}{\s96\li280\ri280\sb40\sa40\sl-240\slmult0\keepn\nowidctlpar \b\f16\fs21 \snext34 Sbrh2;}{\s97\fi-280\li560\ri280\sa80\keepn\widctlpar\tx560 \f4\fs20 \sbasedon0\snext97 SbrLb;}{ \s98\li560\sl-220\slmult0\nowidctlpar\tx950\tx1340\tx1730\tx2120\tx2510\tx2900\tx3290\tx3680\tx4070\tx4460\tx4850\tx5240\tx5630\tx6020\tx6410\tx6800 \f51\fs16 \sbasedon55\snext98 Exl2;}{\s99\li280\ri280\sl-220\slmult0 \keepn\nowidctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520 \f51\fs16 \snext99 SbrEx;}{\s100\qr\sl-100\slmult0\widctlpar \f4\fs12 \sbasedon74\snext1 Teh;}{\s101\sb20\sa60\sl-220\slmult0 \widctlpar\tx280\tx560\tx840\tx1120\tx1400\tx1680\tx1960\tx2240\tx2520\tx2800\tx3080\tx3360\tx3640\tx3920\tx4200\tx4480\tx4760\tx5040\tx5320\tx5600\tx5880\tx6160\tx6440\tx6720 \f4\fs19 \sbasedon73\snext101 Tsyn;}{\s102\qr\li280\ri280\sl-160\slmult0 \keepn\widctlpar \f4\fs12 \sbasedon0\snext34 SbrLe;}{\s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \sbasedon0\snext0 Tes;}{\s104\li-240\sl-100\slmult0\keepn\nowidctlpar \f4\fs16 \snext33 Sbrs;}{\s105\fi-300\li420\ri140\sb100\sl-210\slmult0 \nowidctlpar\tx140\tx420 \f16\fs19 \snext105 *Cbx;}{\s106\fi-300\li420\ri140\sb100\sa100\sl-210\slmult0\nowidctlpar\tx140\tx420 \f16\fs19 \sbasedon105\snext36 *Cbxe;}{\*\cs107 \additive\cf11 \sbasedon10 annotation reference;}{\s108\sa180\widctlpar \f4\cf11 \sbasedon0\snext108 annotation text;}{\s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon110\snext109 toc 3;}{\s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon0\snext111 toc 1;}{\s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon110\snext111 toc 2;}{\s112\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \f4\fs10 \sbasedon0\snext112 footer;}{\s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 \sbasedon0\snext59 header;}{\s114\li280\widctlpar \f4\fs20 \sbasedon0\snext114 Normal Indent;}{\s115\fi-280\li560\ri280\sa80\keepn\widctlpar\tx560 \f4\fs20 \sbasedon97\snext97 SbrLp;}{\*\cs116 \additive\sbasedon10 page number;}{\s117\li630\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon0\snext0 toc 4;}{ \s118\li840\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon0\snext0 toc 5;}{\s119\li1050\widctlpar\tqr\tldot\tx6960 \f4\fs20 \sbasedon0\snext0 toc 6;}}{\*\revtbl {Unknown;}{mark williams;}}{\info{\title --}{\author Microsoft Corp.}{\operator Mark Williams} {\creatim\yr1995\mo10\dy17\hr5\min54}{\revtim\yr1996\mo2\dy23\hr14\min41}{\version3}{\edmins3}{\nofpages82}{\nofwords23565}{\nofchars134326}{\*\company Microsoft}{\vern57431}}\margl3330\margr1530\margt-2540\margb-2220\gutter420 \facingp\deftab274\widowctrl\ftnbj\aenddoc\noextrasprl\prcolbl\cvmme\sprsspbf\brkfrm\swpbdr\linkstyles\hyphcaps0 \fet0\sectd \pgnrestart\linex0\headery1990\footery360\endnhere\titlepg {\headerl \pard\plain \s113\li-1800\sl-210\slmult0 \widctlpar\tqr\tx6960 \b\f16\fs19 \tab {\field{\*\fldinst {\cs116 PAGE }}{\fldrslt {\cs116\lang1024 2}}}{\cs116 \par }\pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\headerr \pard\plain \s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 {\field{\*\fldinst {\cs116 PAGE }}{\fldrslt {\cs116\lang1024 3}}}{\cs116 \tab \par }\pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\footerl \pard\plain \s112\sl140\slmult0\widctlpar\pvpara\phmrg\posxr\posy0 \f4\fs10 {\field{\*\fldinst page }{\fldrslt {\lang1024 2}}} \par \pard \s112\ri360\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \par }{\footerr \pard\plain \s112\sl140\slmult0\widctlpar\pvpara\phmrg\posxr\posy0 \f4\fs10 {\field{\*\fldinst page }{\fldrslt {\lang1024 3}}} \par \pard \s112\ri360\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \par }{\headerf \pard\plain \s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 \tab {\field{\*\fldinst {\cs116 PAGE }}{\fldrslt {\cs116\lang1024 1}}} \par \pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang{\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang{\pntxta )}}{\*\pnseclvl5 \pndec\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain \s43\sl-540\slmult0\keepn\widctlpar\pvpara\phmrg\posnegx-1801\posy0\absh-2460\absw6720\nowrap \b\f16\fs48 Using the Microsoft{\b0\fs18 \'ae} Windows{ \b0\fs18 \'ae} 95 \par Modem Development Kit (MDK) \par \pard\plain \qr\li14\widctlpar \f4\fs20 {\fs28 \par }{\b\fs24 Version 0.96 \par November 1995 \par }\pard \widctlpar \par \par \pard \li14\widctlpar \par \pard \widctlpar {\f5 \par }\pard\plain \s5\sb40\sa40\sl-240\slmult0\keepn\widctlpar \b\f16\fs21 \sect \sectd \pgnrestart\linex0\headery1990\footery360\endnhere\titlepg \pard\plain \widctlpar \f4\fs20 \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s5\sb40\sa40\sl-240\slmult0\keepn\widctlpar \b\f16\fs21 Contents \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 CONTENTS OF THE MODEM DEVELOPMENT KIT{\fs16\expnd12\expndtw60 \tab }5 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Sample INF Files{\fs16\expnd12\expndtw60 \tab }5 \par Documentation{\fs16\expnd12\expndtw60 \tab }5 \par Tools{\fs16\expnd12\expndtw60 \tab }6 \par Other Useful Tools and Documentation Files{\fs16\expnd12\expndtw60 \tab }6 \par Support{\fs16\expnd12\expndtw60 \tab }6 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 MODEM DEVELOPMENT KIT ROADMAP{\fs16\expnd12\expndtw60 \tab }7 \par Step 1 -- Determining Your Modem ID Strings{\fs16\expnd12\expndtw60 \tab }7 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Determining the Type of Modem You Are Installing{\fs16\expnd12\expndtw60 \tab }8 \par Recognizing the Different Types of Modem ID Strings{\fs16\expnd12\expndtw60 \tab }8 \par Using Tools to Obtain Modem ID Strings from Modems{\fs16\expnd12\expndtw60 \tab }9 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Obtaining and Using Unimodem ID Strings{\fs16\expnd12\expndtw60 \tab }9 \par Obtaining and Using Serenum PNP Hardware IDs{\fs16\expnd12\expndtw60 \tab }9 \par Obtaining ISAPNP Hardware and Compatible IDs{\fs16\expnd12\expndtw60 \tab }10 \par Obtaining and Using PCMCIA Hardware IDs{\fs16\expnd12\expndtw60 \tab }12 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Step 2 -- Creating The Modem INF File{\fs16\expnd12\expndtw60 \tab }13 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Tools for Creating Modem INF Files{\fs16\expnd12\expndtw60 \tab }13 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Using the Infedit Tool{\fs16\expnd12\expndtw60 \tab }13 \par Using the Profile Calculator{\fs16\expnd12\expndtw60 \tab }13 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Understanding the General Format and Content of INF Files{\fs16\expnd12\expndtw60 \tab }14 \par Introducing a Sample Data Modem INF File{\fs16\expnd12\expndtw60 \tab }17 \par General Traps to Avoid When Editing INF Files{\fs16\expnd12\expndtw60 \tab }23 \par Adapting the [Version] and [Strings] Sections of SMPDATA.INF{\fs16\expnd12\expndtw60 \tab }24 \par Adapting the Manufacturer and Model Sections of SMPDATA.INF{\fs16\expnd12\expndtw60 \tab }24 \par Adapting the [Modem1] and [Modem2] Install-Type Sections of SMPDATA.INF{\fs16\expnd12\expndtw60 \tab }27 \par Adapting the [All], [MfgAddReg], and [Modem1.AddReg] Sections of SMPDATA.INF{\fs16\expnd12\expndtw60 \tab }29 \par Using Rank 0, Rank 1, and Rank 2 Modem ID Strings{\fs16\expnd12\expndtw60 \tab }32 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 General Strategies for Using Modem ID Strings{\fs16\expnd12\expndtw60 \tab }33 \par More Precise Strategies for Using Modem ID Strings{\fs16\expnd12\expndtw60 \tab }33 \par Rank 0, Rank 1, and Rank 2 ID Differences{\fs16\expnd12\expndtw60 \tab }34 \par Resolving Rank 1 ID Matches{\fs16\expnd12\expndtw60 \tab }35 \par Testing Dual Rank 0 and 1 Entries{\fs16\expnd12\expndtw60 \tab }36 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Using PosDup and NoResDup INF Sections{\fs16\expnd12\expndtw60 \tab }38 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Comparing PosDup and NoResDup Sections{\fs16\expnd12\expndtw60 \tab }38 \par How PosDup Sections Work{\fs16\expnd12\expndtw60 \tab }39 \par Using PosDup with ISAPNP Modems{\fs16\expnd12\expndtw60 \tab }40 \par Using PosDup with Multiple PnP Devices{\fs16\expnd12\expndtw60 \tab }40 \par Uses of ExcludeFromSelect Items in [ControlFlags] Sections{\fs16\expnd12\expndtw60 \tab }41 \par How NoResDup Sections Work{\fs16\expnd12\expndtw60 \tab }41 \par Using NoResDup with Serenum PnP Modems{\fs16\expnd12\expndtw60 \tab }42 \par Testing NoResDup and PosDup Sections{\fs16\expnd12\expndtw60 \tab }42 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 OPTIONAL Step 3 -- Adding FAX Support{\fs16\expnd12\expndtw60 \tab }44 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Adding a Fax Entry to a Unimodem INF file{\fs16\expnd12\expndtw60 \tab }44 \par Known Fax Problems{\fs16\expnd12\expndtw60 \tab }45 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Modem Initialization{\fs16\expnd12\expndtw60 \tab }45 \par Choosing Modem Class{\fs16\expnd12\expndtw60 \tab }45 \par Class 1: FCS Checking{\fs16\expnd12\expndtw60 \tab }45 \par Class 1 NSF frame transmission{\fs16\expnd12\expndtw60 \tab }46 \par Class 2: Byte-order{\fs16\expnd12\expndtw60 \tab }46 \par Class 2: Answer Time-out{\fs16\expnd12\expndtw60 \tab }46 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Fax Driver Comm I/O Logging{\fs16\expnd12\expndtw60 \tab }46 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Overview of Comm Logging{\fs16\expnd12\expndtw60 \tab }46 \par Configuring Comm Logging{\fs16\expnd12\expndtw60 \tab }47 \par Viewing the Log File{\fs16\expnd12\expndtw60 \tab }47 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 OPTIONAL STEP 4 -- Adding Voiceview Support{\fs16\expnd12\expndtw60 \tab }49 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Modifying the Install Section{\fs16\expnd12\expndtw60 \tab }49 \par Modifying the AddReg Section(s){\fs16\expnd12\expndtw60 \tab }50 \par Adding or Modifying the DestinationDirs Section{\fs16\expnd12\expndtw60 \tab }51 \par Adding CopyFiles Sections{\fs16\expnd12\expndtw60 \tab }51 \par Adding an AddReg Section for Windows Sockets{\fs16\expnd12\expndtw60 \tab }52 \par Adding Items to the [Strings] Section{\fs16\expnd12\expndtw60 \tab }52 \par Adding or Modifying the Update Ini File Sections{\fs16\expnd12\expndtw60 \tab }52 \par Adding an Uninstall Section{\fs16\expnd12\expndtw60 \tab }53 \par Example Modem INF File That Supports VoiceView{\fs16\expnd12\expndtw60 \tab }53 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 OPTIONAL STEP 5 -- Adding Voice Support{\fs16\expnd12\expndtw60 \tab }57 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Installing a Wave Driver{\fs16\expnd12\expndtw60 \tab }58 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Changing Items in SMPSERWV.INF{\fs16\expnd12\expndtw60 \tab }59 \par Changing Items in SMPWRAP.INF{\fs16\expnd12\expndtw60 \tab }61 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Understanding the Primary Commands Used by Unimodem/V{\fs16\expnd12\expndtw60 \tab }63 \par Adding Section Names to the Install Section AddReg= Item{\fs16\expnd12\expndtw60 \tab }63 \par Adding Modem-Specific Voice Support Section to the INF File{\fs16\expnd12\expndtw60 \tab }63 \par Adding a VoiceProfile Key{\fs16\expnd12\expndtw60 \tab }64 \par Adding Keys That Describe the Audio Mixer{\fs16\expnd12\expndtw60 \tab }64 \par Adding Caller ID Support{\fs16\expnd12\expndtw60 \tab }65 \par Adding Distinctive Ring Support{\fs16\expnd12\expndtw60 \tab }65 \par Adding Speaker Phone Support{\fs16\expnd12\expndtw60 \tab }66 \par Adding Registry Keys to Support Phone Message Recording and Playback{\fs16\expnd12\expndtw60 \tab }67 \par Adding Registry Keys to Answer a Voice Call{\fs16\expnd12\expndtw60 \tab }69 \par Adding Registry Keys to Dial Out for a Voice Call{\fs16\expnd12\expndtw60 \tab }70 \par Adding Registry Keys to Generate DTMF Digits in Voice Mode{\fs16\expnd12\expndtw60 \tab }70 \par Adding Registry Keys to Support Voice to Data Answering Switch{\fs16\expnd12\expndtw60 \tab }70 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 STEP 6 -- TESTING YOUR MODEM INSTALLATION WITH MCT{\fs16\expnd12\expndtw60 \tab }71 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Preparing to Run MCT{\fs16\expnd12\expndtw60 \tab }71 \par MCT Testing Methodology: Tips and Traps{\fs16\expnd12\expndtw60 \tab }73 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Avoiding Current MCT Limitations{\fs16\expnd12\expndtw60 \tab }73 \par Avoiding Common MCT Setup Errors{\fs16\expnd12\expndtw60 \tab }73 \par Using Alternate Configurations for Running the MCT{\fs16\expnd12\expndtw60 \tab }73 \par Avoiding Common INF Item Problems{\fs16\expnd12\expndtw60 \tab }74 \par Avoiding DTE and DCE Speed Problems{\fs16\expnd12\expndtw60 \tab }74 \par \pard\plain \s111\li280\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Full Debugging of a Modem INF File Using Modem Event Logs{\fs16\expnd12\expndtw60 \tab }75 \par \pard\plain \s109\li560\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 Setting Up a Modem Event Logging Session{\fs16\expnd12\expndtw60 \tab }75 \par Using the Terminal Application as a Debugging Aid{\fs16\expnd12\expndtw60 \tab }76 \par Interpreting Modem Event Logs{\fs16\expnd12\expndtw60 \tab }77 \par Sample Data Modem Event Log{\fs16\expnd12\expndtw60 \tab }78 \par Sample Voice Modem Event Log{\fs16\expnd12\expndtw60 \tab }80 \par \pard\plain \s110\sa40\widctlpar\tqr\tldot\tx6960 \f4\fs20 STEP 7 -- Getting Modem Certification from WHQL{\fs16\expnd12\expndtw60 \tab }84 \par STEP 8 -- Distributing Your INF File{\fs16\expnd12\expndtw60 \tab }84 \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 \sect \sectd \binfsxn1\binsxn1\sbkodd\linex0\headery1990\footery360\colsx0\endnhere\titlepg {\headerl \pard\plain \s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 {\field{\*\fldinst PAGE}{\fldrslt {\lang1024 80 }}}{\expnd50\expndtw250 } \par \pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\headerr \pard\plain \s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 \tab Using the Windows 95 Modem Development Kit{\expnd50\expndtw250 }{\field{\*\fldinst PAGE}{\fldrslt {\lang1024 61}}} \par \pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\footerl \pard\plain \s112\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \f4\fs10 Filename: {\field{\*\fldinst filename }{\fldrslt 10ABODY.DOT}} Project: {\field{\*\fldinst title }{\fldrslt --}}\line Author: {\field{\*\fldinst author }{\fldrslt Microsoft Corp.}} Last Saved By: {\field{\*\fldinst lastsavedby }{\fldrslt Microsoft Corp.}} \par {\f8 \par }}{\footerr \pard\plain \s112\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \f4\fs10 Filename: {\field{\*\fldinst filename }{\fldrslt 10ABODY.DOT}} Project: {\field{\*\fldinst title }{\fldrslt --}}\line Author: {\field{\*\fldinst author }{\fldrslt Microsoft Corp.}} Last Saved By: {\field{\*\fldinst lastsavedby }{\fldrslt Microsoft Corp.}} \par {\f8 \par }}{\headerf \pard\plain \s113\li-1800\sl-210\slmult0\widctlpar\tqr\tx6960 \b\f16\fs19 \tab {\field{\*\fldinst PAGE}{\fldrslt {\lang1024 5}}} \par \pard\plain \s59\li-1770\ri30\sb50\sl-80\slmult0\widctlpar\brdrt\brdrs\brdrw15\brdrcf2 \f4\fs12 \par }{\footerf \pard\plain \s112\sl140\slmult0\widctlpar\pvpg\phpg\posx1999\posy14702 \f4\fs10 Filename: {\field{\*\fldinst filename }{\fldrslt 10ABODY.DOT}} Project: {\field{\*\fldinst title }{\fldrslt --}}\line Author: {\field{\*\fldinst author }{\fldrslt Microsoft Corp.}} Last Saved By: {\field{\*\fldinst lastsavedby }{\fldrslt Microsoft Corp.}} \par {\f8 \par }}\pard\plain \widctlpar \f4\fs20 \par \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282463}{\*\bkmkstart _Toc342282560}CONTENTS OF THE MODEM DEVELOPMENT KIT{\*\bkmkend _Toc342282463}{\*\bkmkend _Toc342282560} \par \pard\plain \widctlpar \f4\fs20 This Windows 95 Modem Development Kit (MDK) provides the tools, sample INF files, and information you need to build and test Windows 95 format INF files for AT (data) and AT+V (voice) command modems. Windows 95 INF files are required for modems to be used by programs which call the Windows Telephony API (TAPI) to make data/fax/voice calls, including the Windows 95 applets HyperTerminal, Dial-up Networking, Phone Dialer, The Microsoft Network as well as other Win32(r) communications applications written fo r Windows 95. \par This MDK is a complete revision of the MDK shipped that was supplied with the Windows 95 DDK. In particular, the MODEM.DOT tool provided in that MDK is not part of this MDK. Use the InfEdit tool provided in this MDK to build your INF files instead of MODE M.DOT. You can also edit your INF files using an ASCII text editor. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282464}{\*\bkmkstart _Toc342282561}Sample INF Files{\*\bkmkend _Toc342282464}{\*\bkmkend _Toc342282561} \par \pard\plain \widctlpar \f4\fs20 Sample INF files included in the MDK, and the purpose of each, are listed below. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPDATA.INF is an INF file that installs a data modem (a modem without voice or VoiceView support). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPVV.INF is a sample INF file for a modem that supports VoiceView. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPVOICE.INF is a sample INF file for a voice modem. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPSERWV.INF is a sample INF file the installs the serial wave driver required by most voice modems. See "Step 5 -- Adding Voice Capability to Your INF" for more information about the serial wave driver. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPWRAP.INF is a sample INF file that installs the wave wrapper required by some voice modems. See "Step 5 -- Adding Voice Capability to Your INF" for more information about the wave wrapper. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282465}{\*\bkmkstart _Toc342282562}Documentation{\*\bkmkend _Toc342282465}{\*\bkmkend _Toc342282562} \par \pard\plain \widctlpar \f4\fs20 The following documentation files are included in the MDK. Use Word 6 or later to print the .DOC files. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MDK.DOC (this document) presents a procedure you can use to build, debug, optimize, and distribute your modem INF file and any other driver files required by your modem. MDK.DOC is a users' guide to the MDK. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab REG.DOC specifies the registry entries that are included in a modem INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab VOICEMOD.DOC, which is the specification for changes to the Windows 95 comm drivers to support voice modems. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282466}{\*\bkmkstart _Toc342282563}Tools{\*\bkmkend _Toc342282466}{\*\bkmkend _Toc342282563} \par \pard\plain \widctlpar \f4\fs20 The following tools are included in the MDK: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab LOGGER.VXD and LOGWIN.EXE, which produce logs in real-time of the events that take place when your modem is running. You can display the event log in a window on the screen and/or save the log in a file on disk. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Profile Calculator, which presents a graphical user interface you can employ to build and analyze VoiceProfile key values, which are hexadecimal values that represent bit vectors (see REG.DOC for a detained description of the bit vectors you can put in a n INF file, such as the VoiceProfile bit vector). \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282467}{\*\bkmkstart _Toc342282564}Other Useful Tools and Documentation Files{\*\bkmkend _Toc342282467}{\*\bkmkend _Toc342282564} \par \pard\plain \widctlpar \f4\fs20 The following tools and documentation files are in other parts of the Windows 95 DDK instead of in the Modem Development Kit, but often used by modem developers. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MODEMID.EXE, which is used to obtain Unimodem ID strings from modems (including modems on PCMCIA cards). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab INFEDIT.EXE, which presents a graphical user interface that prompts you for information to put into an INF file and builds the INF file for you. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MODEMHCT.EXE and ORACLE.TXT, which are tools for running the MCT. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab PNP.DOC is the Plug and Play documentation from the Windows 95 DDK, which includes a chapter on how to use the INFEDIT.EXE tool and a reference for all types of sections and items that can be in a Windows 95 INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MCTKIT.DOC, which give information about the Windows Hardware Quality Labs (WHQL) modem certification tests and how WHQL administers the certification tests. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282468}{\*\bkmkstart _Toc342282565}Support{\*\bkmkend _Toc342282468}{\*\bkmkend _Toc342282565} \par \pard\plain \widctlpar \f4\fs20 The MDK is supported by Microsoft Product Support Services (PSS). You can purchase support by calling Microsoft PSS sales at 1-800-936-3500. If you subscribe to the Microsoft Development Network (MSDN), you are entitled to two free support calls. The phon e number to call for these calls is supplied in the documentation that comes with the MSDN CD you purchased. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282469}{\*\bkmkstart _Toc342282566}MODEM DEVELOPMENT KIT ROADMAP{\*\bkmkend _Toc342282469}{\*\bkmkend _Toc342282566} \par \pard\plain \widctlpar \f4\fs20 A roadmap for developing, testing, and distributing your modem INF file is: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Determine the modem ID string(s) you are going to use in your INF file. \par \tab 2\tab Use the Infedit tool to create the INF file. You can either edit and adapt an existing modem INF file or build one from scratch. \par \tab 3\tab Add Fax capability to the INF file (this is an optional step). \par \tab 4\tab Add Voice View capability to the INF file (this is an optional step). \par \tab 5\tab Add Voice capability to the INF file (this is an optional step). \par \tab 6\tab Test the INF file by using it to install your modem on Windows 95 platforms and test the modem installation using the Modem Compatibility Test (MCT). \par \tab 7\tab Send the INF file, your modem(s), and any driver files the modems may require to the Microsoft Windows Hardware Quality Labs (WHQL) for certification. See "Step 7 -- Getting Certification from WHQL" for all the information you need to work with the Win dows Hardware Quality Labs to get your modem certified. This is the most important step in the roadmap. \par \tab 8\tab Distribute your INF file (and any required driver files) to customers who are installing your modem(s) on their Windows 95 computers. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The rest of this document is organized around this sequence of steps. Each of the steps is described, along with tips and traps. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282470}{\*\bkmkstart _Toc342282567}Step 1 -- Determining Your Modem ID Strings{\*\bkmkend _Toc342282470}{\*\bkmkend _Toc342282567} \par \pard\plain \widctlpar \f4\fs20 You must put one or more modem ID strings in your INF file that uniquely identify each modem or modem model the INF file can insta ll. This is required of non-Plug and Play modems as well as Plug and Play (PnP) modems, and enables Windows 95 modem autodetection and enumeration to function properly. \par There are several different modem ID strings that can be obtained from one particular modem model, and there are several different ways you can place those modem ID strings in your INF file. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab First, you need to determine the modem ID string values you can use in your INF file by experimenting with your modem. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Second, you need to decide which of those modem ID string values to use in your INF file and where to place them in the INF (this issue is covered in "Step 2 -- Creating the Modem INF File"). \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Before you start, identify the kind of modem you are working with. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282471}{\*\bkmkstart _Toc342282568}Determining the Type of Modem You Are Installing{\*\bkmkend _Toc342282471}{\*\bkmkend _Toc342282568} \par \pard\plain \widctlpar \f4\fs20 The types of modems and the types of modem ID strings you can expect to obtain from each are listed in the table below. Once you have determined the type of modem you are installing, you know which types of modem ID strings you can obtain from the modem and use in your INF file. \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Modem Type \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Types of ID Strings That Can Typically Be Obtained \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Non-Plug and Play \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 Unimodem ID strings only. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Plug and Play Serenum modems (modems that come in both external and internal ISA forms) \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Serenum PNP HardwareID string and Unimodem ID string. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Plug and Play ISA modems \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ISAPNP HardwareID string, ISAPNP CompatibleID string, and Unimodem ID string. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Plug and Play PCMCIA modems \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 PCMCIA PNP HardwareID string and Unimodem ID string. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282472}{\*\bkmkstart _Toc342282569}Recognizing the Different Types of Modem ID Strings{\*\bkmkend _Toc342282472}{\*\bkmkend _Toc342282569} \par \pard\plain \widctlpar \f4\fs20 There are three types of modem ID strings: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab PNP HardwareID strings. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab PNP CompatibleID strings. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab UnimodemID strings. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 You may choose to include only one type in your modem INF file, two of the types, or all three of the types. See the topic "Strategies for Using Modem ID Strings in Your INF File" for more information. \par A PNP HardwareID string uniquely identifies a particular manufacturer's modem model and is written into the registry by the Windows 95 Plug and Play system during hardware enumeration. \par A PNP CompatibleID string is also written into the registry by the Windows 95 Plug and Play system during hardware enumerat ion if the modem is a PNP Serenum or ISA PNP type. This type of modem ID string identifies a modem model whose ID is shared by other models or OEMs. \par A Unimodem ID string is obtained by interrogating a modem with AT commands and can be obtained from both Plug and Play modems and non-Plug and Play modems. This occurs during autodetection (or detection) of the modem, which happens at a different time tha n enumeration. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282473}{\*\bkmkstart _Toc342282570}Using Tools to Obtain Modem ID Strings from Modems{\*\bkmkend _Toc342282473}{\*\bkmkend _Toc342282570} \par \pard\plain \widctlpar \f4\fs20 Tools and procedures for obtaining all the different types and forms of modem ID strings are given in this section. Using these tools and procedures get you the modem ID string values you can put in your INF file. Which of the values you actually put into your INF file depends on the strategy you adopt for using modem ID strings in your modem INF file (see the topic "Different Strategies for Using Modem ID Strings in INF Files" for more information). \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282474}{\*\bkmkstart _Toc342282571}Obtaining and Using Unimodem ID Strings{\*\bkmkend _Toc342282474}{\*\bkmkend _Toc342282571} \par \pard\plain \widctlpar \f4\fs20 A Unimodem ID, also known as a legacy ID, is generated by interrogating the modem with standard modem ATI commands and is commonly found in all modem types. You want to obtain the unimodem ID from your modem and put it into your INF file to insure that any real-mode drivers your modem requires are installed. \par Unimodem ID strings can be obtained in either of two ways: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Attempt to autodetect the modem. A file named MODEMDET.TXT will be generated in the Windows subdirectory. The Unimodem ID is found near the end of that file. When you decide where you want to place the Unimodem ID string in your INF file, then you can copy the string from MODEMDET.TXT and paste it into your INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The MODEMID.EXE tool, which is included in the MDK, can also be used to generate the same information. MODEMID.EXE has the advantage that it will operate in non-Windows 95 environments such as Windows NT and Windows 3.1. MODEMID.EXE can also be used to o btain Unimodem ID strings from all types of modems, including PCMCIA modems. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 An example Unimodem ID string is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 UNIMODEM8CF33BE4 \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282475}{\*\bkmkstart _Toc342282572}Obtaining and Using Serenum PNP Hardware IDs{\*\bkmkend _Toc342282475}{\*\bkmkend _Toc342282572} \par \pard\plain \widctlpar \f4\fs20 A Serenum PNP ID can be obtained from a Plug and Play modem which comes in either of two forms: an external modem that plugs into a serial port or an internal modem on an ISA bus card. Note that if a modem comes only on an ISA card, you will obtain an ISA PNP ID from it, and not a Serenum PNP (see the topic "Obtaining and Using ISAPNP IDs" below). \par To determine the ID string to use in an INF file for this type of modem device: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install the modem and then start (or restart) the machine. \par \tab 2\tab Typically a dialogue will appear noting that an unknown PNP device has been installed. Attempt to install a Windows default modem device. This will cause the ID string to be put into the registry. \par \tab 3\tab Use the Registry Editor (Regedit) to locate the PNP ID. When you decide where you want to place the Unimodem ID string in your INF file, then you can copy the string from the Regedit display and paste it into your INF file. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 To locate the ID once enumeration has run, use RegEdit to open the path HKEY_LOCAL_MACHINE\\Enum\\Serenum. Immediately below that point is the device ID. An example Serenum PNP Hardware ID is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 SERENUM\\PPI1907 \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282476}{\*\bkmkstart _Toc342282573}Obtaining ISAPNP Hardware and Compatible IDs{\*\bkmkend _Toc342282476}{\*\bkmkend _Toc342282573} \par \pard\plain \widctlpar \f4\fs20 An ISAPNP ID is generated by an ISA PNP modem. ISA PNP modems are found exclusively on adapters that plug into the ISA bus, and are never found as RS232 external devices. \par To determine the ID string to use in an INF file for an ISA PNP modem: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install the modem and then start (or restart) the machine. \par \tab 2\tab Typically a dialogue will appear noting that an unknown PNP device has been installed. Attempt to install a Windows default modem device. This will cause the ID string to be put into the registry. \par \tab 3\tab Use the Registry Editor (Regedit) to locate the PNP ID. When you decide where you want to place the Unimodem ID string in your INF file, then you can copy the string from the Regedit display and paste it into your INF file. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 \page To locate the ID once enumeration has run, use RegEdit to open the path HKEY_LOCAL_MACHINE\\Enum\\ ISAPNP. After you open the ISAPNP key, you will see a key with an ISAPNP-like name (the key is named SSC0001_DEV0002 in the Regedit screen display below). \par \pard\plain \s84\li-1800\sb80\sa240\widctlpar\tx0\tx280\tx560 \f4\fs28 {\field{\*\fldinst IMPORT \\\\nashddk\\\\MODEM\\\\mdk01.bmp \\* mergeformat}{\fldrslt {\fs20 {\pict\wmetafile8\picw16884\pich12630\picwgoal9573\pichgoal7161 \picscalex90\picscaley90\picbmp\picbpp8 010009000003465a02000000225a02000000050000000b0200000000050000000c02e001800205000000090200000000050000000102ffffff000400000007010300225a0200430f2000cc000000e001800200000000e0018002000000002800000080020000e0010000010008000000000000b00400ce0e0000d80e000000 0000000000000000000000808080000000800000808000008000008080000080000000800080004080800040400000ff80000080400000ff00400000408000ffffff00c0c0c0000000ff0000ffff0000ff0000ffff0000ff000000ff00ff0080ffff0080ff0000ffff8000ff8080008000ff004080ff00c0dcc000f0caa600 3f3f5f003f3f7f003f3f9f003f3fbf003f3fdf003f3fff003f5f3f003f5f5f003f5f7f003f5f9f003f5fbf003f5fdf003f5fff003f7f3f003f7f5f003f7f7f003f7f9f003f7fbf003f7fdf003f7fff003f9f3f003f9f5f003f9f7f003f9f9f003f9fbf003f9fdf003f9fff003fbf3f003fbf5f003fbf7f003fbf9f003fbfbf 003fbfdf003fbfff003fdf3f003fdf5f003fdf7f003fdf9f003fdfbf003fdfdf003fdfff003fff3f003fff5f003fff7f003fff9f003fffbf003fffdf003fffff005f3f3f005f3f5f005f3f7f005f3f9f005f3fbf005f3fdf005f3fff005f5f3f005f5f5f005f5f7f005f5f9f005f5fbf005f5fdf005f5fff005f7f3f005f7f 5f005f7f7f005f7f9f005f7fbf005f7fdf005f7fff005f9f3f005f9f5f005f9f7f005f9f9f005f9fbf005f9fdf005f9fff005fbf3f005fbf5f005fbf7f005fbf9f005fbfbf005fbfdf005fbfff005fdf3f005fdf5f005fdf7f005fdf9f005fdfbf005fdfdf005fdfff005fff3f005fff5f005fff7f005fff9f005fffbf005f ffdf005fffff007f3f3f007f3f5f007f3f7f007f3f9f007f3fbf007f3fdf007f3fff007f5f3f007f5f5f007f5f7f007f5f9f007f5fbf007f5fdf007f5fff007f7f3f007f7f5f007f7f7f007f7f9f007f7fbf007f7fdf007f7fff007f9f3f007f9f5f007f9f7f007f9f9f007f9fbf007f9fdf007f9fff007fbf3f007fbf5f00 7fbf7f007fbf9f007fbfbf007fbfdf007fbfff007fdf3f007fdf5f007fdf7f007fdf9f007fdfbf007fdfdf007fdfff007fff3f007fff5f007fff7f007fff9f007fffbf007fffdf007fffff009f3f3f009f3f5f009f3f7f009f3f9f009f3fbf009f3fdf009f3fff009f5f3f009f5f5f009f5f7f009f5f9f009f5fbf009f5fdf 009f5fff009f7f3f009f7f5f009f7f7f009f7f9f009f7fbf009f7fdf009f7fff009f9f3f009f9f5f009f9f7f009f9f9f009f9fbf009f9fdf009f9fff009fbf3f009fbf5f009fbf7f009fbf9f009fbfbf009fbfdf009fbfff009fdf3f009fdf5f009fdf7f009fdf9f009fdfbf009fdfdf009fdfff009fff3f009fff5f009fff 7f009fff9f009fffbf009fffdf009fffff00bf3f3f00bf3f5f00bf3f7f00bf3f9f00bf3fbf00bf3fdf00bf3fff00bf5f3f00bf5f5f00bf5f7f00bf5f9f00bf5fbf00bf5fdf00bf5fff00bf7f3f00bf7f5f00bf7f7f00bf7f9f00bf7fbf00bf7fdf00bf7fff00bf9f3f00bf9f5f00bf9f7f00bf9f9f00bf9fbf00bf9fdf00bf 9fff00bfbf3f00bfbf5f00bfbf7f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0e01010f0f0f0f010f0f0f0f0f00000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0000000000 000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0000000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0000000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0e01010f0f0f010f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0e010f0f0f010f0f0f000f0f0f000f0f0f0f0f0f0f000000000f0f0f0000000f0f000f0f000f0f000f000000000f0f0f00000f000f0f000f0f0000000f0f000f0f0f0f0f000f000f0f0f0f000f0f000f0f0f0f000f00000000000f0f0f 0f000f0f0f0f0f0f0f0f0f0f00000000000f0f000000000f0f0f0f000000000f000f0f0f0f0f000f00000000000f0f0f0f0f0f0f000f0f0f0f0f000f000f0f0f0f0f000f0f000000000f0f000f0f0f0f000f0f000f0f000f0f0f0f000f0f00000000000f0f0f0f0f000f00000000000f0f000f0f0f000f0f00000f000f000f 0f000f0f000f0f0f0f000f000f0f0f0000000f0f000f0f0f0f0f000f000f0f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f0f0f0f000f0f0000000f0f0f0f0000000f0f0f0f000000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0f000f0f0f0f0f0f0f0f0f000000000f0f0f0f00000000000f0f0f0f000f0f0f 0f0f0000000f0f0f0000000f0f0f0000000f0f00000000000f0f0f0f000f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0f0f000f0f0f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0e0f0f0f01000f0f000f0f0f00000f0f0f0f0f000f0f0f0f000f000f0f0f000f000f0f000f0f000f000f0f0f000f000f0f00000f000f0f000f0f0f000f000f0f0f0f0f000f000f0f0f0f000f0f000f0f0f000f0f000f0f 0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f00000f0f0f0f0f000f000f0f0f0f0f0f0f0f0f0f0f000f0f000f0f000f000f0f0f0f0f000f000f0f0f0f000f000f0f0f0f000f0f000f0f000f0f0f00000f0f000f0f0f0f0f0f0f0f0f000f000f0f0f0f0f0f000f0f0f000f000f0f 00000f000f0f000f0f000f0f0f0f000f000f0f000f0f0f000f000f0f0f0f0f000f000f0f0f0f0f0f000f0f0f00000f0f000f0f0f0f0f0f0f0f0f000f000f0f0f000f0f000f0f0f000f0f000f0f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f0f0f0f0f000f0f0f000f0f0f000f0f0f0f0f0f0f 0f000f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f0f0f0f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f0f0f000f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0f0f0f01000f0f000f0f000f0f000f0f0f0f000f0f0f0f0f0f000f0f0f000f000f0f000f0f000f000f0f0f000f000f0f0f000f000f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f000f0f000f0f000f 0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f00000000000f0f000f0f0f0f0f0f0f0f0f0f0f000f0f000f0f000f0f00000000000f0f000f0f0f0f0f0f000f0f0f0f000f0f000f0f000f0f0f00000f0f000f0f0f0f0f0f0f0f000f0f000f0f0f0f0f0f000f0f0f 000f000f0f0f000f000f0f000f0f000f0f0f000f0f000f0f0f0f0f0f000f0f00000000000f0f000f0f0f0f0f0f000f0f0f00000f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f 0f0f0f0f0f000f000f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f000f0f0f0f0f0f000f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f00000000000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e01010f0f0f010f000f000f0f000f0f000f0f0f0f000f0f0f0f0f0f000f0f0f000f000f0f000f0f000f000f0f0f000f000f0f0f000f000f0f00000000000f000f0f0f0f000f0f000f0f0f0f000f0f 000f000f0f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f0f000f0f0f0f0f0f0f0f0f0f0f000f000f000f000f0f000f0f0f000f0f000f0f0f0f0f0f000f0f0f0f000f0f000f0f000f0f000f000f0f000f0f0f0f0f0f0f0f000f0f000f0f0f0f0f 0f000f0f0f000f000f0f0f000f000f0f000f0f000f0f0f000f0f000f0f0f0f0f0f000f0f000f0f0f000f0f000f0f0f0f0f0f000f0f000f000f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f0f0f0f0f000f0f0f0f00 0f0f000f0f0f0f0f0f0f000f000f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f000f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e010f0f0f010f000f000f0f000f0f000f0f0f0f000f0f0f0f0f0f000f0f0f000f000f0f000f0f000f000f0f0f000f000f0f0f000f000f0f000f0f0f000f000f0f0f000f0f0f000000 0000000f0f00000f0f0f0f0f000000000f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f0f000f0f0f0f0f0f0f0f0f0f0f000f000f000f000f0f000f0f0f000f0f000f0f0f0f0f0f0000000000000f0f000f0f000f000f0f000f0f000000000f0f0f0f000f0f0f00 0000000f0f0f00000f0f000f000f0f0f000f000f0f000f0f000f0f000f0f0f000f0f0f0000000f0f0f000f0f0f000f0f00000000000f0f000f000f0f000f0f00000000000f0f0f000f0f0f0f0000000f0f0f0f0000000f0f0f000f0f0f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f0f0f0f0f00 0f0f0f0f000f0f000000000f0f0f000f0f0f000f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f0f000f0f0f000f0f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f000f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0e0f0f0f010f0f00000f0f000f0f000f0f0f0f000f0f0f0f0f0f0f0000000f0f0000000f00000f0f000000000f0f000f0f0f000f00000f0f0000000f0f00000f0f000f 0f0f000f0f0f0f000f0f00000f0f0f0f0f000f0f0f0f0f0f0f000f000f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f00000f0f0f00000f0f0f000f000f0f0f000f0f0f0f0f0f000f0f0f0f000f0f000f0f000f000f0f000f0f000f0f0f0f0f0f0f 000f0f0f000f0f0f0f0f0f000f00000f0f000f0f0f000f0000000f00000f0f0f000f0f0f000f0f000f0f0f0f0f0f0f000f000f0f0f000f0f0f0f000f000f000f0f000f0f000f0f0f0f000f0f000f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f000f0f0f0f0f 0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f0f0f000f0f000f0f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f000f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0f0f0f010f0f00000f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f 0f0f000f0f0f0f000f0f0f0f000f0f000f000f0f0f0f000f0f0f0f0f0f000f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f00000f0f0f00000f0f0f000f000f0f0f000f0f0f0f0f0f000f0f0f0f000f0f000f0f00000f0f0f000f0f000f0f 0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f0f000f000f0f0f000f0f0f0f000f00000f0f0f000f0f000f0f0f0f000f000f0f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f0f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f00 0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f0f0f0f0f000f0f0f000f0f000f0f0f000f000f0f0f000f000f0f0f000f0f0f0f0f000f000f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f0f00000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e01010f0f0f010f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f 0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f000f0f000f0f000f0f0f000f0f0f0f0f000f0f0f0f0f000f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f000f0f0f0f000f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f0f0f000f0f0f0f000f000f0f0f0f000f0f000f0f00000f0f0f00 0f0f000f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f0f000f0f0f0f000f0f0f0f000f0f0f0f000f00000f0f0f000f0f000f0f0f0f000f000f0f0f0f000f0f0f000f0f000f0f0f000f0f000f0f0f0f000f000f0f0f000f000f0f0f000f000f0f0f 000f0000000f0f0f0f0f0f0f0f0f000f0f0f000f0f0f000f0f0f0f0f000f0f0f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f0f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f000f0f0f000f0f0f00000f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e010f0f0f010f0f0f000f0f0f0f0f0f0f0f0f0f0f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f000f0f000f0f0f000f0f00000000000f000f0f0f0f0f000f0f0f0f0f0f0f000f0f0f0f0f0f000000000f0f0f0f000000000f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f000f0f0f0f0f000000000f0f000f0f0f0f000f0f000f0f00 0f0f0f0f000f0f00000000000f0f000f0f0f0f00000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0000000f0f0f0f0f000f0f0f0f00000000000f0f000f0f0f0f000f0f00000000000f0f000f0f0f0f0f0000000f0f0f0f0000000f0f0f0f000000000f0f0f0000000f0f0f0000000f 0f0f0000000f0f0f0f000f0f0f0f0f0f0f0f0f000000000f0f0f0f00000000000f000f0f0f0f0f000f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f000f0f0f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0000000f0f0f0f0f000f0f0f000000000f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f01010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010e0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0f0f0f0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0f010f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e00000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00 0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e000e0e000e0e000e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000000000000000000000000000f0e0f0f0f0f0100000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e000000000000000000000000000000000f0e 0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e 0e0e0e0e00000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e00000e0e0e000e0e000e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0101010101010101010101010101000f0e0f0f0f0f01000f010101 0101010101010101010101000f010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f010101010101010101010101 0101000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e00 0e0e000e0e0e0e0e0e00000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e000e0e00000e0e0e000e0e000e0e0e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01 000f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f0f0f 0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e0e0e0e0e0e000000000e0e000e0e0e0e000e0e00000000000e0e0e00 000000000e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e0e000000000e0e0e000000000e0e0e000e0e0e0e000e0e00000000000e000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e 0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f 0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f 0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e 0f0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f 0f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f0f000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0e0f0e0f0e0f0e 0f0e0f0e0f0e0f0f0e0f0f0f0f000f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f0f0f0f000f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f00000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0e0f0e 0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f00000f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0100 0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f0f00000000000f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f000000000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f000000000f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00 00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f000000000000000f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f01000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f00000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f00000f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e00000000 000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0000000e0e0e00000000000e0e000e0e0e0e000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f0f000f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f000f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e 0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e00 0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e 0e000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0e0e0e0e0e0e0e0e0e0e0e0e01000f0e0f0f0f0f01000f0e0e0e0e0e0e0e0e0e0e0e0e0e01000f0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01000e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0e0e0e0e0e0e0e0e0e0e0e0e01000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e 0e0000000000000e0e00000e0e0e0e0e000000000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e000000000e0e0e00000000000e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0e0f0f0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e 0e0e0e0e0e0e000e0e0e0e000e0e00000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f11 0f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e 0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 0f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e00000000000e0e00000000000e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e 0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e0e000e0e0e0e00000e0e0e000e0e0000000e0e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e0e00000e0e000e0e000e000e0e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f 0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e0e000e0e000e0e000e0e0e0e0e000e0e000e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e 0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e000e0e00000000000e000e0e000e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e 0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e000e0e000e000e0e000e000e0e000e0e0e000e00 0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e 0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e00000e0e00000e0e00 00000e0e0000000e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e 0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e0000000e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010101010101010101 0e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e 0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e0e000000000e0e0e000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0e0f0e0f0e0f0e0f0e0f0e0f0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e 0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000000000000000000000000000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e0e000e000e000e000e0e0e00000000000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0101010101010101010101010101000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e 0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e0e000e000e000e000e0e0e000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e000e0e0e0e000e0e000000000e0e0e0e000e0e0e0e000e0e0e000e0e0e000e0e000e0e0e000e0e00000000000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e0000000e0e0e0e000000000e0e0e00000000000e00000000000e000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e00000000000e0e0e 00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f 01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f 0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f 0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f 0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e 0000000e0e0e00000e000e000e0e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000e 0e0e000e000e0e0e000e000e0e00000e000e0e000e000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e0e0e 000e0e000e0e0e0e0e000e0e0e0e0e000e0e0e000e000e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e 0e0e0e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e000e000e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e 0e0e0e0e0e0e0e0000000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f 110f01000e0e0e0e0e0e0e000e0e0e0e0e0e0e0000000e0e0e0000000e0e000e0e0e000e00000e000e00000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f 110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e000e0e000e0e0e000e0e0e0000000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e00000e0e000e0e0e000e000e0e0e000e0e0e000e0e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e000e0e000e000e000e000e000e0e0e000e000e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e000e0e00000000000e000e0e000e000e000e000e000e0e0e000e000e0e00000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e000e0e000e0e000e0e0e000e000e0e000e0e000e0e000e000e0e0e000e000e0e000e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f 0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e000e0e000e0e0e0000000e0e00000e000e0e000e0e000e0e0000000e0e00000e000e 0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f 01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f 0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e00000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000000000000000000 00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101 010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e11 0f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e000e0e000000000e000e0e0e000000000e0e000e0e0e000e0e0e000000000e000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e 0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e0e000e0e000e0e0e000e0e000e0e0e000e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e 010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e0e000e000e000e000e000e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00 000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000000000e000e0e000e0e0e000e000e000e000e000e0e000000000e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000e0e000e0e0e0e0e000e000e0e000e0e0e000e000e0e000e0e000e0e0e0e0e000e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e00000e0e0e0000000e0e00000e0e000000000e000e0e000e0e000e0e0000000e0e00000e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f 0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f0100 0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f 0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e000e0e0e0e000e 0e000e0e0e0e000e0e0e0e000e0e0e0e0e000000000e0e000e0e0e0e0e000e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f 0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e0e0e000e 0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e000e0e0e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e 0e0e000e000e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e00000000000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e 0e0e0e0e0e0e0e000e000e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f11 0f1101000e0e0e0e0e0e0e000e0e0e000e0e000e0e00000000000e0e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f11 0f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e01 0e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e000e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e 0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e000e0e0e0e0e000e000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e000e0e0e0e0e000e000e0e00000000000e0e0e00000000000e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e000e0e0e0e000e0e0e000000000e0e0e000e0e0e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e000e0e000e0e000e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e000e0e00 0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e 0e000e0e000e000e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e000000000e0e0e00000000000e0e0e000000000e0e0e000e000e0e000e 0e000e0e0e0e000e0e000e000e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e 000e0e000e0e000e0e0e0e000e0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e 0e0e0e00000e0e0e000e0e000e0e0e0e000e0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e 0e000e0e0e0e0e0e00000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e 0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e0000000e0e0e00000000000e0e0000 0000000e0e0e00000000000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f 0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f 0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000 000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010101 0101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e 0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e0000000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e 010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e 0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000000000e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e0000000e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e000e0e000e0e0e00 0e0e0e0000000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f 0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e00000e0e000e0e0e000e000e0e0e 000e0e0e000e0e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01 000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e 0e000e0e000e000e000e000e000e0e0e000e000e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f 0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e000e0e 00000000000e000e0e000e000e000e000e000e0e0e000e000e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f 0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e00 0e0e000e0e000e0e0e000e000e0e000e0e000e0e000e000e0e0e000e000e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e 0e0e000e000e0e000e0e0e0000000e0e00000e000e0e000e0e000e0e0000000e0e00000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f110100 0e0e0e0e0e0e0e00000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e 0e0e0e01000e0e0e0e0e0e0e00000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f11 0f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e 0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0000000e0e000e0e0e000e000e0e000e0e0000000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e000e000e0e0e000e000e000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e000e000e0e0e000e000e000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e000e000e000e0e000e0e0e000e000e0e0e000e000e000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e000e000e000e0e000e0e0e000e00000e0e000e000e000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e00000e0e0e00000e0e0e0000000e0e000e00000e0e000e00000e0e0000000e0e00000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f 01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f 0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f 0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f 0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f 1101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000000000e0e0e000000000e0e0e0e00000000000e0e000e0e0e0e0e000e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e0e0e000e0e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f 110f110f110f01000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e000e0e000e0e0e000e0e0e000e0e0e0e0e0e000e0e000e0e000e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e 110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e000e0e000e0e0e000e000e000e000e0e0e00000000000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e 010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e000e000e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e000e000e000e000e0e0e000e000e000e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e 0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e000e000e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000000000e0e0e000e000e000e000e0e000e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e00000e0e0e00000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00000e0e0e00000e0e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000e0e0e00000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00000e0e0e00000e0e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e000e0e000e0e0e0e000e0e000e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000000000e0e0e000000000e0e0e0e00000000000e0e000e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e00000000000e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0e0e01010101010101010101010100000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e010e110f110f110f110f110100000e0e0e0e0e 0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e0e010e110f110f110f110f110f000100 0e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e0e010e0f110f110f110f11 0f010001000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e00000000000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f11 0f110f110f11000101000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f 0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e01000f01000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f 01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e 0e0e0e0e010101010101010101010101011101000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f 0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e 0e0e010e0e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 01010101010101010e0e0e0e0e0e0e010e110f110f110f0e0e0e0e0e01000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e00000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0f110f110f0e0101010101010e0e0e0e0e0e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0e0e0e0e0e000000000e0e0e0e00000000000e 0e0e0e000e0e0e0e0e0000000e0e0e0000000e0e0e0000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e00 0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e 0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e 0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e 0e0e0e0e0e0e000e0e0e0e000e0e000000000e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e 0e000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e 0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e000e0e0e000e000e0e 0e000e000e0e0e000e0000000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e000000 0e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0e0e0e0e0e000000000e0e0e0e00000000000e000e0e0e0e0e000e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f 0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f0100 0f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f 0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010101010101010101010101 0101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f 0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f11 0f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e00000000000e000e0e0e0e0e000e000000000e0e0e0e000000000e0e0e000e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e000e0e0e0e0e0e0e000000000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e 0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e000e0e0e0e0e000e000e0e0e000e0e0e000e0e0e000e0e000e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e 0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e00000000000e0e000e0e0e0e000e0e000e0e0e0e000e0e00000000000e0e0e0e000e0e0e0e00000000000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0000000000 0e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000000000e0e0e000000000e0e0e000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e000e0e00000000000e0e000e0e0e0e000e0e00000000000e0e0e0e0e000e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e000e000e0e0e0e0e000e0e0e0e0e000e000e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000e0e0e0e0e000e0e000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e000e0e0e0000000e0e0e000000000e0e000e000e0e0e000e0e0e0e0000000e0e0e0e0e00000000000e0e000000000e000000000e0e0e00000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e000e000e0e0e0e0e000e0e0e0e0e000e000e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e0e0e000e0e 0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e000e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e000e0e000e0e0e000e000e0e0e000e000e0e000e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e0e000e0e0e000e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e 0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e000e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e000e0e0e000e000e0e000e0e000e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e0e0e000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e00000000000e0e0e00000000000e0e0e0e000e0e0e0e000000000e0e0e0e000000000e0e0e0e0e0e000e0e0e0e00000000000e0e0e0e000e0e0e0e00000000000e0e0e000000000e 0e0e00000000000e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e000e000e000e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e00000000000e0e000000000e000e0e000e0e000e000e0e00000000000e0e0e0e000e0e0e0e0e0e000000000e000e0e0e00 0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f000e0e0e000e000e000e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e000e0e0e0e0e000e000e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e000e 000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02020e02020e0f000e0e0e00000e0e0e00000e0e00000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e00000e0e0000000e0e0e0000000e0e00000e000e000e0e0e000e0e0000000e0e0e0e0e000e0e0e0e0e0e 0000000e0e000000000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e02020e02020e02020e0f000e0e0e00000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e 0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e000e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000000000e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e 000e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e00 0e0e0e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e000e0e0e0e000e0e 0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e000e000e000e0e000e0e0e0e000e0e 0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e 0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e000e000e000e0e000e0e 0e0e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000000000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01 000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e00000e0e0e0000 0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01 000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0000 0e0e0e00000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e 0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000e0e0e0e000e0e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0000000e0e0e0e000e0e0e000e0e00000e0e000e0e0000000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0000000e0e000e0e0e0e000e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e 0e0e0e000e0e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0000000e0e0e0000000e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f 0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e000e0e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e000e0e0e000e0e0e000e000e0e000e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f010101010101 0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000000000e0e0e00000000000e0e0e0e000e0e0e0e0e000e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f 0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e000e0e0e000e000e000e000e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e000e0e000e0e0e000e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e000e0e0e0e000e0e0e000e000e000e000e0e0e000e0e0e0e000e0e00000000000e0e000e000e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101 0101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f000e0e0e0000000000000e0e000e0e0e000e0e0e000e0e00000000000e0e0e000e0e0e000e000e0e0e000e000e000e0e000e000e000e0e0e000e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02020e02020e0f000e0e0e000e0e0e0e000e0e000e0e0e000e0e0e000e0e000e0e0e0e000e0e0e0000000e0e000e0e0e000e000e0e00000e0e000e0e0000000e0e000e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e02020e02020e02020e0f000e0e0e000e0e0e0e000e0e000e0e0e000e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e0e000e000e0e0e0e0e0e0e0e0e000e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0000000e0e0e0e0e0e000e0e0e000e0e0e0e0000000e0e0e000e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000 0000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e000e0e0e0e000e000e0e0e0e0e0e0e0e0e000e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e0e0e0e0e0e0e0000000e0e0e0e0e0e0e000e0e0e00000000000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e 0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e 010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0000000e0e000e0e0e0e0e000e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e 0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e0e0e000e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e00000000000e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0000000e0e0e000e0e0e000e0e00000000000e0e000e000e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0600060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01060006000e0e0e0e06010600060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010600060f060f060006000601060f0606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060f060e060e060e060f060f060e06000606060e060606060e0606060e0e0e0e060e0606 060e0e0e0e06060e0606060e0606060e0e0e0e060e0606060e0e0e06060e06060e0e0e0e0606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e0000000e0e 0e0000000e0e0e0000000e0e00000000000e0e000e000e0e0e0000000e0e000e0e0e0e0e000e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e000e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0e0e0e0e0e000000000e0e0e0e000000 00000e0e0e0e000e0e0e0e0e0000000e0e0e0000000e0e0e0000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0000000e0e0e0e0e000e0e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060e060e060e060e060e060f060606060e060606060e06060e060606 0e060e06060e0606060e06060e0606060e06060e0606060e060e06060e0606060e060e06060e0606060e06060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e00 0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e0e0e000e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e000e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e000e 0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e060e060e060e060e060e06000606060e060606060e06 060e0606060e060e06060e0606060e060e060e060e060e060e0606060e060e06060e06060606060e06060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e 0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e00000000000e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e00 0e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e0602060206020602060e060f060606060e06 0606060e0606060e0e0e0e060e06060e0606060e060e060e060e060e06060e0e0e0e060e06060e0e0e0e0e060e06060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e00 0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e 0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e06020602060e06020602060e0600 0606060e0e0e0e0e0e0606060606060e060e06060e0606060e060e06060e06060e06060606060e060e06060e0606060e060e06060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e 0e0000000e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e0e0e000e0e0e0000000e0e0e000e0e0e000e0e00000000000e0e000e000e0e000e0e00000000000e0e0e000e0e0e0e0000000e0e0e0e0000000e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e00 0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000000000e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060206020602060e 0602060f060606060e060606060e0606060e0e0e06060e0e06060e0e0e0e060e06060e06060e06060e0e0e06060e0e06060e0e0e06060e06060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e 0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e 000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e0602 060e06020602060e06000606060e060606060e0606060606060606060606060606060e0606060606060606060606060606060606060606060606060e06060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e 000e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e00 0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001 060e0602060f06020602060e060f060606060e060606060e0606060606060606060606060606060e0606060606060606060606060606060606060606060606060e06060e0606060e06060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00 0e0e000e000e000e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e0e000e000e0e0e000e 000e0e0e000e000e0e0e000e0000000e0e0e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f 0f0f0100060e060e060e060e0602060e060e06000606060e060606060e0606060606060606060606060606060e0606060606060606060606060606060606060606060606060e06060e0e0e0e0606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e000e0e000e0e0e0e0e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e000e0e0e0000000e0e0e0e0e000e0e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e000e0e0e0e0e0000000e0e0e0e0000000e0e0e0e000000000e0e0e 0000000e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0e0e0e0e0e000000000e0e0e0e00000000000e000e0e0e0e0e000e0e0000000e0e0e0000000e0e0e0000000e0e0e0000000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e 0e0e000e0e00000000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01 000f0e0f0f0f0f010001060e060e060e0602060e060106000606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000e0e 0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f 0f0f0f0f01000f0e0f0f0f0f0100060e060e060e060e060e060e060e060e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e 0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f 0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060e060e060e060e0601060e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e 0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060106010601060106010601060e0e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e 0e0e0000000000000e0e0e0e000e0e0e0e00000000000e0e0e000000000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f0100 0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f 110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e 0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e00000000000e0e00000000000e0e0e00000000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000e0e0e0e0e0e00000e000e000e0e0e000e0e0000000e0e0e000e000e0e0000000e0e000e0e0e000e000000000e0e0e0e0e0000000e0e0e00000e 0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0000000e0e0e00000e000e000e0e0e000e0e000000000e0e0e0e000000000e0e0e000e0e000000000e0e00000e0e0e000e0e0000000e0e000e0e0e0e0e0e0e000e 0e0e0e0000000e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e 0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e0e000e0e00000e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e00 0e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e00000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e000e0e0e000e000e0e000e000e0e000e0e0e000e000e0e0e0e 0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e000e0e000e000e0e0e000e000e0e0e000e000e0e0e0e000e0e 000e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e000e0e0e000e0e0e000e0e000e0e000e0e0e0e0e 000e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e000e0e000e000e0e0e000e000e0e0e000e000e0e 0e0e000e0e00000000000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e0e000000000e0e000e0e0e000e0e00 000000000e000e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e000e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f000e0e0e000000000e0e000e0e0e000e00000e0e000e000e0e0e000e000e0e000e000e0e0e000e00000e0e 000e000e0e0e0e000e0e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e000e0e0e000e000e0e0e000e00000e0e000e000e0e0e000e0e0e0e000000000e0e0e000e0e0e0e0e000e000e0e00 0e000e0e000e0e0e000e000e0e0e0e0e0e0e000e0e0e000000000e0e0e0e0e000e0e0e0e000e0e0e0e000e000e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02020e02020e0f000e0e0e000e0e0e0e0e000e0e0e000e000e00000e0e0e0000000e0e00000e000e0e0000000e 0e000e00000e0e000e0e0e0e000e0e0e0000000e0e0e00000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0000000e0e000e0e0e000e000e00000e0e0e000000000e0e0e0e000e0e0e000e0e000e0e0000000e 0e0e00000e0e00000e0e0000000e0e00000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e00000e0e0e00000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e02020e02020e02020e0f000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e000e 0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e00000e0e0e00000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e 000e0e000e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e00000000000e0e000000000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e 0e000000000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0000000e0e0e0e0e0e000e00000000000e0e000e0e0e0e0e000e0e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000000000e0e000e0e0e0e0e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e 0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e 01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e00000000000e000e0e0e0e0e0e000000000e0e0e0000000000 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f 01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f 0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000000000e0e0e0e000e0e000e0e0e000e0e0e0e0000000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e00000000000e0e000000000e0e0e0e000e000e0e0e0e0e000e0e0e0e000e0e0000000e0e0e0000000e0e0e0e000e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f 0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e000e0e0e000e0e000e0e0e000e0e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e000e000e0e0e0e0e000e0e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f 0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e000e0e000e0e000e0e000e000e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e00000000000e0e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e000e0e0e0e000e0e000e0e000e0e000e000e0e00000000000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f000e0e0e000e0e0e0e000e0e000e0e000e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e000000000e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02020e02020e0f000e0e0e000e0e0e0e000e0e00000e000e000e0e0e000e0e0000000e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000e0e0e00000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e0e000e0e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010101010101010101010101 0101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e02020e02020e02020e0f000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e00000e0e0e00000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f11 0f110f110f1101000e0e0e0e0e0e0e00000000000e0e0e0000000e0e0e000000000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0000000e0e0e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e 0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e000000000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e0e0e0e0e000e0e00000000000e0e000000000e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0000000e0e000e0e000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e 0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0000000000 0e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000000000e0e0e0e0000000e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e 0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e 0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e00000000000e0e0e0000000e0e0e000000000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000000000e0e0e0e0e0000000e0e0e0e 000e0e0e000e0e0000000e0e0e0000000e0e000000000e0e0e0e0e0000000e0e0e00000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e000e0e0e0000000e0e0e000000000e0e000e000e0e0e00 0e0e0e0e0000000e0e0e0e0e00000000000e0e000000000e000000000e0e0e00000e0e0e0e0e0e0000000e0e0e0e0000000e0e0e00000e000e000e0e0e000e0e000000000e0e0e0e000000000e0e0e000e0e000000000e0e00000e0e0e000e0e0000000e0e000e0e0e0e0e0e0e000e0e0e0e0000000e0e0e0e0e0e0000000e 0e000e0e0e0e000e0e0e0e0e000e0e0e000e0e0e000e0e0e0e00000000000e0e0e0e0e0e0000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e000e0e0e000e0e 0e000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e000e0e000e0e0e000e000e0e0e000e000e0e 000e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e0e0e000e0e0e000e0e000e0e0e000e000e0e00000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e000e0e0e000e000e0e000e000e0e000e0e0e000e000e0e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e 000e0e0e000e000e0e0e0e000e0e0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e00 0e0e000e0e0e0e0e0e000e000e0e000e000e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e000e0e0e 000e000e0e000e0e000e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e000e0e0e000e0e0e000e0e000e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e000e0e0e 000e0e0e0e000e0e0e000e000e0e0e0e0e00000000000e0e0e000e000e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e00 0e0e0e0e000e0e00000000000e0e000e000e0e000e000e0e0e0e0e00000000000e000e0e0e0e000e0e00000000000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0000000000 0e0e000000000e000e0e000e0e000e000e0e00000000000e0e0e0e000e0e0e0e0e0e000000000e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e0e000e0e000000000e0e000e0e0e000e0e00000000000e000e0e0e0e0e0e0e000e0e 0e000e0e0e000e0e0e0e000e0e0e000e000e0e0e0e0e000e0e0e000e0e0e000e000e000e000e0e0e000e0e0e0e0e0e00000e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f 000e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e000e000e0e0e000e000e0e0e000e000e0e0e0e000e0e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e 000e0e0e000e0e0e0e0e000e000e0e000e000e0e0e000e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e000e000e0e0e000e000e0e000e0e0e0e0e0000000e0e0e000e0e0e000e000e0e0e000e00000e0e000e000e0e0e000e0e0e0e000000000e0e0e000e0e0e0e0e000e000e0e000e000e0e000e0e0e000e000e0e0e0e0e 0e0e000e0e0e000000000e0e0e0e0e000e0e0e000e000e0e0e0e0e000e0e0e000e0e000e0e0e000e0e0e000e0e000000000e0e0e0e0e0e0e0e00000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e0202 0e02020e0f000e0e0e000e0e0e0e000e0e0e0000000e0e000e0e0e000e000e0e0000000e0e0e0000000e0e000e0e0e0e000e0e0e0000000e0e0e00000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e 0e0e00000e0e0000000e0e0e0000000e0e00000e000e000e0e0e000e0e0000000e0e0e0e0e000e0e0e0e0e0e0000000e0e000000000e0e0e00000e0e0e0e0e000e0e0e0e0e0e0e0000000e0e000e0e0e000e000e00000e0e0e000000000e0e0e0e000e0e0e000e0e000e0e0000000e0e0e00000e0e00000e0e0000000e0e00 000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0000000e0e00000e0e0e0e0e000e000e0e0e000e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e00000000000e0e000e0e0e000e0e00000e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e 02020e02020e02020e0f000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e0e0e000e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e00000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100 010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f 0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e000e0e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000000000e0e0e000e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e000e00000000000e0e0e0e0e0e0000000e0e0e0000000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f 01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000000000e0e0e00000e0e000e000e0e0e000e000e0e000e0e000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f 0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e00000e0e000e0e0e000e0000000e00000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e00000000000e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e0e000000000e0e0e0000000e0e000e0e0e000e000e0e000e0e000000000e000e0e0e0e0e000e0e000000000e0e000000000e0e00000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e0e1414140e0e0f000e0e0e000e0e0e0e000e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e000e0e0e0e0e000e000e0e0e000e000e0e0e000e000e0e 000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e14140e14140e0f000e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e000e0e0e0e0e000e000e0e0e000e000e0e0e 000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000 0000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e14140e14140e0f000e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e000e0e0e0e0e000e0e00000000 0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e 0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e0e1414140e0e0f000e0e0e000e0e0e0e0e0e000e0e0e000e00000e0e000e000e0e000e000e0e0e000e000000000e0e000e 0e0e0e0e000e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e 010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0e000000000e0e0e0000000e0e000e0e0e000e000e0e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e0e0e0e0000000e0e000e00000e0e00000e000e0e000000000e000e0e 0e0e0e000e0e0000000e0e0e000000000e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e00 0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e 0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e1414140e0e14140e14140e0f000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e 0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e 0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e14140e14140e0f000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e 0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e 0e0e0e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e 0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e14140e14140e14140e14140e0f000e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e000e000e0e0e0e0e0e0e00000000000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0000000e0e0e 0000000e0e0e0e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e000e00000e0e000e000e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e1414140e0e14140e14010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e0e0e0e0000000e0e000e00000e0e00000e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611061106110611060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f01 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e 0e0e0e0e0e0e060006060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e 0e01060006000e0e0e0e060106001106060606060606060606060606060606060606060606060e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f 0f0100010600060f060f060006000601060f060606060606060606060606060606060606060606060606060e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f0100 0f0e0f0f0f0f0100060f060e060e060e060f060f060e0600110606060e0e0e0e0606060e0e0e06060e06060e06060e060e0e0e0e0606060e0e0e0e06060e060e060e0e0e0e06060e06060e0e0e06060e06060e0e0e0e06060606060e0e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0000000e0e0e000e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000000000e0e0e0e0000000e0e0e0000000e0e00000000000e0e000e0e0e0e0e000e 0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e000e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f 0f0f0f01000f0e0f0f0f0f010001060e060e060e060e060e060e060f060606060e060606060e060e0606060e060e06060e06060e060e0606060e060e0606060e060e06060e060e0606060e060e060e0606060e060e06060e0606060e0606060e06060e0606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e0e0e 0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f 0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e060e060e060e060e060e06001106060e0606060606060e0606060e060e06060e06060e060e0606060e060e0606060e060e06060e060e0606060e060e060e06060606060e06060e060606060e060606060e060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e000e0e0e 0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e00000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f 0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e0602060206020602060e060f060606060e0606060606060e0606060e060e06060e06060e060e0606060e06060e0e0e0e060e06060e060e0606060e060e060e0e0e0e0e060e06060e060606060e0606060e06060606060606110e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e 0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e000e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e00000000000e0e0e0e000e0e0e0e0e0e0e0e0e0e0000 0000000e0e000000000e0e0e0e000000000e000e0e0e0e0e000e00000000000e0e0e0e0e0e0e000e0e0e0e0e000e000e0e0e0e0e000e0e000000000e0e000e0e0e0e000e0e000e0e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e06020602060e06020602060e06001106060e0606060606060e0606060e060e06060e06060e060e0606060e06060606060e060e06060e060e0606060e060e060e0606060e060e06060e060606060e06060e06060e0606060606060e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000e0e000e000e0e000e0e00000000000e0e000000000e0e0e000e0e0e000e000e0e0e000e0e0e00000e0e0e0e0e0e0e0e0e00000000000e0e000e000e0e000e0e00000000000e0e000000000e0e0e000e0e0e000e00 0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e00000000000e0e000e000e0e000e0e00000000000e0e000000000e0e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e00000000000e0e000e000e0e000e0e00000000000e0e000000000e0e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e 0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e00000e0e0e0e0e000e000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e000e0e0e0e0e000e000e0e0e0e000e000e0e0e0e000e0e000e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060206020602060e0602060f060606060e060606060606060e0e0e06060e0e0e060e0e06060e0e0e0e0606060e0e0e06060e0e060e060e0e0e0e06060e06060e0e0e06060e06060e060606060e0606060e0e060606060606110e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e000e000e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e000e0e0e000e0e000e 0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e000e000e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e000e000e000e0e0e0e000e000e000e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e000e0e 0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e00000000000e0e000e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e00000000000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e0602060e06020602060e06001106060e06060606060606060606060606060606060606060606060606060606060606060e060606060e06060606060e060606060606060e06060e060606060e060606060606060606 0606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e 000e0e000e0e0e000e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e0e0e000e0e0e0e0e0e0e000e0e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e 000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e 0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e0602060f06020602060e060f060606060e060606060e0606060606060606060606060606060606060606060606060606060e060606060e06060606060e060606060606060e06060e0606060e0606060606 06060606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e000e000e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e000e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e00 0e000e0e0e000e0e000e0e0e000e000e0e0e000e000e0e0e000e0e0e0e000e000e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e000e0000000e0e0e0e0e0e000e000e000e0e0e0e000e00000e0e0e000e0e000e0e0e0e000e000e0e0e000e0e000e0e0e000e000e0e0e00 0e000e0e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0000000000000e0e00000e0e0e0e0e0000 00000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e000e0e0e000e0e000e0e0e0e0e0e0000000000000e0e000e0e000e000e0e000e0e000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e060e060e0602060e060e0600110606060e0e0e0e060606060606060606060606060606060606060606060606060606060606060e060e06060606060e060606060606060e06060e0e0e0e06 060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e00000000000e0e000e0e0e0e000e0e00 000000000e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0000000e0e0e0e0e0e0e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e000000000e0e0e0e0000000e0e0e0000000e0e0e0e000e0e0e0e0e0e0e0e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e000000000e0e0e0e0000000e0e 0e0000000e0e0e0000000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e00000e0e 0e0e0e000e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e00000e0e0e00000e0e0e000e000e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060e060e0602060e060106000606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e 0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e00000e0e0e00000e0e0e000e000e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e00000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060e060e060e060e060e060e060e060e1106060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e 0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e00000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f010001060e060e060e060e060e0601060e0e060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060606110e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e 0e0e0e000e0e0e0e000e0e000e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e0e0e000000000e0e0e0e000000000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e000e0e0e0e0e000000000e0e000e0e0e0e000e0e000e0e000e0e0e0e000e0e00000000000e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100060106010601060106010601060e0e0e11061106110611061106110611061106110611061106110611061106110611061106110611061106110611 0611061106110611061106110611061106110611061106110611061106110611060e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e0e000000000e0e000e0e000000000e 0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e000e0e00000000000e0e000000000e0e0e0e000e000e0e 0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e000e000e00 0e0e0e000e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e 000e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e0e0e 0e0e000e000e0e0e000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e000e0e000e0e0e0e0e0e000e0e 0e0e000e0e000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e00000000000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000000000e0e0e000000000e0e0e000e0e0e0e000e0e000e0e0e0e000e0e00000000000e0e000e0e0e0e000e0e0e0e00 0e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0000000e0e0e00000000000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e 000e0e0e0e0e0e000e0e000000000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e000e0e0e0e 0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0000 0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e 0f000e0e0e000e0e0e0e0e0e000e0e0e0e0e000e000e0e000e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e000e000e000e0e 000000000e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00 0e0e0e00000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02 020e02020e0f000e0e0e000e0e0e0e0e0e000e0e0000000e0e0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000e0e 0e00000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e 0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e 0e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e 0e02020e02020e02020e0f000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e00 0e00000e0e0e00000e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e0000000000000e0e00000e0e0e0e0e000000000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e00000000000e0e0e00000000000e 0e0e000000000e0e0e000e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e000000000e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01 00010e0e0202020f0e020202020e0e0f000e0e0e000e0e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e000e0e000e000e0e0e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e00000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e00 0e0e0e0e000e0e000e0e0e0e0e0e000e000e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e 0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e0e000000000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e000e0e000e000e0e0e0e0e000e0e00000000000e0e000000000e0e0e0e000e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e000e0e0e 0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f 0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e000e 0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e0e00000e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f 0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e0e0e0e0e0e000000000e0e000e 0e0e0e000e0e00000000000e0e0e00000000000e0e0e00000000000e0e000e0e0e0e000e0e00000000000e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0000000e0e0e00000000000e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f 0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010101010101010101010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000e0e0e01000000000e0e0e0e00010f000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000100000f0f0f0f0100000000010e0f000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010f0e0e0e0e0e0e0f0f0f0f0e0e0f000e0e0e000e0e000000000e0e0e0e0e0000000e0e000e0e0e000000000e0e00000e000e000e0e000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e000000000e000e0e00000e000e0e0000000e0e0e0e0e000e0e0e000e0e0000000e0e0e000e0e0e0e0e00000e0e0e0000000e0e0e000e0e000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0101010101010101010e0e0e0e0e0e0101010101010101010101010101000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e000e0e0e000e0e0e000e0e0e000e000e0e000e0e0e000e000e0e00000e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e0e000e000e000e0e00000e000e0e0e000e0e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e000e0e000e000e0e0e000e000e0e0e000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e 0e000e0e000e0e0e0e000e00000000000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000000000e0e0000000000000e0e0e0e0e000e0e0000000e0e0e0e0000000e0e0e00000000000e0e0e0000000e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e000000000e0e0e0e000000000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e0e0e0f000e0e0e000e0e000e0e0e0e000e0e000e0e0e0e0e000e0e000e0e0e000e000e0e0e000e000e000e0e0e000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e000e0e0e000e000e000e0e0e000e000e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e0e000e0e000e0e0e0e0e000e0e0e00 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e0f110f110f110f110f110f01000e0e0e0e0e0e 0e000e0e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e000e0e0e0e0e000e000e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020202020202020e0e0f000e0e0e000e0e000e0e0e0e000e0e00000000000e000e0e0e000000000e000e0e0e000e000e000e0e0e000e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e000e0e0e000000000e000e000e0e0e000e00000000000e0e0e0e000e0e0e000e000e0e0e000e000e0e0e0e0e0e000e0e0e00000000000e 000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f110f110f110f1101000e 0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e00000000000e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e02020e02020e02020e02020e0f000e0e0e000e0e000e0e0e0e000e0e000e0e0e000e000e0e0e0e0e0e000e000e0e0e000e000e000e0e 0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e0e0e0e0e000e000e000e0e0e000e000e0e0e000e0e0e0e00000e0e000e000e0e0e000e000e0e0e0e0e000e0e000e00 0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e00000000000e010e010e010e01010e0f110f110f110f110f 110f01000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e00 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e020202020e02020e02020e0f000e0e0e000e0e000e0e0e0e000e0e0e0000000e0e00000e0e0000000e0e000e0e0e000e 000e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e000e0e0e000e0e0000000e0e000e000e0e0e000e0e0000000e0e0e0e0e000e00000e0e0e0000000e0e00000e0e0e0e0e 00000e0e0e0000000e0e00000e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e010e110f110f 110f110f110f1101000e0e0e0e0e0e0e0000000000000e0e00000e0e0e0e0e000000000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e000e0e0e000e0e0e0000000e0e0e0e0000000e0e0e000000000e0e0e0e0000000e0e0e0e0e0e0e0e0e00000000000e0e0e000e0e0e0e000e0e000e0e0e0e00 0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e02020e02020e02020e0f000e0e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e 0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e000e0e0e010e0e0e0e0e0e01 0e0f110f110f110f110f110f01000e0e0e0e0e0e0e000e0e0e0e000e0e00000e0e0e0e0e000e0e0e0e0e0e0e000e000e0e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e0e000e0e00 0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0202020f0e020202020e0e0f000e0e0e000e0e000e0e0e000e0e0e0e0e0e0e0e0e000e0e0e0e 0e0e0e0e0e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e010e0e 0e0e0e0e010e110f110f110f110f110f1101000e0e0e0e0e0e0e000e0e0e0e000e0e000e000e0e0e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e000e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e 0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e0e0e0f000e0e0e0e000e000000000e0e0e0e0e0e0e0e0e0e 0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010101010101 0101010e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e01000e0e0e0e0e0e0e000e0e0e0e000e0e000e0e000e0e0e000e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e000e0e0e0e000e000e0e0e0e0e0e0e000e0e0e0e000e0e0e000e0e000e0e0e000e0e000e0e0e0e0e0e000e0e0e000e0e0e0e0e0e0e0e000e0e0e0e000e 0e000e0e0e0e000e0e000e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e02020e0e010000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f110f110f110f0101010101010e0e0e0e0e0e0e0e000e0e0e0e000e0e000e0e0e000e0e00000000000e000e0e0e0e0e000e0e0e0e0e0e0e0e000000000e0e000e0e0e0e0e0e0e000e0e0e0e0e0000000e0e0e0e0000000e0e0e00000000000e0e0e0000000e0e0e0e0e0e0e0e0e0000 0000000e0e0e0e000000000e0e0e0e000000000e0e0e00000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e010e010e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e010f110f110f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f0100010e0e0e0e0e0e0e0e0e0e0e01010e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0e0e0e0e0e0e0e0e0e0e0e0e01000f0e0f0f0f0f0100010101010101010101010101010e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f010e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0e0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f 010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000000000000000000000000000000000f0e0f0f0f0f0100010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010e01010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 010f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0000000000000000000000000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0101010101010101010101010101000f0e0f0f0f0f01000f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e0f000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f 0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f0101010101010101010e0e0e0e0e0e0e0e01000f000f000f000f000f00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01 000f0e0f0f0f0f01000f0f0f0f0f0f0f000f0f0f0f000f0f0f000000000f000f0f000f0f000f0f0000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 010e0f0f0f0f0f0f0f000000000f0f0f0f0f000000000f0f000f0f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e010001000100010001000101000e0e0e0e0e0e000e0e0e0e0e000e0e0e000e0e0e0e0e0e0e000000000e0e0e0000000e0e000e0e000e0e000e000000000e0e0e00000e000e0e000e0e0000000e0e000e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f 0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f0f0f00000f0f000f0f0f000f000f0f000f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f000f0f0f000f0f0f000f000f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e010f0f0f0f0f0f0f0f010f01000e0e0e0e0e0e000e0e000e0e000e0e0e00000e0e0e0e0e000e0e0e0e000e000e0e0e000e000e0e000e0e000e000e0e0e000e000e0e00000e000e0e000e0e0e000e000e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f 0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f0f0f00000f0f000f0f0f000f000f0f000f0f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f0f000f000f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e010000000000000000010f000e0e0e0e0e0e000e0e000e0e000e0e000e0e000e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e000e0e000e000e0e0e000e000e0e0e000e000e0e000e0e0e0e0e00 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0f0e0f0f000000000000000f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f0f000f000f0f0f000000000f000f0f000f0f000f00000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f0f000f0f0f000000000f000f0f0f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e00000000000e010e010e010e010e0e0e0e010e0f0f0f0f0f0f010001010e0e0e0e0e0e000e000e000e000e0e000e0e000e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e000e0e000e000e0e0e000e000e0e0e000e000e0e0000 0000000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0f0e0f0f0f00000000000f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f000f0f000f0f0f0f0f0f000f000f0f000f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f000f000f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e010e00010101010f0101000e0e0e0e0e0e0e000e000e000e000e0e000e0e000e0e0e0e000e0e0e0e0e0e000e0e0e000e000e0e000e0e000e000e0e0e000e000e0e0e000e 000e0e000e0e0e000e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0000000f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f000f0f000f0f0f0000000f0f0000000f00000f0f0f0000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f0f000f0f0f0000000f0f00000f0f0000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e010e00050505010f0101000e0e0e0e0e0e0e00000e0e0e00000e0e000e0e000e0e0e0e000e0e0e0e0e0e0e0000000e0e0000000e00000e0e000000000e0e00 0e0e0e000e00000e0e0000000e0e00000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f000f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f00000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e010e0e0e0e0e0e0e0e0e0e010e00130505010f0101000e0e0e0e0e0e0e00000e0e0e00000e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f00000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000f0f0f000f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f0101010101010101010e0e0e0e0e0e0e0e0e0e010e00000000000f0101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e000e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010e0e0e0e0e0e0f0101000e0e0e0e0e0e0e000e0e0e0e0e000e0e0e0e0e0e0e0e0e0e0e000000000e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e010f0f0f0f0f0f0f01000e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0f0f0f0f0f0f0f0f0f0f0f0f01000f0e0f0f0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e01010101010101010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0e0e0e0e0e0e0e0e0e0e0e0e0e01000f0e0f0f0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f010e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e 0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0e0f0f0f0f01000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0f0f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0e0f0f0f0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f0e0f0f010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010e0f0f0f0f0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101 0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010e0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000000000000000f0f0f0f0f0f0f0000 00000f0f0f0f0f0f0f0f0f0f0f0f0f0f00000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000000000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000000000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f00000000000000000f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0f0f0f00 0f0f0f0000000f0f0f000000000f000f0f00000f0f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f00000000000f0f0f000000000f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0000000f0f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0000000f0f000f0000 00000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0100 0f0f0f0f000f0f000f0f0f000f000f0f0f000f000f000f0f000f000f0f000f0f0f00000f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f000f0f0f000f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f000f0f0f00 0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f01000f0f0f0f000f0f000f0f0f0f0f000f0f0f000f000f0f0f000f0f000f0f000f0f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f000f0f0f000f000f0f0f0f0f000f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f 000f0f0f0f0f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f01000f0f0f0f000f0f00000000000f000f0f0f000f000f0f000f0f0f000f0f000f0f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f000f0f0f000f00000000000f000f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f 0f0f000f0f00000000000f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0100000000000f0f0f000f0f0f000f000f0f0f000f000f000f0f000f000f0f000f0f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f000000000f0f0f000f0f0f000f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f000f0f000f000f0f0f000f000f0f000f0f000f0f0f0f0f0f0f0f0f0f0f 0f0f0000000000000f0f000f0f0f000f000f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0f0f0f000f0f0f0000000f0f0f000000000f000f0f00000f0f00000f00000f000f0f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f000000000f000f00000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f000f0f000f0f0000000f0f000f0f000f0f000f0f0f0f0f0f 0f0f0f0f0f0f0f000f0f0f0f000f0f0f0000000f0f000f000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01000f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f000f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0100000000000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f00000000000f0f0f0f0f0f000f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f0f000f000f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f000f0f0f0f000f0f0f0f0f0f0f0f000f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f010f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f 0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f01060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060f0f0100000000000606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060f0f0113050e1305000606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606000000000000000000000000000000000000000000000000000000000000000006060000000000000000000000000000000006060f0f010e05130e05000006060606060606060606060606060606060606060606060e0e0e0e0e06060606060606060606060606 06060606060e0e0e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060e0101010101010101010101010101000e01010101010101010101010101010006060e01010101010101010101010101010006060f0f0105050e130500050006060606060606060606060606060606060606060606060606060e0e06060606060606 0606060606060606060606060e0e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f0f0f0f0f0f0f0f0f0f0f0f010006060e0f0f0f0f0f0f0f0f0f0f0f0f0f010006060f0f0113050000000005000606060606060e0e0606060e0e0606060e0e0e0e0606060e0e0e0e0e060e 0e06060e0e0e0606060e0e060e0e0606060e0e060606060606060e0e0e0e0e0e0606060e0e0e0e0e060e0e06060e0e06060e0e0e0e06060e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0000000000000f0f0f0f01000e0f0f0000000000000000000f0f010006060e0f0f0f0f0f0f0f0f0f0f0f0f0f010006060f0f010e050005050005000606060606060e0e0606060e0e06060e0e06060e0e060e0e06 060e0e060e0e060e0e060e0e060e0e06060e0e0606060e0e0e0606060606060e0e0606060606060e0e06060e0e060e0e060e0e06060e0e06060e0e060e0e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0000000000000f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f00000f0f0f0f00000f0f010006060f0f010e050013050000000606060606060e0e0606060e0e06060e0e060606 06060e0e06060e0e060e0e0606060e0e06060e0e06060e0e06060e0e060e0e06060606060e0e0606060606060e0e06060e0e060e0e060e0e06060e0e06060e0e060e0e060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f0f00000f0f00000f0f0f010006060f0f010000000e050005000606060606060e0e0606060e0e0606 0e0e0e0e0e0e060e0e06060e0e060e0e06060e0e0606060e0e06060e0e06060e0e060e0e06060606060e0e0606060606060e0e06060e0e060e0e060e0e06060e0e06060e0e060e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f0f0f000000000f0f0f0f010006060f0f0105050500000005000606060606060e0e0e0e 0e0e0606060e0e06060e0e060e0e06060e0e060e0e060e0e060e0e060e0e06060e0e06060e0e060e0e06060606060e0e0e0e0e0606060e0e06060e0e060e0e060e0e06060e0e06060e0e060e0e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f0f0f0f00000f0f0f0f0f010006060f0f01130e0500050005000006060606 060e0e0606060e0e0606060e0e0e0e0606060e0e0e0e0e060e0e06060e0e0e06060e0e0e060e0e0e060e0e060e0e06060606060e0e060606060606060e0e0e0e0e060e0e060e0e0e06060e0e0e0e06060e0e0e0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f0f0f000000000f0f0f0f010006060f0f010e0e050005010001 0500060606060e0e0606060e0e060606060606060606060606060606060606060606060606060e0e060606060606060606060606060606060e0e060606060606060606060e0e060606060e0e060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 0606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f000f0f0f0f0f0f0f000f0f010006060e0f0f0f0f00000f0f00000f0f0f010006060f0f01010101 01000601051305000606060e0e0606060e0e060606060606060606060606060606060606060606060606060e0e060606060606060606060606060606060e0e060606060606060606060e0e060606060e0e06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606 06060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060e0f0f0f0f0f0f0f0f0f0f0f0f0f01000e0f0f0000000000000000000f0f010006060e0f0f0f00000f0f0f0f00000f0f010006060f 0f010300000000000000000000000000}}}} \par \pard\plain \widctlpar \f4\fs20 Next, open the key below that (in the Regedit screen display above that key is named 0000004C). On the right-hand side of the screen the modems PNP HardwareID will be displayed. If you can obt ain a PNP CompatibleID from the modem, it will be displayed also. Not all modem vendors are providing CompatibleIDs from their modems, but they are encouraged to do so. By providing CompatibleIDs as well as HardwareIDs, vendors have more flexibility in th e way they write their INF files and the modem installation process may be more reliable. \par In the example RegEdit screen above, the displayed HardwareID string is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 SSC0002,ISAPNP\\SSC0001_DEV0002 \par \par \pard\plain \widctlpar \f4\fs20 This string contains both forms of ISAPNP IDs, the long ID and the short ID separated from each other by a comma. The short ID is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 SSC0002 \par \par \pard\plain \widctlpar \f4\fs20 The long ID is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 ISAPNP\\SSC0001_DEV0002 \par \par \pard\plain \widctlpar \f4\fs20 The short ID, when present, comes from a logical tag on the EEPROM of the card, whereas the long ID comes from the first four bytes of the card plus a device ordinal if the card has more than one device. The long ID is more likely to be unique than the sh ort ID, but does not allow easy use of it as a compatible ID. \par The rule is to use the short ID in your INF file if it is unique or the same driver works on all devices that use that ID. Use the long ID when the same ID is used for two different devices. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282477}{\*\bkmkstart _Toc342282574}Obtaining and Using PCMCIA Hardware IDs{\*\bkmkend _Toc342282477}{\*\bkmkend _Toc342282574} \par \pard\plain \widctlpar \f4\fs20 A PCMCIA modem hardware ID can be obtained by inserting a PCMCIA modem into a Windows 95 machine, which causes the PCMCIA hardware ID to be read from the PC card's tuples into the registry. Then you can use the Registry Editor (Regedit) to read the PCMCIA hardware ID from the registry. \par To obtain the ID: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Insert the modem PC card. \par \tab 2\tab Typically the modem will not be recognized by name if the ID is not present in any INF. \par \tab 3\tab Install it using a default driver or any other PCMCIA manufacturer modem device. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 To locate the ID string in the registry, use RegEdit to open the path HKEY_LOCAL_MACHINE\\Enum\\ PCMCIA. Immediately below that point is the hardware ID that was read from the card's tuples. Following is an example PCMCIA modem ID: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 PCMCIA\\ATI__-14.4_MODEM/FAX_-D904 \par \par \pard\plain \widctlpar \f4\fs20 Note the prefix "PCMCIA\\" which always precedes the actual ID in an INF. The dash and underscore characters must be entered into the INF exactly as they are found in the registry. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282478}{\*\bkmkstart _Toc342282575}Step 2 -- Creating The Modem INF File{\*\bkmkend _Toc342282478}{\*\bkmkend _Toc342282575} \par \pard\plain \widctlpar \f4\fs20 Once you have validated your modem ID strings and have some idea how you are going to use the ID strings in your modem INF file, it's time to create the INF file. There are many examples of modem INF files in the WINDOWS\\ INF subdirectory of your Windows 95 computer. You can either edit one of those INF files to work with your modem, or build your INF file from scratch. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282479}{\*\bkmkstart _Toc342282576}Tools for Creating Modem INF Files{\*\bkmkend _Toc342282479}{\*\bkmkend _Toc342282576} \par \pard\plain \widctlpar \f4\fs20 Three tools that can be used to create modem INF files are: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Use a text editor to work directly on the INF file; the editor must be able to save the INF file as ASCII text. If you are experienced in working with INF files, this may be quickest and most flexible tool for creating your INF file. Notepad is an exampl e of an ASCII text editor on your Windows 95 computer, but you can use any editor you are used to that saves a file as pure ASCII text. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Use the Infedit tool, which presents a graphical user interface that prompts you for information to put into an INF file and builds the INF file for you. InfEdit is a great tool to use to create your INF file if you have never worked with INF files befor e or have trouble working with INF files because InfEdit takes care of a lot of the structural details for you. InfEdit is available on the Windows 95 DDK. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Use Profile Calculator to compose profile-type values to put into your INF file. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Note that you can alternately use your text editor and InfEdit to work on the same INF file. For example, you open a modem INF file with InfEdit (from WINDOWS\\ INF) and do some editing there, save the new version of the INF, reopen it in your text editor, and do the rest of the edits there. If you want to do cut and pasted edits, you will have to do those in your text editor. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282480}{\*\bkmkstart _Toc342282577}Using the Infedit Tool{\*\bkmkend _Toc342282480}{\*\bkmkend _Toc342282577} \par \pard\plain \widctlpar \f4\fs20 Full instructions for using the Infedit user interface to build or adapt an INF file are in the Windows 95 DDK documentation file PNP.DOC in the chapter titled "Device Information Files." An example of building a complete INF file from scratch using Infed it is also included in that chapter. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282481}{\*\bkmkstart _Toc342282578}Using the Profile Calculator{\*\bkmkend _Toc342282481}{\*\bkmkend _Toc342282578} \par \pard\plain \widctlpar \f4\fs20 Full instructions for using the Profile Calculator user interface to build and analyze profile string values is in the Help file PROFILE.HLP that comes with the Profile Calculator. There is also a README file that comes with the Profile Calculator that contains the same information as the .HLP file. Following are some excerpts from PROFILE.HLP which introduce you to the tool. \par Profile Calculator can be used to create, edit or translate properties lines within Windows 95 modem INF files. Modem INF properties lines contain device properties settings that are transferred from an INF file to the Windows 95 Registry at the time a de vice is installed. A properties line is a single line in an INF file without text wrapping. The following are examples of typical properties lines in a modem INF: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, VoiceProfile, 1, 27,03,00,00 \par HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, 00,00,00,00, 07,00,00,00, 07,00,00,00, 77,03,00,00, 00,c2,01,00, 40,38,00,00 \par \par \pard\plain \widctlpar \f4\fs20 The Profile Calculator graphical user interface translates the double-word hexadecimal values that are in a properties line to text values and associates labels with the values that describe what each value represents. \par P rofile Calculator can translate text values you input into an INF properties line that you can then cut and paste into your INF file. Profile Calculator can also translate existing properties line values into text so you can interpret and analyze the prop erty values. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282482}{\*\bkmkstart _Toc342282579}Understanding the General Format and Content of INF Files{\*\bkmkend _Toc342282482}{\*\bkmkend _Toc342282579} \par \pard\plain \widctlpar \f4\fs20 A complete reference to the general structure and content of a Windows 95 INF file is included in the Windows 95 DDK documentation file PNP.DOC, under the topic "Device Information Fil es." A brief summary of that information follows to give you a model of the parts of an INF file. \par The structural parts of an INF file are sections and items. Whether you use a text editor or the Infedit tool, you build an INF file one section and one item at a time. \par The sections that make up an INF file each have a unique name. Each section begins with the section name enclosed in square brackets. The rest of the section is made up of one or more items. There can be any number of sections in an INF file, but there are a limited number of types of sections. \par Sections can be put in any order in an INF file, but the sample modem INF files provided in the MDK and the modem INF files in the \\WINDOWS\\SYSTEM\\ INF directory on your Windows 95 computer have the different types of sections laid out in roughly the same order. But this is a convention only, not a requirement. The sections that deal with modem IDs are usually at the beginning of the INF file, sections that support modem-specific commands, voice modem com mands, and Voice View are kept separate from each other in the middle of the INF file, and the modem responses are near the end of the file. \par Each type of section has a particular purpose; for example, to add entries to the registry or to copy files. Each of the items in a section contributes to that section's purpose and the syntax of each type of item that can be used in a particular type of section reflects that. \par Three sections from a sample INF file are shown below, so you can more easily visualize an INF file being made up of sections and each section being made up of one or more items. The section named Manufacturer contains one item; the section named Microsoft, which is referred to by the Manufacturer section, contains two items, and the section na med Strings contains four items plus three lines of comments. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Microsoft \par \par [Microsoft] \par %Modem1% = Modem1, PCMCIA\\RIPICAB-RC144ACL-3BD0 \par %Modem2% = Modem2, UNIMODEME9DF4BA4 \par \par [Strings] \par ; This section lists strings that are used by the Modems control panel \par ; and the Install New Modem wizard. For example, \par ; Modem1 will appear as "Microsoft 144 PCMCIA Data Fax Modem". \par ClassName = "Modem" \par Mfg = "Microsoft" \par Modem1 = "Microsoft 144 PCMCIA Data Fax Modem" \par Modem2 = "Microsoft 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 All the types of sections you can use in an INF file are listed in the following summary table. The types of sections that are most often used in a modem INF file are listed at the top of the table. \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Type of INF File Section \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Purpose \cell Comment \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 INF file header. \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 The standard header for all INF files. \cell Every INF file must have a header section, which is always the section named [Version] \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Manufacturer \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 These sections identify the manufacturer of one or more devices defined in the INF file, describes the device(s), and identifies the Install section that contains the script for installing each device. \cell Every INF file must have [Manufacturer] sections. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Install sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 Identifies the other sections in the INF file that describe the resource requirements of a device and which add entries to the registry, copy files, etc. \cell Every INF file must have at least one Install-type section. Typically, there is one Install-type section for each modem model the INF file is capable of installing. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 Add Registry sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Adds subkeys or value names to the registry, optionally setting values. \cell Most of the information in a modem INF file is in Add Registry-type sections, also known as AddReg sections. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Strings section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Defines one or more names that represent a string of displayable characters. \cell Every INF file has a [Strings] section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 NoResDup section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Provides a method for the installing devices that use no resources. \cell See the topic "Using NoResDup and PosDup INF Sections" in this document for example uses of this type of section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 PosDup section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Provides a method for identifying devices that may appear to be separate devices but are in fact the same device. \cell See the topic "Using NoResDup and PosDup INF Sections" in this document for example uses of this type of section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ControlFlags section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Provides limited control over UI displays and events during device installation. \cell May be used to prevent the names of modems from being displayed in a list of modems user can choose to install. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 CopyFiles sections \par \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Names the files copied from the source disk(s) to the destination directories during device installation. \cell Must be used if your modem requires driver files to be installed in addition to the INF file. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Rename Files sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Names the files to be renamed when they are copied from the source disk(s) to the destination directories during device installation. Also gives the new filenames on the destination directories. \cell May be used if your modem requires driver files to be installed in addition to the INF file. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DelFiles sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Names the files to be deleted from destination directories during device installation. \cell May be used in the uninstall part of your INF file. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Delete Registry sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Deletes subkeys or value names from the registry. \cell Probably always used in the uninstall part of your INF file. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Log Config sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Defines device configuration details such as IRQs, memory address ranges, I/O address ranges, and/or DMA channels. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Disk Names section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Identifies and names the disk(s) that are the source of files that are copied to the hard disk during installation. Also names the files that are on each of the installation disk(s). \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Update Autoexec.bat sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Manipulates lines in the AUTOEXEC.BAT file. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Update Config.sys sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Manipulates lines in the CONFIG.SYS file. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Ini File to Registry sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Moves lines or sections from an INI file to the registry, creating or replacing an entry under a specific key in the registry. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Update Ini File sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Replaces, adds, and deletes entries in an INI file. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Update Ini Fields sections \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Replaces, adds, and deletes fields in the value of a given entry in an INI file. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 HW section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 A special case of an Install section. The only type of section that allows entries to be made to the Hardware branch of the registry. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ClassInstall section \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Installs a new class for a device in the Class section of the registry on a Windows 95 machine. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282483}{\*\bkmkstart _Toc342282580}Introducing a Sample Data Modem INF File{\*\bkmkend _Toc342282483}{\*\bkmkend _Toc342282580} \par \pard\plain \widctlpar \f4\fs20 SMPDATA.INF is a sample INF file for a data modem that is included in the MDK. A listing of SMPDATA.INF is shown below. All the sections in SMPDATA.INF are shown, but many of the items in the AddReg-type section s are not shown in order to simplify the listing. Other topics in this document will show how you can modify each section of SMPDATA.INF so it can be used to install a different data modem. The sections in SMPDATA.INF form the backbone of any modem INF fi le. The name and purpose of all the sections in SMPDATA.INF are summarized in the following table. \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Name of INF File Section \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Purpose \cell Comment \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [Version] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Standard header for all INF files. Identifies operating system the INF file can be used with, class of device being installed, and organization providing the INF file. \cell The values of %ClassName% and %Mfg% are defined in the [Strings] section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [Manufacturer] and [Microsoft] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 These sections identify the modem manufacturer, give the friendly name for the modem, identify the install-type section that contains the script for installing each device, and give the modem IDs of each device. \cell The values of %Modem1% and %Modem2% are defined in the [Strings] section. "PCMCIA\\RIPICAB-RC144ACL-3BD0" is the modem ID st ring for the Microsoft 144 PCMCIA Data Fax Modem model and "UNIMODEME9DF4BA4" is the modem ID string for the Microsoft 288 External Data Fax Modem model. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 [Strings] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Defines strings that are used by the Modems control panel and the Install New Modem wizard. \cell Putting all the displayable strings in one section enables easy translation of the INF file for use in international markets. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [Modem1] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Lists the sections of the INF file that define registry entries to be added when installing the Microsoft 144 PCMCIA Data Fax Modem. The sections will be used in left-to-right order to write entries into the registry. \cell The name of this section can be anything, but in this sample INF file it must be defined in the [Microsoft] section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [Modem2] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Lists the sections of the INF file that define registry entries to be added when installing the Microsoft 288 External Data Fax Modem model. The sections will be used in left-to-right order to write entries into the registry. \cell The nam e of this section can be anything, but in this sample INF file it must be defined in the [Microsoft] section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [All] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Contains the registry entry additions that are made for all the modem models that can be installed by this INF. This includes the Microsoft 144 PCMCIA Data Fax Modem and the Microsoft 288 External Data Fax Modem. \cell The name of this section can be anything; the name [All] is used to indicate that the registry additions in this section are made for all the modems installed by this INF. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [EXTERNAL] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Contains registry entry additions that must be made for all external-type modems, such as the example Microsoft 288 External Data Fax Modem. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 [PCMCIA] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Contains registry entry additions that must be made for all PCMCIA-type modems, such as the example Microsoft 144 PCMCIA Data Fax Modem. \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 [Modem1.AddReg] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Contains registry entry additions that are made only when the Microsoft 144 PCMCIA Data Fax Modem is installed. \cell The name of this section can be anything; the name [Modem1.AddReg] is used to ind icate that the registry additions in this section are made only for the modem referred to as Modem1 in the [Microsoft] section of the INF. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 [Modem2.AddReg] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Contains registry entry additions that are made only when the Microsoft 288 External Data Fax Modem is installed. \cell The name of this section can be anything; the name [Modem2.AddReg] is used to indicate that the registry additions in this section are made only for the modem referred to as Modem2 in the [Microsoft] section of the INF. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 [MfgAddReg] \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Cont ains the registry entry additions that are made for all the modem models made by the manufacturer named in this INF. This includes the Microsoft 144 PCMCIA Data Fax Modem and the Microsoft 288 External Data Fax Modem. \cell The name of this section can be anything; the name [MfgAddReg] is used to indicate that the registry additions in this section are made for the manufacturer named in this INF. If this INF named more than one manufacturer, for example Intel and Microsoft, then there would be (for example) an [Intel.MfgAddReg] section and a [Microsoft.MfgAddReg] section. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The primary characteristics of the sample INF file SMPDATA.INF are: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab It installs modems made by only one manufacturer (Microsoft). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab It installs two modem models made by Microsoft: a non-Plug and Play external modem model and a PCMCIA modem model. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab It uses multiple AddReg-type sections: one that makes registry entries for all modems th at can be installed by the INF, one that makes entries for all modems made by Microsoft that can be installed by the INF, one that makes entries common to all external modems, one that makes entries unique to the external modem model installed by the INF, one that makes entries common to all PCMCIA modems, and one that makes entries that are unique for the PCMCIA modem model installed by the INF. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Following is a listing of SMPDATA.INF. Other topics in this document show how to adapt each section for a different manufacturer, the Zip Corporation, and the modem models it needs to install on Windows 95 computers. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Version] \par ; See INF documentation for additional information on this section. \par ; This section should never change \par Signature="$CHICAGO$" \par Class=%ClassName% \par Provider=%Mfg% \par \par [Manufacturer] \par ; See INF documentation for additional information on this section. \par ; This is the list of manufacturers that will appear in the Install New \par ; Modem wizard's list of manufacturers. \par %Mfg% = Microsoft \par \par [Microsoft] \par ; See INF documentation for additional information on this section. \par ; This is the list of modems that will appear in the Install New Modem \par ; wizard's list of modems for this manufacturer. \par %Modem1% = Modem1, PCMCIA\\RIPICAB-RC144ACL-3BD0 \par %Modem2% = Modem2, UNIMODEME9DF4BA4 \par \par [Strings] \par ; See INF documentation for additional information on this section. \par ; This section lists strings that are used by the Modems control panel \par ; and the Install New Modem wizard. \par ; For example, Modem1 appears as "Microsoft 144 PCMCIA Data Fax Modem". \par ClassName = "Modem" \par Mfg = "Microsoft" \par Modem1 = "Microsoft 144 PCMCIA Data Fax Modem" \par Modem2 = "Microsoft 288 External Data Fax Modem" \par \par [Modem1] \par ; See INF documentation for additional information on this section. \par ; This section indicates the actions to be done when installing this \par ; modem. Usually, modems only need to have registry entries \par ; added (AddReg= line) \par \par ; The AddReg line points to sections of the INF file that list registry \par ; entries to be added when installing this modem. For example, the \par ; line below instructs the installer to add the registry entries \par ; listed in the following sections of this INF file: \par ; [All], [MfgAddReg], [Modem1.AddReg], [PCMCIA] \par \par ; Note that it is not necessary to break up the registry additions \par ; into different sections in the INF. However, breaking out common \par ; entries into sections can help to reduce the size of the INF, if \par ; multiple modems are installed from the same INF and have common \par ; registry entries \par \par AddReg=All, MfgAddReg, Modem1.AddReg, PCMCIA \par \par [Modem2] \par AddReg=All, MfgAddReg, Modem2.AddReg, EXTERNAL \par \par [All] \par ; This is a section of registry additions. Note that All is \par ; referenced in the [Modem1] AddReg= line and the [Modem2] AddReg= \par ; line above, so this entry will be put into the registry when \par ; either modem is installed. \par \par ; See the Modem Registry Entries document for more information on \par ; specific registry entry keys. \par \par HKR,,FriendlyDriver,,Unimodem.vxd \par HKR,,DevLoader,,*vcomm \par HKR,,Enumerator,,serwave.vxd \par HKR,,ConfigDialog,,modemui.dll \par HKR,,EnumPropPages,,"modemui.dll,EnumPropPages" \par HKR,,PortSubClass,1,02 \par HKR, Init, 1,, "AT" \par HKR, Responses, "OK", 1, 00, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "ERROR", 1, 03, 00, 00,00,00,00, 00,00,00,00 \par \par [EXTERNAL] \par ; More registry entries \par HKR,, DeviceType, 1, 01 \par \par [PCMCIA] \par ; More registry entries \par HKR,,PortDriver,,Serial.vxd \par HKR,,Contention,,*vcd \par HKR,, DeviceType, 1, 03 \par \par [Modem1.AddReg] \par ; More registry entries \par HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,c2,01,00, 40,38,00,00 \par \par [Modem2.AddReg] \par ; More registry entries \par HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,c2,01,00, 80,70,00,00 \par \par [MfgAddReg] \par ; More registry entries \par HKR, Init, 2,, "AT &F E0 V1 &D2 &C1 W2 S95=47" \par HKR,, InactivityScale, 1, 0a,00,00,00 \par HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor, 2,, "None" \par HKR, Hangup, 1,, "ATH" \par HKR, Answer, 1,, "ATA" \par HKR,, Reset,, "AT&F" \par HKR, Settings, Prefix,, "AT" \par . \par . \par . \par HKR, Settings, InactivityTimeout,, "S30=<#>" \par . \par . \par . \par HKR, Responses, "CARRIER 28800/VFC", 1, 01, 00, 80,70,00,00, 00,00,00,00 \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282484}{\*\bkmkstart _Toc342282581}General Traps to Avoid When Editing INF Files{\*\bkmkend _Toc342282484}{\*\bkmkend _Toc342282581} \par \pard\plain \widctlpar \f4\fs20 Before you start editing a modem INF file, such as SMPDATA.INF, keep the following common modem INF file item formatting and content errors in mind: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If using a word processor to edit the IN F file, always remove any non-ASCII characters which could accidentally be appended to the end of the file. An INF must be pure ASCII. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Within the [Strings] section, do not use the following characters in modem names: < > : " / \\ | Using these characters will usually causes errors in installation or testing. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Do not use a period (.) at the end of a modem name in the [Strings] section. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Do not incorrectly apply an AT command or init to all modems. For example, a specific modem may require AT&F1 instead of AT&F, or a modem may use \\ Tn for inactivity timer instead of S30. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Do not forget to use double percent sign (%%) or double quotation mark ("") in INF commands which use these symbols. For example, use %%C1 in an INF to enable compression not %C1. Likewise use ""H3 not "H3. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Check the properties line of the INF for correct maxim um DTE and DCE speed. You can usually determine maximum DTE by glancing at the MODEMDET.TXT file which Windows 95 generates when a new modem is installed. You can also determine max DTE and DCE by consulting manufacturer documentation or by trial and erro r with any communications program. Use the communications program to transmit init strings to the modem at various DTE speeds by trial and error to find the maximum DTE value. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab To find fixes for persistent errors, study other INF files provided with Windows 95 to see what might be missing. These are stored in the \\WINDOWS\\ INF directory and are usually listed as MDM*.INF \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Two lines are generally added to the default MfgAddReg section to assist a modem in answering incoming calls. The lines below are used to make sure that the S0 register is forced to 0 since some modem Nvram settings may default to settings greater than 0 on power up. Note the placement of these two entries by studying other Windows 95 INFs. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor, 2,, "None" \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282485}{\*\bkmkstart _Toc342282582}Adapting the [Version] and [Strings] Sections of SMPDATA.INF{\*\bkmkend _Toc342282485}{\*\bkmkend _Toc342282582} \par \pard\plain \widctlpar \f4\fs20 The following topics show how to adapt the MDK sample INF file SMPDATA.INF to be used with different modem models from a different modem manufacturer. \par Suppose you are working for the Zip Corporation and want to adapt the SMPDATA.INF sample for your modems, which are also a non-Plug and Play 28.8Kbps external modem and a 14.4Kbps PCMCIA modem. First, adapt the [Version] and [Strings] sections. Listings of the SMPDATA.INF [Version] and [Strings] sections are shown below: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Version] \par Signature="$CHICAGO$" \par Class=%ClassName% \par Provider=%Mfg% \par . \par . \par . \par \par [Strings] \par ClassName = "Modem" \par Mfg = "Microsoft" \par Modem1 = "Microsoft 144 PCMCIA Data Fax Modem" \par Modem2 = "Microsoft 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 There is no need to change the [Version] section. \par Change the [Strings] section to include the friendly (displayable) names of the Zip Corporation and the Zip modem models. For example: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Strings] \par ClassName = "Modem" \par Mfg = "Zip" \par Modem1 = "Zippy 144 PCMCIA Data Fax Modem" \par Modem2 = "Zippy 288 External Data Fax Modem" \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282486}{\*\bkmkstart _Toc342282583}Adapting the Manufacturer and Model Sections of SMPDATA.INF{\*\bkmkend _Toc342282486}{\*\bkmkend _Toc342282583} \par \pard\plain \widctlpar \f4\fs20 A listing of the [Manufacturer] section from SMPDATA.INF, the models section it refers to, and the modified [Strings] section are shown below: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Microsoft \par \par [Microsoft] \par %Modem1% = Modem1, PCMCIA\\RIPICAB-RC144ACL-3BD0 \par %Modem2% = Modem2, UNIMODEME9DF4BA4 \par \par [Strings] \par ClassName = "Modem" \par Mfg = "Zip" \par Modem1 = "Zippy 144 PCMCIA Data Fax Modem" \par Modem2 = "Zippy 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 An optional change is to rename the section that specifies the friendly names of your modems, the modem IDs, and the INF sections that contain the installation scripts for each modem model. For example, you might change [Microsoft] to [Models]. This chang e is optional because as long as th e [Manufacturer] section refers to the correct section name, the INF will work. But you may want to get the string value of another company name, such as "Microsoft," out of your INF file. After the change, these three sections look like this: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Models \par \par [Models] \par %Modem1% = Modem1, PCMCIA\\RIPICAB-RC144ACL-3BD0 \par %Modem2% = Modem2, UNIMODEME9DF4BA4 \par \par [Strings] \par ClassName = "Modem" \par Mfg = "Zip" \par Modem1 = "Zippy 144 PCMCIA Data Fax Modem" \par Modem2 = "Zippy 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 The most im portant change you must make is to change the modem ID strings in the [Models] section to match the modem IDs of your modems. If you carried out the procedures described in the topic "Using Tools to Obtain Modem ID Strings from Modems," then you know what modem ID strings your modems produce. For example, the modem ID of the Zippy 144 PCMCIA Data Fax Modem might be "PCMCIA\\ZIP-DATAFAX_14.4-77CE" and the modem ID of the Zippy 288 External Data Fax Modem might be "UNIMODEMAC9AF91E." \par One way to adapt the [Models] section to your modems is to simply substitute your modems' ID strings for the sample strings. So, for example, the Manufacturer and Strings sections would look like this: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Models \par \par [Models] \par %Modem1% = Modem1, PCMCIA\\ZIP-DATAFAX_14.4-77CE \par %Modem2% = Modem2, UNIMODEMAC9AF91E \par \par [Strings] \par ClassName = "Modem" \par Mfg = "Zip" \par Modem1 = "Zippy 144 PCMCIA Data Fax Modem" \par Modem2 = "Zippy 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 However, there are other ways you can adapt the [Models] section to your modems. For more information, see the topic "Using Rank 0, Rank 1, and Rank 2 Modem ID Strings." \par When you are looking at existing modem INF files, the links between the Manufacturer sections items and the other sections it refers to may be hard to follow at first. One reason for this is that the sections referred to can be named anything. Following i s an example that shows the relationships. \par The [Manufacturer] section contains one li ne for each manufacturer name to be displayed in the Modems control panel. Note that an INF can contain several manufacturers and some of the modem INF files packaged by Microsoft and shipped with Windows 95 do so. \par When the left-hand side of an item is contained in percent characters ("%"), it references a line in the [Strings] section. The right-hand side of a [Manufacturer] section always names an INF section that lists all the driver models built by this manufact urer that can be installed with the INF file, along with a recognition ID string for each model. \par The [Models] section contains one line per each modem associated with one manufacturer listed in the [Manufacturer] section. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Models \par \par [Models] \par %Modem1% = Modem1, *ACM1234 \par %Modem2% = Modem2, *ACM5678 \par \par \par \pard\plain \widctlpar \f4\fs20 The left hand side of the items in the example Manufacturer sections shown above are contained in percent characters ("%") to reference a line in the [Strings] section because this string, the modem model name the customer sees, w ill be displayed in a user interface. Putting all the displayable strings in one INF section makes the INF easier to adapt to international markets. Only the strings in the [Strings] section have to be translated to other languages. The right-hand side of each item names an install-type section for the modem, followed by the modem's device ID, if any. Windows 95 uses the device ID to automatically install the modem. \par The [Strings] section contains one line per user-visible string referenced by other sections. The [Strings] section for modem INF files usually always contain: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab ClassName="Modem" \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab One line per manufacturer \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab One line per modem \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab One line per device ID \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 For example, \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Strings] \par ; This section lists strings that are used by the Modems control panel applet \par ; and the Install New Modem wizard. \par ; For example, Modem1 will appear as "Microsoft 144 PCMCIA Data Fax Modem". \par ClassName = "Modem" \par Mfg = "Microsoft" \par Modem1 = "Microsoft 144 PCMCIA Data Fax Modem" \par Modem2 = "Microsoft 288 External Data Fax Modem" \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282487}{\*\bkmkstart _Toc342282584}Adapting the [Modem1] and [Modem2] Install-Type Sections of SMPDATA.INF{\*\bkmkend _Toc342282487} {\*\bkmkend _Toc342282584} \par \pard\plain \widctlpar \f4\fs20 A listing of the adapted [Models] section from SMPDATA.INF, and the [Modem1] and [Modem2] install-type sections it refers to is shown below: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Models] \par %Modem1% = Modem1, PCMCIA\\ZIP-DATAFAX_14.4-77CE \par %Modem2% = Modem2, UNIMODEMAC9AF91E \par . \par . \par . \par [Modem1] \par AddReg=All, MfgAddReg, Modem1.AddReg, PCMCIA \par \par [Modem2] \par AddReg=All, MfgAddReg, Modem2.AddReg, EXTERNAL \par \par \pard\plain \widctlpar \f4\fs20 When you use multiple AddReg-type sections, as shown above, you can use different values for the same registry key in more than one AddReg-type section. The order that AddReg-type section names are listed (from left to right) in the AddReg= item of an ins tall-type section, such as the example install sections [Modem1] and [Modem2], can be critical in such INF files. When different key values are specified in more than one AddReg section, the value in the section listed furthest to the right in the AddReg= line is the value that finally ends up in the registry. \par In the above example, the registry keys for Modem1 specified by the sections [All], [MfgAddReg], and [Modem1.AddReg], will be created in exactly the order they are listed from left-to-right in the AddReg= line. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab [All] might create registry keys required for all modem models installed by the INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab [MfgAddReg] might create registry keys common to modems for the manufacturer named in the INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Finally, [Modem1.AddReg] might create registry keys specific to one particular modem. Notice that because of the order the sections are named in the AddReg= line, the key values in [Modem1.AddReg] can override key values previously specified in [All] or [MfgAddReg]. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Using the sample [Modem1] section above, first the All section is installed into the registry, next the MfgAddReg section and finally the Modem1.AddReg section. Perhaps the All section contains no command for hardware flow control, the MfgAddReg section contains the command for hardware flow control of &K3, and finally the Modem1.AddR eg section contains a hardware flow control command of \\ Q3. When the installer executes the script given by the AddReg entry, first no flow key is installed from the INF into the registry from the ALL section, next a key value of &K3 from MfgAddReg put into the registry, and finally that value is overwritten with the \\ Q3 value from Modem1.AddReg section. Note that although the only type of INF sections shown in the above example are AddReg-type sections, install sections may contain directives other than Ad dReg. For example, here are a couple install sections, named Modem1 and Modem2: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Modem1] \par AddReg=All, MfgAddReg, Modem1.AddReg \par \par [Modem2] \par AddReg=All, MfgAddReg, Modem2.AddReg \par CopyFiles=@sample.vxd \par \par \par \pard\plain \widctlpar \f4\fs20 Internal modems which use a VCOMM port driver other than SE RIAL.VXD (e.g. "SAMPLE.VXD") will have a CopyFiles line, as shown in the [Modem2] section. This specifies the port driver name, preceded by an "@" character. This file will be copied to the Windows 95 \\ SYSTEM subdirectory by the Modems control panel becau se that is the default destination directory for INF files. See the topic "Device Information Files" in the Windows 95 DDK documentation file PNP.DOC to learn how to change the default destination directory, if necessary. To see examples of using CopyFile s and [DestinationDirs] INF items, see the sample Voice View modem INF file in the MDK, SMPVV.INF. \par Note also that all the examples above illustrate that the name of an install section can be anything, but must be a unique section name within the INF file. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282488}{\*\bkmkstart _Toc342282585}Adapting the [All], [MfgAddReg], and [Modem1.AddReg] Sections of SMPDATA.INF{\*\bkmkend _Toc342282488} {\*\bkmkend _Toc342282585} \par \pard\plain \widctlpar \f4\fs20 A listing of the [All], [MfgAddReg], [Modem1.AddReg], and [Modem2.AddReg] sections from SMPDATA.INF, are shown below. To adapt these sections to your own modem models, you must d etermine the capabilities of your modem from the modem documentation and use the MDK document REG.DOC to determine which items in these AddReg-type sections to add, delete, or modify. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [All] \par HKR,,FriendlyDriver,,Unimodem.vxd \par HKR,,DevLoader,,*vcomm \par HKR,,Enumerator,,serwave.vxd \par HKR,,ConfigDialog,,modemui.dll \par HKR,,EnumPropPages,,"modemui.dll,EnumPropPages" \par HKR,,PortSubClass,1,02 \par HKR, Init, 1,, "AT" \par HKR, Responses, "OK", 1, 00, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "ERROR", 1, 03, 00, 00,00,00,00, 00,00,00,00 \par . \par . \par . \par [Modem1.AddReg] \par ; More registry entries \par HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,c2,01,00, 40,38,00,00 \par \par [Modem2.AddReg] \par ; More registry entries \par HKR,, Properties, 1, 80,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,c2,01,00, 80,70,00,00 \par \par [MfgAddReg] \par ; More registry entries \par HKR, Init, 2,, "AT &F E0 V1 &D2 &C1 W2 S95=47" \par HKR,, InactivityScale, 1, 0a,00,00,00 \par HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor, 2,, "None" \par HKR, Hangup, 1,, "ATH" \par HKR, Answer, 1,, "ATA" \par HKR,, Reset,, "AT&F" \par HKR, Settings, Prefix,, "AT" \par . \par . \par . \par HKR, Settings, InactivityTimeout,, "S30=<#>" \par . \par . \par . \par HKR, Responses, "CARRIER 28800/VFC", 1, 01, 00, 80,70,00,00, 00,00,00,00 \par \par \par \pard\plain \widctlpar \f4\fs20 When you look at the AddReg-type sections in existing modem INF files, the content can look confusing but AddReg sections do have a common form. An example AddReg section for a particular modem is: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Modem1.AddReg] \par HKR,,DeviceType, 1, 02 ; Internal \par HKR,,PortSubClass,1,02 \par HKR,,PortDriver,,serial.vxd \par HKR,,Contention,,*vcd \par HKR,, Properties, 1, c0,01,00,00, ff,00,00,00, ff,00,00,00, 07,00,00,00, 0f,00,00,00, f7,03,00,00, 00,e1,00,00, 40,38,00,00 \par HKR,, FClass, 1, "07,00,00,00" \par \par \par \pard\plain \widctlpar \f4\fs20 In order to fully interpret every detail of this section's contents, you will have to refer to REG.DOC, the modem registry reference documentation. It is usually in this type of modem model-specific AddReg section that customization for specific modem models is accomplished, as well as fine tuning and debugging. \par The general format of a registry line is: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, , , , [ ... ] \par \par \par \pard\plain \widctlpar \f4\fs20 "HKR" specifies that the key is to be added to the modem's software registry key at installation time. specifies a sub-path within the modem's software key. specifies the name of the key to be created. specifies the format of the dat a value(s). "0" or null specifies a string, and "1" means a binary value, specified as a hex string. Note that DWORD values specified in modem INF files are in byte-reversed and word-reversed format. is a value assigned to the key. Note that multiple values can be a ssigned to a key. \par The [All] section is another AddReg section, which appears in all modem INF files. See the modem registry documentation for details about these keys. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [All] \par HKR,,FriendlyDriver,,Unimodem.VXD \par HKR,,DevLoader,,*vcomm \par HKR,,ConfigDialog,,modemui.dll \par HKR, Responses, "OK", 1, 00, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "ERROR", 1, 03, 00, 00,00,00,00, 00,00,00,00 \par \par \par \pard\plain \widctlpar \f4\fs20 Use the [MfgAddReg] section to add registry keys common to all modems for a manufacturer. This section is the "baseline" set of commands and responses which all of a particular manufacturer's modem models use (all of the modem models installed by the INF file, anyway). Any of these commands or responses can be "overwritten" an d changed by subsequent modification of a modem-specific AddReg section as needed. For subsequent modems added to the INF, you should search this section before adding a key to the modem- specific AddReg section. This avoids duplication of registry keys c ommon to all modems by the manufacturer. For this reason, it is wise to make this section reflect the maufacturer's modem model that has the most possible command/response strings, or at least the most "feature rich" command set and response set. The [Mfg AddReg] section from SAMPLE1.INF is shown below: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [MfgAddReg] \par HKR,, InactivityFormat,, "seconds" \par HKR, Init, 1,, "AT" \par HKR, Init, 2,, "AT &F E0 V1 &D2 &C1 W1" \par HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor 2,, "None" \par HKR, Hangup, 1,, "ATH" \par HKR, Answer, 1,, "ATA" \par HKR,, Reset,, "AT&F" \par HKR, Settings, Prefix,, "AT" \par HKR, Settings, Terminator,, "" \par HKR, Settings, DialPrefix,, "D" \par HKR, Settings, DialSuffix,, ";" \par HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor, 2,, "None" \par HKR, Settings, SpeakerVolume_Low,, "L0" \par HKR, Settings, SpeakerVolume_Med,, "L2" \par HKR, Settings, SpeakerVolume_High,, "L3" \par HKR, Settings, SpeakerMode_Off,, "M0" \par HKR, Settings, SpeakerMode_Dial,, "M1" \par HKR, Settings, SpeakerMode_On,, "M2" \par HKR, Settings, SpeakerMode_Setup,, "M3" \par HKR, Settings, FlowControl_Off,, "&K0" \par HKR, Settings, FlowControl_Hard,, "&K3" \par HKR, Settings, FlowControl_Soft,, "&K4" \par HKR, Settings, Modulation_CCITT,, "B0 B15" \par HKR, Settings, Modulation_Bell,, "B1 B16" \par HKR, Settings, SpeedNegotiation_Off,, "N0" \par HKR, Settings, SpeedNegotiation_On,, "N1" \par HKR, Settings, Pulse,, "P" \par HKR, Settings, Tone,, "T" \par HKR, Settings, Blind_Off,, "X4" \par HKR, Settings, Blind_On,, "X3" \par HKR, Settings, CallSetupFailTimer,, "S7=<#>" \par HKR, Settings, InactivityTimeout,, "S30=<#>" \par ; Next is the response section which can be either numeric or verbose \par HKR, Responses, "0", 1, 00, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "1", 1, 02, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "2", 1, 01, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "3", 1, 04, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "4", 1, 03, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "5", 1, 02, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "6", 1, 05, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "7", 1, 06, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "8", 1, 07, 00, 00,00,00,00, 00,00,00,00 \par ; usually additional responses should be added here, consider cutting and pasting \par ; responses from other Windows 95 INFs at this point as a shortcut \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282489}{\*\bkmkstart _Toc342282586}Using Rank 0, Rank 1, and Rank 2 Modem ID Strings{\*\bkmkend _Toc342282489}{\*\bkmkend _Toc342282586} \par \pard\plain \widctlpar \f4\fs20 As stated earlier, probably the most important change you can make to your modem INF file is the placement of your modem ID strings. In the earlier example, the modem ID of the hypothetical Zippy 144 PCMCIA Data Fax Modem was "PCMCIA\\ ZIP-DATAFAX_14.4-77CE" and the modem ID of the Zippy 288 External Data Fax Modem was "UNIMODEMAC9AF91E." These modem ID strings were used in the INF file as shown below: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Manufacturer] \par %Mfg% = Models \par \par [Models] \par %Modem1% = Modem1, PCMCIA\\ZIP-DATAFAX_14.4-77CE \par %Modem2% = Modem2, UNIMODEMAC9AF91E \par \par [Strings] \par ClassName = "Modem" \par Mfg = "Zip" \par Modem1 = "Zippy 144 PCMCIA Data Fax Modem" \par Modem2 = "Zippy 288 External Data Fax Modem" \par \par \pard\plain \widctlpar \f4\fs20 In this example INF, the modem ID strings are used as Rank 0 strings. However, there are Rank 1 and Rank 2 uses of modem ID strings and this topic describes how to use those. (For a definition of Rank 0, Rank 1, and Rank 2 modem ID strings, see the topic "Rank 0, Rank 1, and Rank 2 ID Differences.") \par These are the types of modem ID strings that can be obtained from modems: \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Modem ID String Type \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Example \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Unimodem ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 UNIMODEMAC9AF91E \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Serenum PNP Hardware ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 SERENUM\\PPI1907 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ISAPNP Hardware ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ISAPNP\\ SSC0001_DEV0002 (long form) or SSC0002 (short form) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 ISAPNP Compatible ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 *PNPB003 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 PCMCIA PNP modem ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 PCMCIA\\RIPICAB-RC144ACL-3BD0 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Parallel port modem ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 LPTENUM\\MICROCOMTRAVELPORTE_1FF4 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Platform modem ID \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 BIOS\\*PNPC003 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Note that two or three types of modem ID strings can be obtained from a single modem model. For example, from an ISA Plug and Play modem, you might be able to obtain a unimodem ID, an ISAPNP hardware ID, and an ISAPNP compatible ID. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282490}{\*\bkmkstart _Toc342282587}General Strategies for Using Modem ID Strings{\*\bkmkend _Toc342282490}{\*\bkmkend _Toc342282587} \par \pard\plain \widctlpar \f4\fs20 The primary and best strategy for using modem ID strings in your INF file is to include every type of ID string you can obtain from the modem, using the tools described in "Using Tools to Obtain Modem ID Strings from Modems." Then test the modem after it is installed with the INF file and if everything works as you want, you have a workable strategy. So, for example, if your modem is a Plug and Play ISA modem, you would include three different modem ID strings in your INF: the ISAP NP HardwareID, the ISAPNP Compatible ID string (if one can be obtained from this particular modem), and the Unimodem ID string. \par The above strategy is the most robust strategy because: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab It helps eliminate duplicate enumeration. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab It increases the likelihood the modem will install properly. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282491}{\*\bkmkstart _Toc342282588}More Precise Strategies for Using Modem ID Strings{\*\bkmkend _Toc342282491}{\*\bkmkend _Toc342282588} \par \pard\plain \widctlpar \f4\fs20 However, some alternate strategies might be used. Some examples of alternate strategies follow: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A PNP HardwareID string uniquely identifies a particular manufacturer's ISAPNP modem model. If no other manufacturer builds a compatible model (in other words, you do not OEM the modem) and you do not foresee building future revisions of the modem (by releasing essentially the same modem with ROM revisions), then the only type of modem ID string you need to put into your INF file is the ISAPNP HardwareID string. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If you are writing an INF for an ISAPNP modem model and you cannot foresee whether you will OEM it or release revisions over time, then use only the PNP CompatibleID in your INF file. If the modem installs properly, never use the PNP HardwareID obtained from the modem in your INF file. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If your modem is a Plug and Play modem and does not depend on any real-mode drivers, then do not use the Unimodem ID in your INF file. You should put the Unimodem ID in the INF file for PNP PCMCIA devices because users of your PCMCIA modem may want to or need to use real-mode socket services drivers for PCMCIA devices. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282492}{\*\bkmkstart _Toc342282589}Rank 0, Rank 1, and Rank 2 ID Differences{\*\bkmkend _Toc342282492}{\*\bkmkend _Toc342282589} \par \pard\plain \widctlpar \f4\fs20 Rank 0 modem ID strings are used by the Windows 95 Plug and Play system as hardware IDs. Rank 1 modem ID strings are used as compatible IDs. Using Rank 0 and Rank 1 syntax has user interface implications during a modem install which are listed below. \par The syntax of the INF item that uses modem ID strings is: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 = , , , \par \par \pard\plain \widctlpar \f4\fs20 You can use a hardware ID alone or a compatible ID alone. The Rank 2 ID is seldom used; the use of a Rank 2 ID is described below. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If you use a hardwareID and the installer finds a match on that hardware ID, that is considered an exact (best match) and the user is never prompted before the installation takes place. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If you use only a compatibleID and the installer finds one or more matches, the user is always prompted to pick the best of an acceptable lot. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The rank of a modem ID string in an INF is always indicated by the number of commas in the INF item that contains the modem ID string. For example, in the example INF file listing in the prev ious section, there are two Rank 0 ID strings: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Microsoft] \par ; See INF documentation for additional information on this section. \par ; This is the list of modems that will appear in the Install New Modem wizard's list \par ; of modems for this manufacturer. \par %Modem1% = Modem1, PCMCIA\\RIPICAB-RC144ACL-3BD0 \par %Modem2% = Modem2, UNIMODEME9DF4BA4 \par \par \pard\plain \widctlpar \f4\fs20 Rank 0 ID strings are considered unique and are automatically installed by Windows 95 autodetection or enumeration. Below is an example Rank 0 ID from an INF file. Note the single comma. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Reveal1% = Rockwell20, UNIMODEM8CF33BE4 \par \par \pard\plain \widctlpar \f4\fs20 Rank 1 ID strings indicate an exact ID match with some other modem. In other words, the same ID appears elsewhere in the same INF or in another Windows 95 modem INF. It is important to note that whenever Rank 1 ID strings are found in several modems it is likely that a single R ank 0 ID has been created in one of the Windows 95 INF files to attempt an automatic install. It is imperative that any new ID be checked against all other Windows 95 modem INFs. A simple file text search or Grep tool can search all modem INFs for matches . \par Below is a Rank 1 ID example. Note the double comma structure. As an aside, the string "Rockwell_Reavea1" is provided to preserve a Rank 0 "placeholder" ID whenever upgrades are done in a Windows 95 machine. That "placeholder ID", which is obviously a no n-existent device ID, is usually built by using the filename of the INF and the modem name between the percent signs. For the moment, simply notice the double comma structure which indicates Rank 1 designation. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Reveal1% = Rockwell20, Rockwell_Reavea1, UNIMODEM8CF33BE4 \par \par \pard\plain \widctlpar \f4\fs20 Rank 2 ID strings are used sparingly and likewise designate exact match ID strings and further allow a user to select from a pick list when two modems share dissimilar command sets or responses. Below is an example from MDMUSRWP.INF. N ote the triple comma structure. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Modem3b% = Modem3b, USRWP_Modem3b,,PCMCIA\\INTEL-MODEM_2400+-9E9E \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282493}{\*\bkmkstart _Toc342282590}Resolving Rank 1 ID Matches{\*\bkmkend _Toc342282493}{\*\bkmkend _Toc342282590} \par \pard\plain \widctlpar \f4\fs20 Below are INF entries which illustrate how to resolve a common situation: two modems share the same ID string: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [ControlFlags] \par ExcludeFromSelect=PCMCIA\\MEGAHERTZ-CC3144-4ADE \par \par [Models] \par %Modem3% = Modem3, PCMCIA\\MEGAHERTZ-CC3144-4ADE" \par %Modem2% = Modem2, MDMROCK_Modem2, PCMCIA\\MEGAHERTZ-CC3144-4ADE \par %Modem1% = Modem1, MDMROCK_Modem1, PCMCIA\\MEGAHERTZ-CC3144-4ADE \par \par \pard\plain \widctlpar \f4\fs20 In the above example two modems share the same ID. This can happen with any ID type but is most commonly seen with Unimodem legacy ID strings. Here is a workaround for this example: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Make both modems rank 1 per above (double comma entries). \par \tab 2\tab Create a new Rank 0 entry for a combined ID, in this case modem3. \par \tab 3\tab Note that the new entry is rank zero (one comma). \par \tab 4\tab Create a special control flag section with the ExcludeFromSelect syntax as above. This will hide the rank 0 modem from visibility in any GUI or control panel displays but allow installation \par \tab 5\tab Create installation sections as needed for Modem3. \par \tab 6\tab Create or modify a string section for Modem3 with a generic model name, perhaps "28.8 Data Fax modem." \par \tab 7\tab Create an [AddReg] section in your INF file for modem 3 which uses the LOWEST COMMON DENOMINATOR of commands which BOTH modems can use assuming automatic installation would happen of EITHER modem. If few commands can be shared (which is unlikely) it ma y be necessary to have this rank 0 modem entry simply be a generic modem entry in MDMGEN.INF which can usually be safely shared by both modems because it uses very few initialization commands. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The purpose of the ExcludefromSelect entry in the [ControlFlags] section is to prevent a user from being able to select the "generic combination" entry manually from a pick list. The above scheme allows both automatic installation of conflicting modems sh aring identical modem ID strings, but also allows for manual installation of modems by name. \par A variant of this situation: two modems are found to share the same ID. However one is external and one is internal modem. Which icon profile should be used for the rank 0 entry? In this case use external. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282494}{\*\bkmkstart _Toc342282591}Testing Dual Rank 0 and 1 Entries{\*\bkmkend _Toc342282494}{\*\bkmkend _Toc342282591} \par \pard\plain \s23\li30\ri30\sl-80\slmult0\keepn\widctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s17\sb40\sl-238\slmult0\keepn\widctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 Important: To determine whether there is a modem INF file that uses your modem ID string in a Rank 0 position, search all the Mdm*.inf files in \\Windows\\ Inf for your modem ID string, using a Grep-like tool. You must make sure that your modem ID string is unique before you use it as a Rank 0 ID i n your INF. If you find your modem ID is being used as a Rank 0 ID in another modem INF, you must use your modem ID as a Rank 1 ID. \par \pard\plain \s20\li30\ri30\sa40\sl-140\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \widctlpar \f4\fs20 If you decide to use a Rank 1 modem ID string in your INF file, you may have to do some extra work when you test your INF file with Windows 95. If there is a modem INF file in the \\Windows\\ Inf subdirectory that uses the same modem ID as a Rank 0 ID, use the following procedures to guarantee you test the installation of your modem with both INF files. Different procedures are used for non-Plug and Play modems as opposed to Plug and Play or PCMCIA modems. \par \pard\plain \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 Installing and Testing Non-Plug and Play Modems \par \pard\plain \widctlpar \f4\fs20 Suppose your INF file is named MDMMINE.INF and contains the following Rank 1 entry: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Modem1% = Modem1,, UNIMODEMD9C98361 \par \par \pard\plain \widctlpar \f4\fs20 Suppose also that you found another INF file in \\Windows\\Inf named MDMOTHER.INF that contains the following Rank 0 entry: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Modem13% = Modem13, UNIMODEMD9C98361 \par \par \pard\plain \widctlpar \f4\fs20 You must install and test your modem with both of these INF files. You can do this by turning the auto-detection feature on and off in the Add New Modem wizard dialog. \par \pard\plain \s23\li30\ri30\sl-80\slmult0\keepn\widctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s17\sb40\sl-238\slmult0\keepn\widctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 Note: To run the Add New Modem wizard, select Start:Settings:Control Panel and double-click the Modem icon. On the Modem Properties panel, click the Add button. That starts the Add new Modem wizard. On the first wizard dialog box, you can toggle the auto- detection feature using the check box labeled "Don't detect my modem; I will select it from a list." \par \pard\plain \s20\li30\ri30\sa40\sl-140\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \widctlpar \f4\fs20 Continuing with the two example INF files for non-Plug and Play modems, MDMMINE.INF (which has the Rank 1 entry) and MDMOTHER.INF (which has the Rank 0 entry), use the following procedure to test both INF files: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab To install your modem using MDMOTHER.INF, use the Add New Modem wizard with the check box mentioned above turned off (unchecked). \par \tab 2\tab When you done testing the MDMOTHER.INF installation, remove your modem from the Control Panel. \par \tab 3\tab To install your modem using MDMMINE.INF, use the Add New Modem wizard with the check box turned on (checked) and then test that installation. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 Testing PCMCIA and Plug and Play Modems \par \pard\plain \widctlpar \f4\fs20 Suppose your INF file for your PCMCIA modem is named MDMMINE.INF and contains the following Rank 1 entry: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Modem1% = Modem1,, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \widctlpar \f4\fs20 Suppose also that you found another INF file in \\Windows\\Inf named MDMOTHER.INF that contains the following Rank 0 entry: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 %Modem4% = Modem4, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \widctlpar \f4\fs20 This sort of thing can happ en if you and another manufacturer are OEMs using a PC card chip set from the same chip set manufacturer and neither OEM changes the tuples the chip set manufacturer built into the PC card. If you do not (or cannot) change the tuples on your PC card, then you must install and test your modem with both of these INF files. Unlike non-Plug and Play modems, you cannot do this by turning the auto-detection feature on and off in the Add New Modem wizard dialog. Here is the procedure to use for PCMCIA cards: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install your PC card modem and start the system; this will cause Windows 95 to install your modem using MDMOTHER.INF (which has the Rank 0 modem ID). \par \tab 2\tab When you are done testing your modem with the MDMOTHER.INF installation, edit MDMOTHER.INF and change the Rank 0 entry to a comment by putting one or more semicolons in front of the entry. For example, change the Rank 0 entry from \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 %Modem4% = Modem4, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \s50\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 to \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 ;;%Modem4% = Modem4, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 3\tab Next, edit the Rank 1 entry in MDMMINE.INF to change it to a Rank 0 entry. For example, change the Rank 1 entry from \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 %Modem4% = Modem4,, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \s50\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 to \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 %Modem4% = Modem4, PCMCIA\\GENERIC__-14.4_MODEM/FAX_-D900 \par \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 4\tab With your PC card modem physically installed, restart the system. This will cause the system to install your modem using MDMMINE.INF. \par \tab 5\tab When you are done testing the MDMMINE.INF installation of the modem, edit the two INF files to restore the original Rank 0 and Rank 1 entries. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 If your modem is a Plug and Play modem (ISAPNP or SERENUM) and you use a Rank 1 modem ID, the probability you will find a modem INF file in the \\Windows\\ Inf subdirectory that uses the same modem ID in a Rank 0 entry is quite low. However, you must always check for the possibility using a Grep-like tool. If you do find such a case, to test both INF files use the same procedure that is shown above for PCMCIA modems. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282495}{\*\bkmkstart _Toc342282592}Using PosDup and NoResDup INF Sections{\*\bkmkend _Toc342282495}{\*\bkmkend _Toc342282592} \par \pard\plain \widctlpar \f4\fs20 Plug and Play modems can be installed improperly and produce duplicate entries in the Modem Control Panel (two instances of the same modem). Add sections called PosDup and NoResDup to your PnP modems to prevent this. \par If you are writing an INF file for a one-manufacturer, one-model modem device, there is no reason to put a PosDup or NoResDup section in the first draft of your INF file. If you run into duplicate installation problems during testing the installation of y our modem, consider adding these sections to your INF file to fix the problem. \par Some parallel port driven modems use LPTENUM PNP ID strings. For those devices generally no fix is required along the lines of NoResDup or PosDup. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282496}{\*\bkmkstart _Toc342282593}Comparing PosDup and NoResDup Sections{\*\bkmkend _Toc342282496}{\*\bkmkend _Toc342282593} \par \pard\plain \widctlpar \f4\fs20 Both PosDup and NoResDup sections end of doing the same thing if in an INF file for your modem. If a devnode for the device identified in the PosDup or NoResDup section is found in the devnode tree, the contents of that node are deleted and ins tallation of your device is completed (the INF file is run to completion). In other words, use a PosDup or a NoResDup section in your INF to "get rid of the old device and install the new device." \par Differences between PosDup and NoResDup are: \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Difference 1\cell Difference 2 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 NoResDup \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Operation described above is done arbitrarily, no questions asked. \cell Simply finding a devnode for the device identified in the NoResDup section triggers the operation described above. If you put a NoResDup section in your INF fil e, this check is always made. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 PosDup \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Resource duplication described above is done only if resources used by two devices are in conflict. \cell Operation described above is triggered only if Configuration Manager detects a resource conflict. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The PosDup section is intended for the following scenario: When the user installs first Windows 95, a legacy internal modem in the machine and it is autodetected and its resources are entered in the comm port devnode (*PNP500); then enumeration comes alon g as second ste p in Windows 95 installation but this enumeration step causes no problems. Later the user gets a new internal modem and INF file, turns off the machine, installs the new internal modem, and restarts machine. Enumeration takes place and discovers the new m odem. If there is a PosDup section in your the file that names *PNP500 then the enumerator will check *PNP500 for resource conflict and if it finds it deletes the contents of the old devnode before creating a new one for your modem. Be sure to test your I NF using this scenario. \par When Windows 95 is first installed, autodetection is done followed by enumeration. On subsequent restarts of Windows 95, only enumeration is done. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282497}{\*\bkmkstart _Toc342282594}How PosDup Sections Work{\*\bkmkend _Toc342282497}{\*\bkmkend _Toc342282594} \par \pard\plain \widctlpar \f4\fs20 PosDup is an abbreviation for "possible duplicate." PosDup sections are used to prevent more than one installation of your modem. An example PosDup section from an INF file is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Modem12.PosDup] \par *PNP0500 \par \par \pard\plain \widctlpar \f4\fs20 In this example, "Modem12" refers to the name of a modem in the Install section of the INF and "*PNP0500" refe rs to the node of the devnode tree for the serial port. This example PosDup section instructs the Windows 95 device installer to perform an extra step when it is running the script in the Install section of your INF file. When it encounters the Install se ction item that installs Modem12, the installer checks the serial port node of the devnode tree to see if that modem is currently installed. If it is, the installer deletes the existing devnode and runs the rest of the Modem12 Install section script to re build the devnode. This prevents a duplicate installation. \par Examples usages of PosDup sections in modem INF files are shown below. To see other examples, search all existing Windows 95 INF files for "PosDup." \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282498}{\*\bkmkstart _Toc342282595}Using PosDup with ISAPNP Modems{\*\bkmkend _Toc342282498}{\*\bkmkend _Toc342282595} \par \pard\plain \widctlpar \f4\fs20 For ISAPNP modems the following commented changes are indicated. The changes are quite different than those used for a Serenum modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 ; Use PosDup and PNP ID, PosDup means possible duplicate \par ; *PNP0500 generally is a standard fixed devnode entry \par [Modem12.PosDup] \par *PNP0500 \par \par [Models] \par %Modem12% = Modem12,, UNIMODEM6A25C644 \par %Modem12% = Modem12, ISAPNP\\BRI0A49_DEV0000 \par \par ; The strings section is not generally modified for ISAPNP modems \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282499}{\*\bkmkstart _Toc342282596}Using PosDup with Multiple PnP Devices{\*\bkmkend _Toc342282499}{\*\bkmkend _Toc342282596} \par \pard\plain \widctlpar \f4\fs20 Some modems have several PNP devices. For example some modems contain both a DMA channel speakerphone device and a modem. Each device has its own PNP ID. If the device has no defined driver or resource in Win95 (in this case the DMA speakerphone device), place the second or additional unused modem ID strings in a special INF called NODRIVER.INF which effectively makes that "driverless device" accounted for in the Windows 95 registry. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Boca] \par %*BRI0200.DeviceDesc%=NODRIVER,*BRI0200 \par [NODRIVER] \par [ControlFlags] \par ExcludeFromSelect=*BRI0200 \par \par [Strings] \par Msft="Microsoft" \par NoneName="Other detected devices" \par BocaMfg="Boca Research" \par *BRI0200.DeviceDesc="Boca Complete Office Communicator (Audio)" \par \par [Modem12.PosDup] \par *PNP0500 \par %Modem12% = Modem12,, UNIMODEM6A25C644 ; Boca Complete Office Communicator \par %Modem12% = Modem12, ISAPNP\\BRI0A49_DEV0000 ; Boca Complete Office \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282500}{\*\bkmkstart _Toc342282597}Uses of ExcludeFromSelect Items in [ControlFlags] Sections{\*\bkmkend _Toc342282500}{\*\bkmkend _Toc342282597} \par \pard\plain \widctlpar \f4\fs20 If you use ExcludeFromSelect entries in your INF file, the name of your modem is excluded from the Select Device dialog during modem installation, as well as all other user interfaces. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If your modem is a daughter device on a multifunction card, use ExcludeFromSelect to exclude it from the Select Device dialog be cause you want the user to select the ID that is the multifunction card itself. This is primarily what ExcludeFromSelect entries in INF files are designed to do. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If your modem is a Plug and Play modem, is not on a multifunction card, and you are creating an INF for an installation diskette that will be shipped with the modem, do not use ExcludeFromSelect if your modem ID string is a Rank 0 ID. When you examine th e modem INFs in the \\Windows\\Inf subdirectory, you will fi nd ExcludeFromSelect used with Rank 0 modem IDs; the Plug and Play system will detect and install your modem without ever displaying the Select Device dialog to the user. This is a different case than creating an INF for an installation diskette. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If your modem is not a Plug and Play modem, use the ExcludeFromSelect item with care in your modem INF because you usually want the user to select your modem from the Select Device dialog. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Note that using ExcludeFromSelect in the multifunction card case does not exclude your daughter modem device from the Device Manager dialogs the users may employ to change a device driver for a daughter device. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282501}{\*\bkmkstart _Toc342282598}How NoResDup Sections Work{\*\bkmkend _Toc342282501}{\*\bkmkend _Toc342282598} \par \pard\plain \widctlpar \f4\fs20 NoResDup is an abbreviation for "no resource duplication." NoResDup sections are used to override the previous installation of a compatible modem. An example NoResDup section from an INF file is shown below, along with the Install section: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Modem24.NoResDup] \par UNIMODEMC5D7521C, UNIMODEM7750BAAF, UNIMODEM705078AF \par \par ; Modem has two entries: one for serenum ID and one for the unimodem ID \par [Models] \par %Modem41PNP% = Modem24, SERENUM\\PPI1907 ; PC288LCD V.34 \par %Modem41% = Modem24, UNIMODEMC5D7521C ; PC288LCD V.34 \par \par \pard\plain \widctlpar \f4\fs20 In this example, "Modem24" refers to the name of a modem in the Install section of the INF and the Unimodem ID of three modems that use equivalent resources are listed. \par This example NoResDup section instructs the Windows 95 device installer to perform an extra step when it is running the script in the Ins tall section of your INF file. When it encounters the Install section item that installs Modem24, the installer checks the devnode tree to see if a modem is currently installed with any of the modem ID strings listed in the NoResDup section are currently installed. If one is, the installer completely replaces it by running script in the Install section for Modem24. \par An example usage of a NoResDup section in a modem INF file is shown below. To see other examples, search all existing Windows 95 INF files for "NoResDup." \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282502}{\*\bkmkstart _Toc342282599}Using NoResDup with Serenum PnP Modems{\*\bkmkend _Toc342282502}{\*\bkmkend _Toc342282599} \par \pard\plain \widctlpar \f4\fs20 For Serenum PnP modems the following commented INF section illustrate the technique. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 ; Below, exclude generic friendly strings from pick list \par [ControlFlags] \par ExcludeFromSelect=SERENUM\\PPI1907 ; PC288LCD V.34 PNP \par \par ; Three unimodem ID strings appear below, generally use all applicable \par ; modem ID strings installed by modem24. \par ; Notice that commas separate each ID - this is the only format allowed \par [Modem24.NoResDup] \par UNIMODEMC5D7521C, UNIMODEM7750BAAF, UNIMODEM705078AF \par \par ; Provide all possible legacy ID strings (using Modem24 install) \par ; appearing in this INF \par ; Modem has two entries: one for serenum ID and one for the \par ; unimodem ID \par [Models] \par %Modem41PNP% = Modem24, SERENUM\\PPI1907 ; PC288LCD V.34 \par %Modem41% = Modem24, UNIMODEMC5D7521C ; PC288LCD V.34 \par \par [Strings] \par Mfg = "Practical Peripherals" \par odem41PNP="Practical Peripherals PC288LCD V.34 Plug & Play" \par Modem41="Practical Peripherals PC288LCD V.34" \par \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282503}{\*\bkmkstart _Toc342282600}Testing NoResDup and PosDup Sections{\*\bkmkend _Toc342282503}{\*\bkmkend _Toc342282600} \par \pard\plain \widctlpar \f4\fs20 If your modem is a Plug and Play modem and you used NoResDup or PosDUp sections in your INF file to guarantee that your modem is not installed twice, then you must test this with at least the following test scenarios: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Normal enumeration. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Enumeration followed by autodetection. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Autodetection followed by enumeration. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 If your modem can be installed using all three of these procedures, and there are no duplicate installations of your modem, then the NoResDup and PosDup sections in your INF file are working correctly. \par \pard\plain \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 Checking Normal Enumeration \par \pard\plain \widctlpar \f4\fs20 To check that your NoResDup or PosDup sections do not interfere with normal enumeration, do the following: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install your Plug and Play modem. \par \tab 2\tab Force enumeration by either shutting down the computer and then restarting it (cold boot) or click the Refresh button in the Device Manager. \par \tab 3\tab Check the Control Panel or Device Manager to make sure your modem has been installed only once. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 Checking Enumeration Followed By Auto-Detection \par \pard\plain \widctlpar \f4\fs20 Once you are sure your modem INF file passes the normal enumeration scenario without duplicate installation, run the following test procedure: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install your Plug and Play modem. \par \tab 2\tab Force enumeration by either shutting down the computer and then restarting it (cold boot) or click the Refresh button in the Device Manager. \par \tab 3\tab Run the Add New Modem wizard from the Control Panel, using the auto-detection option. \par \tab 4\tab Check the Control Panel or Device Manager to make sure your modem has been installed only once. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s23\li30\ri30\sl-80\slmult0\keepn\widctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s17\sb40\sl-238\slmult0\keepn\widctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 Note: In some cases, even though you are using PosDup or NoResDup sections correctly in your modem INF file, enumeration followed by auto-detection will produce a duplicate modem entry in the Control Panel. This will be fixed in future Windows 95 releases . \par \pard\plain \s20\li30\ri30\sa40\sl-140\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s4\sb60\sa40\sl-280\slmult0\keepn\widctlpar \b\f16 Checking Auto-Detection Followed By Enumeration \par \pard\plain \widctlpar \f4\fs20 Once you are sure your modem INF file passes both the normal enumeration and the enumeration followed by auto-detection scenarios without duplicate installation, run the following test procedure: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Physically install your Plug and Play modem. \par \tab 2\tab Restart the computer. \par \tab 3\tab Check the Control Panel to see if restarting the computer caused enumeration to use your INF file to install your modem. If so, use the Control Panel to remove your modem. \par \tab 4\tab Run the Add New Modem wizard from the Control Panel, using the auto-detection option. \par \tab 5\tab Once the Add New Modem wizard is done, enumeration is always run automatically, so no specific action is required of you to achieve the auto-detection followed by enumeration sequence. \par \tab 6\tab Check the Control Panel or Device Manager to make sure your modem has been installed only once. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282504}{\*\bkmkstart _Toc342282601}OPTIONAL Step 3 -- Adding FAX Support{\*\bkmkend _Toc342282504}{\*\bkmkend _Toc342282601} \par \pard\plain \widctlpar \f4\fs20 The Microsoft Fax modem drivers and T.30 protocol engine use several registry entries settings to control their behavior. These settings are determined the f irst time the fax software is run, using a combination of the following techniques: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Querying the modem for capabilities. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Querying the modem to get an ID, and then using this ID to look up an internal table. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab And, new to Windows 95, reading the unimodem INF section for the particular modem installed. If an entry is present in the INF section, it overrides information obtained via the previous two methods. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 This section describes how add fax entries to the modem's INF file, lists the major known incompatibility problems (and their workarounds, when available), and documents a fax communications I/O logging facility that is useful for troubleshooting modem-re lated problems. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282505}{\*\bkmkstart _Toc342282602}Adding a Fax Entry to a Unimodem INF file{\*\bkmkend _Toc342282505}{\*\bkmkend _Toc342282602} \par \pard\plain \widctlpar \f4\fs20 Most of the registry entries used by the Microsoft Fax drivers and the T.30 engine may be specified in the modem's INF file. These entries are documented in REG.DOC, under the FAX Sectio n. It is important to note that over 95% of the modems tested by the Microsoft Fax group do not need any fax unimodem entries in the INF file. In other words, the fax entries should only be specified to fix known incompatibilites with Windows 95 or NT-SUR fax. This especially important to keep in mind because the Microsoft fax drivers in future versions of Windows will be better integrated into the unimodem architecture, and will make use of more of the data modem INF information. \par All fax INF entries should have the following form: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, Fax, , \par \par \pard\plain \widctlpar \f4\fs20 For example, \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, Fax, SetupCommand,, "ATS7=255&D3S34=1" \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282506}{\*\bkmkstart _Toc342282603}Known Fax Problems{\*\bkmkend _Toc342282506}{\*\bkmkend _Toc342282603} \par \pard\plain \widctlpar \f4\fs20 This section lists major known incompatibility problems. Workarounds for many of these problems involve specifying one more fax entries (for example, ResetCommand). These entries are documented in REG.DOC, under the FAX section. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282507}{\*\bkmkstart _Toc342282604}Modem Initialization{\*\bkmkend _Toc342282507}{\*\bkmkend _Toc342282604} \par \pard\plain \widctlpar \f4\fs20 The most common initialization problem is that fax uses the wrong command for S/W flow control. The process fa x uses for determining the reset and setup commands is described under the documentation of the fax registry keys, and in particular the ResetCommand and SetupCommand entries, in REG.DOC. \par Windows 95 and NT-SUR issue the ResetCommand string before every answer. This causes problems with certain modems, because these modems return ERROR in response to ATA if they have a zero internal ring count (which they do immediately after issuing the de fault reset string). Microsoft will fix this in the next version of NT and Nashville. \par Most of these problems can be fixed on a per-modem basis by appropriately overriding the ResetCommand and SetupCommand entries via the modem's INF file. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282508}{\*\bkmkstart _Toc342282605}Choosing Modem Class{\*\bkmkend _Toc342282508}{\*\bkmkend _Toc342282605} \par \pard\plain \widctlpar \f4\fs20 Some modems advertise, but do not properly support, Class1. You can fix this using the FixModemClass INF item, as documented in REG.DOC under the section FAX. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282509}{\*\bkmkstart _Toc342282606}Class 1: FCS Checking{\*\bkmkend _Toc342282509}{\*\bkmkend _Toc342282606} \par \pard\plain \widctlpar \f4\fs20 All HDLC frames end in a 2 byte CRC Frame Check Sequence (FCS). The modem calculates the CRC of the packet and compares it with the va lue of the FCS received to determine if the packet was received correctly. According to the T30 specification the received FCS is passed on to the communications software at the end of the frame, followed by an OK or an error message. The software can the oretically ignore the FCS, as the modem checks it before reporting OK. \par In reality, modems handle the FCS and status reporting differently. Some modems act according to the specification, some pass an invalid FCS, some do not pass on the FCS, and some report errors even on good packets. \par Windows 95 fax requires the modem to supply a valid FCS bytes, or no FCS bytes. If the modem supplies incorrect FCS bytes, fax will still work in most cases. However, for the Non-Standard Facilities (NSF, or NSX) frames, inclusion of the additional bytes can cause the frame to be rejected. The NSF functions are written to assume that 2 FCS bytes are appended to the data and removes them before parsing the NSF frames. If parsing fails, it adds the removed bytes back on and att empts to parse again. If this fails, then the NSF frame is considered invalid. The net effect of this is that BFT capability does not work for this modem. \par The fix for this problem requires a Windows 95 QFE fix for components AWFXIO32.DLL and AWCL1_32.DLL (Version 4.0.0.951). This problem will be fixed in NT-SUR and in the next version of Windows 9x. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282510}{\*\bkmkstart _Toc342282607}Class 1 NSF frame transmission{\*\bkmkend _Toc342282510}{\*\bkmkend _Toc342282607} \par \pard\plain \widctlpar \f4\fs20 Some modems do not transmit 0x11 and 0x13 if present in V.21 frame FIF. Some modems truncate long frames (>20 byte FIF). These problems cannot be fixed in the software - modem manufacturers need to fix these problems via firmware revisions and in their newer models. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282511}{\*\bkmkstart _Toc342282608}Class 2: Byte-order{\*\bkmkend _Toc342282511}{\*\bkmkend _Toc342282608} \par \pard\plain \widctlpar \f4\fs20 Different modems interpret AT+FBOR differently. The Class2 driver utilizes an internal table, but the behavior can also be controlled by using the Cl2SendBOR, RecvBOR and Cl2SWBOR INF items, as documented in REG.DOC in the FAX section. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282512}{\*\bkmkstart _Toc342282609}Class 2: Answer Time-out{\*\bkmkend _Toc342282512}{\*\bkmkend _Toc342282609} \par \pard\plain \widctlpar \f4\fs20 Windows 95 shipped with a answer time out (time out waiting for a response to the ATA command) of 16 seconds. This is too small. \par The QFE fix requires version 4.0.0.951 of file AWCL2_32.DLL. The fix changes the time out to 35 seconds. This problem will be fixed in the NT-SUR and in future versions of Windows 9x. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282513}{\*\bkmkstart _Toc342282610}Fax Driver Comm I/O Logging{\*\bkmkend _Toc342282513}{\*\bkmkend _Toc342282610} \par \pard\plain \widctlpar \f4\fs20 The Win32 versions of the Microsoft Extended Fax Software can generate a time-stamped log of all communications activity generated by the fax drivers. This logging is e nabled by default in the debug builds and disabled by default in the retail builds. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282514}{\*\bkmkstart _Toc342282611}Overview of Comm Logging{\*\bkmkend _Toc342282514}{\*\bkmkend _Toc342282611} \par \pard\plain \widctlpar \f4\fs20 Information is logged to memory, and dumped to a file (C:\\FAX0.MON by default), when releasing the port. On Win95, with TAPI, this occurs after each call is complete. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282515}{\*\bkmkstart _Toc342282612}Configuring Comm Logging{\*\bkmkend _Toc342282515}{\*\bkmkend _Toc342282612} \par \pard\plain \widctlpar \f4\fs20 Utility DLL AWMCFG32.DLL, included in the TOOLS section of the MDK, lets you configure communications logging via the Advanced Modem Properties dialog box of the fax status application. Place this DLL in the \\WINDOWS\\ SYSTEM directory. \par If this DLL is unavailable, the following information can be used to manually edit the registry to enable logging. \par Logging is configured via registry entries, which are all of type REG_SZ, and stored under HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\At Work Fax\\Local Modems\\General. The entries are documented below. \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Name \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Default \cell Comments \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 MonitorComm \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0 \cell 1 enables logging. [Default is 1 for the debug build.] \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 MonitorBufSizeKB \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 64 \cell Size of memory buffer in Kbytes. Maximum value supported in Win95 is 2000. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 MonitorMaxOldSizeKB \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 64 \cell Maximum existing file size. If the existing file size is greater than this value, the existing file is renamed to OLD.MON, and file logging starts with an empty FAX0.MON. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440 \cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 MonitorDir \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 C:\\ \cell Directory into which the log file is written. Note that log file name is fixed as FAX0.MON. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282516}{\*\bkmkstart _Toc342282613}Viewing the Log File{\*\bkmkend _Toc342282516}{\*\bkmkend _Toc342282613} \par \pard\plain \widctlpar \f4\fs20 Utility Win32 console application DMON.EXE dumps a text version of the file. The current version expects the file to be C:\\FAX0.MON. Alternately, you c an click on the "view log" button in the modified advanced fax modem properties dialog that is enabled when using the AWMCFG32 DLL. The following documentation refers to "output from DMON.EXE" -- this should be interpreted as either the output of the DMON .EXE utility, or the text file that is generated automatically when using the AWCFG32 DLL. \par Following is sample output from the current version of DMON.EXE. The first column is time (with respect to an arbitrary baseline) in minutes:seconds; the second colu mn is elapsed time in seconds (modulo 60 seconds) between end of previous entry and start of current entry; and the third column is whether it is a read or write operation. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 ===== 02/26/1995 15:02:46 Modem Init: Start ===== \par These special "event" entries contain actual date and calendar time, obtained from the SYSTEMTIME structure saved in the log. Event entries are made at the start and end of significant events, such as modem initialization, dialing, and answering. \par 59:57.983 57.983 W AT&FS0=0E0V1Q0. \par Initial timings 59:57.983 and 57.873 are meaningless because the times are measured with respect to an arbitrary baseline. The final '.' is actually a '\\n' (line feed) character. \par 59:58.083 00.050 R E0V1Q0...OK.. \par Log indicates 50ms delay between the end of the previous command and the 1st character of the response. However, be warned that that these timings are based on GetTickCount, which typically has a 50ms resolution. \par 59:58.423 00.040 W AT. \par 59:58.674 00.251 R ..OK.. \par Log indicates a 250ms delay getting the "OK" response to "AT." \par 59:58.714 00.040 W ATI3. \par 59:58.974 00.250 R ..V4.02....OK.. \par 59:59.064 00.040 W ATS7=255&D3&K4. \par 59:59.365 00.251 R ..OK.. \par 59:59.405 00.040 W ATX4S8=2M1L1. \par 59:59.705 00.250 R ..OK.. \par ===== 02/26/1995 15:02:48 Modem Init: End (0x0) ===== \par \par ===== 02/26/1995 15:03:11 Modem Dial ("13939"): Start ===== \par \par 00:23.139 23.434 W AT+FCLASS=1. \par Log indicates 23 seconds has elapsed since the previous command. Be warned that the 2nd column only indicates relative time modulo 60 seconds, so if in doubt check the 1st column. \par 00:23.720 00.581 W AT. \par 00:23.870 00.150 R ..OK.. \par 00:24.070 00.200 W ATDT 13939. \par 00:37.049 12.979 R ..CONNECT.. \par The modem took 13 seconds to respond to the dial command. \par ===== 02/26/1995 15:03:25 Modem Dial: End (0x1) ===== \par \par 00:39.152 02.103 R ff [1] \par This entry is in "hex display mode" (see below). Log indicates one byte, 0xff , was read. In this case it is the first byte of the DIS frame from the remote machine. \par 00:39.152 00.000 R 03 [1] \par .... etc .... \par \par \pard\plain \widctlpar \f4\fs20 DMON.EXE does not print all the information in the log and, for enhancing readability, collapses multiple read log entries into a single entry in cases when it believes the modem is in command mode. For example, the modem driver reads response "\\r\\nOK\\ r\\n" one character at a time, and makes a time stamped log entry for each character read. DMON.EXE collapses all these entries into a single entry and displays it as follows: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 00:23.870 00.150 R ..OK.. \par \par \pard\plain \widctlpar \f4\fs20 Note that it displays both '\\r' and '\\n' as '.'. \par If DMON.EXE does not believe the modem is in command mode, it displays bytes read/written in "hex mode". In this mode, it displays only as many bytes as can fit one 80-character line, and follows that with the actual number of bytes, in brackets, for exam ple: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 33:40.692 00.000 W ff 03 43 20 20 20 20 20 34 31 30 36 20 ... [23] \par \par \pard\plain \widctlpar \f4\fs20 DMON.EXE creates a second file, DMON.OUT, which is simply a dump of every byte written-to or read-from the port. \par A final caveat is that the timestamp s in the log are generated at the time the appropriate Win32 comm function was called to read or write data, not the time at which the data was actually written to or read from the physical serial port. If there is a significant delay between these two ti mes, it indicates a problem with the comm drivers. The only way to verify these delays is to use a serial analyzer. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282517}{\*\bkmkstart _Toc342282614}OPTIONAL STEP 4 -- Adding Voiceview Support{\*\bkmkend _Toc342282517}{\*\bkmkend _Toc342282614} \par \pard\plain \widctlpar \f4\fs20 To add VoiceView support for your modem, you will have to make the following changes to your modem INF file sections: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add several items to the Install section. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add an AddReg section that puts your VoiceView modem commands and responses in the registry. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add a CopyFiles section and a DestinationDirs section that copy the VoiceView support files to the appropriate paths on the hard disk. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add an AddReg section that puts information in the registry that integrates the VoiceView components with Windows Sockets. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add items to the [Strings] section. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Add an Update Ini File section and Uninstall section that add and remove VoiceView icons in the Windows 95 Shell. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282518}{\*\bkmkstart _Toc342282615}Modifying the Install Section{\*\bkmkend _Toc342282518}{\*\bkmkend _Toc342282615} \par \pard\plain \widctlpar \f4\fs20 The following items must be added to the INF file section that installs the modem. The section for installing a modem will need to be modified to incorporate the following additions. These additions will modify the registry, copy required files to the appropriate directory, and update folders to support Windows 95 VoiceView functionality. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 AddReg = VoiceView_Modem, VoiceView_Socket \par CopyFiles = VV_Sys, VV_Sock_Sys, VV_App, VV_Help \par UpdateInis = VView.Inis \par Uninstall = VoiceView_remove \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282519}{\*\bkmkstart _Toc342282616}Modifying the AddReg Section(s){\*\bkmkend _Toc342282519}{\*\bkmkend _Toc342282616} \par \pard\plain \widctlpar \f4\fs20 The following section is used instruct Unimodem how to interact with VoiceView properly by adding modem commands and responses to the registry. This section may need to be modified to support a specific modem's capabilities. \par Note also that this new AddReg section must be referenced in an AddReg= item in the Install section (see the topic "Modifying the Install Section" for an example of such an AddReg= item).The command values stored in the keys MonitorVoiceViewOn and Monitor VoiceViewOff are used to toggle the modem in and out of FCLASS=80 when any VoiceVie w application is running, and no other application is actively using the modem. Unimodem will use the MonitorVoiceViewOn key values to put the modem in a state to look for VoiceView start tones. When VoiceView applications close or another non-VoiceView a pplication wishes to use the modem, Unimodem will use the MonitorVoiceViewOff key value to put the modem back into a usable state for those applications. \par The responses section should directly match the VoiceView specification. It may need be necessary to alter or remove parts from this section if a device does not support all of these responses. \par The RunOnce command is used to update the Windows 95 desktop and folders to contain the VoiceView components. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [VoiceView_Modem] \par HKR,, RunOnce,,"grpconv /o" \par HKR,, VoiceView, 1, 01 \par HKR, MonitorVoiceViewOn, 1,, "AT+FCLASS=80" \par HKR, MonitorVoiceViewOn, 2,, "None" \par HKR, MonitorVoiceViewOff, 1,, "AT+FCLASS=0" \par HKR, MonitorVoiceViewOff, 2,, "None" \par \par HKR, Responses, "-SSV", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SMD", 1, 0a, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SFA", 1, 0b, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRA", 1, 0c, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRQ", 1, 0d, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRC:", 1, 0e, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-STO", 1, 0f, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SVM", 1, 10, 00, 00,00,00,00, 00,00,00,00 \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282520}{\*\bkmkstart _Toc342282617}Adding or Modifying the DestinationDirs Section{\*\bkmkend _Toc342282520}{\*\bkmkend _Toc342282617} \par \pard\plain \widctlpar \f4\fs20 If your INF file has a [DestinationDirs] section, add the following items to it. Many modem INF files do not have a [DestinationDirs] directory until VoiceView support is added; in that case, you will have to create a [DestinationDirs] section and put all the following items in it. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [DestinationDirs] \par Register.Copy = 17 ; INF File Directory \par VV_Sys = 11 ; VoiceView System Components \par VV_Sock_Sys = 11 ; Windows Sockets System Components \par VV_App = 10 ; File Transfer Application \par VV_Help = 18 ; File Transfer Help \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282521}{\*\bkmkstart _Toc342282618}Adding CopyFiles Sections{\*\bkmkend _Toc342282521}{\*\bkmkend _Toc342282618} \par \pard\plain \widctlpar \f4\fs20 CopyFiles sections in an INF file copy files from an installation disk to the appropriate paths on the Windows 95 computer hard disk. To add VoiceView support for your modem, you must add the following five CopyFiles-type sections to your modem INF file. Do not change the CopyFiles sections listed below in any way. \par Note also that these new CopyFiles sections must be referenced in a CopyFiles= item in the Install section (see the topic "Modifying the Install Section" for an example of such a CopyFiles= item). \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [VV_Sys] \par fte.dll \par vvexe32.exe \par wsvv.vxd \par \par [VV_Sock_Sys] \par wsock32.dll \par wsock.vxd \par vtdi.386 \par \par [VV_App] \par filexfer.exe \par \par [VV_Help] \par filexfer.hlp \par filexfer.cnt \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282522}{\*\bkmkstart _Toc342282619}Adding an AddReg Section for Windows Sockets{\*\bkmkend _Toc342282522}{\*\bkmkend _Toc342282619} \par \pard\plain \widctlpar \f4\fs20 The following AddReg-type section must be added to your modem INF file so Windows Sockets will recognize the VoiceView transport. \par Note also that this new AddReg section must be referenced in an AddReg= item in the Install section (see the topic "Modifying the Install Section" for an example of such an AddReg= item). \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [VoiceView_Socket] \par HKLM, System\\CurrentControlSet\\Services\\VxD\\Winsock, "VoiceView Winsock Provider",, "wsvv.vxd" \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282523}{\*\bkmkstart _Toc342282620}Adding Items to the [Strings] Section{\*\bkmkend _Toc342282523}{\*\bkmkend _Toc342282620} \par \pard\plain \widctlpar \f4\fs20 The following section should be added or modified to specify the necessary strings. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [Strings] \par APPS_DESC = "Accessories" ; Name of Accessories menu \par StartUp_DESC = "StartUp" ; Startup Group \par SendTo_DESC = "SendTo" ; Name of SendTo folder in the Windows dir \par FileXfer_DESC = "File Transfer" ; Name of file tranfer app in Accessories menu \par SendToPhone_DESC = "Person On Phone" ; Name for file transfer app in SendTo menu \par StartXfer_DESC = "VoiceView Auto Detection" ; Name for auto start feature \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282524}{\*\bkmkstart _Toc342282621}Adding or Modifying the Update Ini File Sections{\*\bkmkend _Toc342282524}{\*\bkmkend _Toc342282621} \par \pard\plain \widctlpar \f4\fs20 The following Update Ini File-type section adds and updates the VoiceView components to the desktop and group folders in the Windows 95 Shell. \par Note also that this new AddReg section must be referenced in an UpdateInis= item in the Install section (see the topic "Modifying the Install Section" for an example of such an UpdateInis= item). \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [VView.Inis] \par setup.ini, progman.groups,, "group4="%APPS_DESC%"" ;creates folder \par setup.ini, group4,, """%FileXfer_DESC%"", filexfer.exe" ;creates link \par setup.ini, progman.groups,, "SendTo=""..\\..\\%SendTo_DESC%""" ;creates folder \par setup.ini, SendTo,,"""%SendToPhone_DESC%"", filexfer.exe" ;create Link to EXE \par setup.ini, progman.groups,, "group1=""%StartUp_DESC%""" ;creates folder \par setup.ini, group1,, """%StartXfer_DESC%"", filexfer.exe /a" ;creates link \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282525}{\*\bkmkstart _Toc342282622}Adding an Uninstall Section{\*\bkmkend _Toc342282525}{\*\bkmkend _Toc342282622} \par \pard\plain \widctlpar \f4\fs20 You must also create an Update Ini File section that removes VoiceView components from Windows 95 when a VoiceView modem is removed or uninstalled from the system. \par Note also that this new AddReg section must be referenced in an Uninstall= item in the Install section (see the topic "Modifying the Install Section" for an example of such an Uninstall= item). \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 [VView.Rem.Inis] \par setup.ini, progman.groups,, "group4=""%APPS_DESC%""" ;creates folder \par setup.ini, group4,, """%FileXfer_DESC%""" ;deletes link \par setup.ini, progman.groups,, "SendTo=""..\\..\\%SendTo_DESC%""" ;creates folder \par setup.ini, SendTo,,"""%SendToPhone_DESC%""" ;deletes link \par setup.ini, progman.groups,, "group1=""%StartUp_DESC%""" ;creates folder \par setup.ini, group1,, """%StartXfer_DESC%""" ;deletes link \par \par [VoiceView_remove] \par UpdateInis = VView.Rem.Inis \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282526}{\*\bkmkstart _Toc342282623}Example Modem INF File That Supports VoiceView{\*\bkmkend _Toc342282526}{\*\bkmkend _Toc342282623} \par \pard\plain \widctlpar \f4\fs20 A fully-function modem INF file that supports VoiceView is included in the MDK; it is named SMPVV.INF. A partial listing of that INF file is shown below. The INF sections shown in the listing are the INF file header, [Manufacturer] section, the Install-type section for one modem, along with the INF sections that support VoiceView. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 ; SMPVV.INF \par ; \par ; This is the INF file for modems supported using generic \par ; VoiceView command set information. \par ; \par ; Copyright 1995, Microsoft Corporation \par \par [Version] \par LayoutFile=layout.inf \par Signature="$CHICAGO$" \par Class=Modem \par Provider=%MS% \par \par [Manufacturer] \par %VoiceView% = VoiceView \par \par [DestinationDirs] \par Register.Copy = 17 ;LDID_INF \par VV_Sys = 11 \par VV_Sock_Sys = 11 ;LDID_SYS \\Windows\\system dir \par VV_App = 10 \par VV_Help = 18 ;LDID_HELP \par \par [VoiceView] \par %VVGen96% = VVGen96, MDMVVGEN96 \par %PNPC110% = PNPC110, *PNPC110 \par \par [VVGen96] \par AddReg = All, GenericAddReg, Gen96Reg, EXTERNAL, VoiceView_Modem, VoiceView_Socket \par CopyFiles = VV_Sys, VV_Sock_Sys, VV_App, VV_Help \par UpdateInis = VView.Inis \par Uninstall = VoiceView_remove \par \par [PNPC110] \par AddReg = All, GenericAddReg, Gen96Reg, EXTERNAL, VoiceView_Modem, VoiceView_Socket \par CopyFiles = VV_Sys, VV_Sock_Sys, VV_App, VV_Help \par UpdateInis = VView.Inis \par Uninstall = VoiceView_remove \par \par [VoiceView_remove] \par UpdateInis = VView.Rem.Inis \par \par [VV_Sys] \par fte.dll \par vvexe32.exe \par wsvv.vxd \par \par [VV_Sock_Sys] \par wsock32.dll \par wsock.vxd \par vtdi.386 \par \par [VV_App] \par filexfer.exe \par \par [VV_Help] \par filexfer.hlp \par filexfer.cnt \par \par [VView.Inis] \par setup.ini, progman.groups,, "group4="%APPS_DESC%"" ;creates folder \par setup.ini, group4,, """%FileXfer_DESC%"", filexfer.exe" ;creates link \par setup.ini, progman.groups,, "SendTo=""..\\..\\%SendTo_DESC%""" ;creates folder \par setup.ini, SendTo,,"""%SendToPhone_DESC%"", filexfer.exe" ;create Link to EXE \par setup.ini, progman.groups,, "group1=""%StartUp_DESC%""" ;creates folder \par setup.ini, group1,, """%StartXfer_DESC%"", filexfer.exe /a" ;creates link \par \par [VView.Rem.Inis] \par setup.ini, progman.groups,, "group4=""%APPS_DESC%""" ;creates folder \par setup.ini, group4,, """%FileXfer_DESC%""" ;deletes link \par setup.ini, progman.groups,, "SendTo=""..\\..\\%SendTo_DESC%""" ;creates folder \par setup.ini, SendTo,,"""%SendToPhone_DESC%""" ;deletes link \par setup.ini, progman.groups,, "group1=""%StartUp_DESC%""" ;creates folder \par setup.ini, group1,, """%StartXfer_DESC%""" ;deletes link \par \par [VoiceView_Socket] \par HKLM, System\\CurrentControlSet\\Services\\VxD\\Winsock, "VoiceView Winsock Provider",, "wsvv.vxd" \par \par [VoiceView_Modem] \par HKR,, RunOnce,,"grpconv /o" \par HKR,, VoiceView, 1, 01 \par HKR, MonitorVoiceViewOn, 1,, "AT+FCLASS=80" \par HKR, MonitorVoiceViewOn, 2,, "None" \par HKR, MonitorVoiceViewOff, 1,, "AT+FCLASS=0" \par HKR, MonitorVoiceViewOff, 2,, "None" \par \par HKR, Responses, "-SSV", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SMD", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SFA", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRA", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRQ", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SRC:", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-STO", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "-SVM", 1, 09, 00, 00,00,00,00, 00,00,00,00 \par \par [All] \par HKR,,FriendlyDriver,,Unimodem.vxd \par HKR,,DevLoader,,*VCOMM \par HKR,,ConfigDialog,,modemui.dll \par HKR,,PortSubClass,1,02 \par HKR,,EnumPropPages,,"modemui.dll,EnumPropPages" \par \par [EXTERNAL] \par HKR,, DeviceType, 1, 01 \par \par [INTERNAL] \par HKR,, DeviceType, 1, 02 \par \par [GenericAddReg] \par HKR, Init, 1,, "AT" \par HKR, Init, 2,, "ATE0V1" \par HKR, Monitor, 1,, "ATS0=0" \par HKR, Monitor, 2,, "None" \par HKR, Answer, 1,, "ATA" \par HKR, Hangup, 1,, "ATH" \par HKR,, Reset,, "ATZ" \par HKR, Settings, Prefix,, "AT" \par HKR, Settings, Terminator,, "" \par HKR, Settings, DialPrefix,, "D" \par HKR, Settings, Pulse,, "P" \par HKR, Settings, Tone,, "T" \par \par ; DTE/DCE speeds will not be exact for generic modems because we will \par ; treat CONNECT ### as a DCE speed when some modems will report it as DTE. \par HKR, Responses, "", 1, 01, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "", 1, 01, 00, 00,00,00,00, 00,00,00,00 \par HKR, Responses, "OK", 1, 00, 00, 00,00,00,00, 00,00,00,00 \par . \par . \par . \par HKR, Responses, "AUTOSTREAM: LEVEL 3", 1, 01, 00, 00,00,00,00, 00,00,00,00 \par \par [Gen96Reg] \par HKR,, Properties, 1, 80,01,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,01,00,00, 00,96,00,00, 80,25,00,00 \par HKR,, DCB, 1, 1C,00,00,00, 80,25,00,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00 \par \par [GenAnyReg] \par HKR,, Properties, 1, 80,01,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,00,00,00, 00,01,00,00, 00,c2,01,00, 00,c2,01,00 \par HKR,, DCB, 1, 1C,00,00,00, 80,25,00,00, 15,20,00,00, 00,00, 0a,00, 0a,00, 08, 00, 00, 11, 13, 00, 00, 00 \par \par [Strings] \par MS ="Microsoft" \par VoiceView = "(VoiceView Modem Types)" \par VVGen96 = "VoiceView 9600 bps Modem" \par PNPC110 = "VoiceView 9600 bps Modem" \par APPS_DESC = "Accessories" ; Name of Accessories menu \par StartUp_DESC = "StartUp" \par SendTo_DESC = "SendTo" ; Name of SendTo folder in the Windows dir \par FileXfer_DESC = "File Transfer" ; Name of file tranfer app in Accessories menu \par SendToPhone_DESC = "Person On Phone" ; Name for file transfer app in SendTo menu \par StartXfer_DESC = "VoiceView Auto Detection" ; Name for auto start feature \par \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282527}{\*\bkmkstart _Toc342282624}OPTIONAL STEP 5 -- Adding Voice Support{\*\bkmkend _Toc342282527}{\*\bkmkend _Toc342282624} \par \pard\plain \widctlpar \f4\fs20 Modem voice functionality is supported by Unimodem/V. Unimodem/V supplies the following new features (as compared to Unimodem): \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Wave playback and record to/from the phone line. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Wave playback and record to/from the handset. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Speakerphone capability. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Caller ID. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Distinctive ringing. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Call forwarding. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Operator application, which assists in determining the media mode of an incoming call. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Your voice modem may support a few or all of these features. This documentation topic describes the INF file entries you must add to your modem INF file to install these features. This primarily involves putting the information in the registry that Unimod em/V needs to carry out each of these features, but there are a few other things you must do, too. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282528}{\*\bkmkstart _Toc342282625}Installing a Wave Driver{\*\bkmkend _Toc342282528}{\*\bkmkend _Toc342282625} \par \pard\plain \widctlpar \f4\fs20 Playback and recording of audio required by voice modems is done by the Windows Multimedia System (MMSystem), which uses digitized wave files (.WAV files). There are the two basic types of voice modem wave devices, each requiring a different interface with Unimodem/V: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Serial wave device driver. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Wave wrapper. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Serial port modems send and receive wave input/output data through the Windows 95 computer's communications port. SERWVDRV.DRV is used by Unimodem/V as the serial wave device driver. SERWVDRV.DRV supports the following formats: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab 4-bit Rockwell ADPCM 7200 Hz \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab 4-bit IMA ADPCM 4800 Hz \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab 4-bit IMA ADPCM 7200 Hz \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab 4-bit IMA ADPCM 8000 Hz \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Modems with a separate audio hardware interface require synchronization between the modem and audio via AT commands (to set the mode, etc.). For these modems, the wave driver wrapper performs all synchronization. It is called by MMSystem, and calls Unimod em to send any needed AT comm ands to the modem. After the AT commands are completed, the wave driver wrapper calls back into MMSystem, and MMSystem then calls the modem wave device. The modem wave device interfaces only to the audio hardware interface. Your modem wave driver must not directly access to the COMM port (let the wave wrapper send all AT commands to the modem). \par You must decide which wave device driver to use, the serial wave device driver or the wave wrapper. \par For either one to be installed, the following item must be added to an AddReg section in your modem INF file: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, Enumerator, ,serwave.vxd \par \par \pard\plain \widctlpar \f4\fs20 This item must be in every voice modem INF file, regardless of whether your voice modem uses the serial wave driver or wave wrapper to play audio. Do not change the value of this entry, it is always SERWAVE.VXD. SERWAVE.VXD has the ability to connect eith er type of wave device to your modem when your modem is detected. \par You must also provide a wave driver INF in addition to your modem INF file. Sample INF files are in the MDK for both types of wave drivers: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPSERWV.INF is a sample INF file the installs the serial wave driver. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab SMPWRAP.INF is a sample INF file that installs the wave wrapper. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 When either the serial driver or wave wrapper are installed, the game-compatible device is installed automatically to ensure compatibility with Windows games. Three multimedia devices are usually installed: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The line device, which allows audio to be recorded from and/or played to the phone line during an active call. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The handset device, which allows audio to be recorded from and/or played to the local telephone handset. If the modem does not support a handset device, this device will not be installed. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A game compatible device, which ensures compatibility with Windows games and other multimedia applications. Many Windows multimedia applications hard code us ing device 0 for their wave out device. When the serial wave device or wave wrapper is installed, it is always device 0. The game compatible device was added to the serial wave and wave wrapper devices to "pass through" calls to device 0 to the other wave driver device installed. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282529}{\*\bkmkstart _Toc342282626}Changing Items in SMPSERWV.INF{\*\bkmkend _Toc342282529}{\*\bkmkend _Toc342282626} \par \pard\plain \widctlpar \f4\fs20 A sample serial wave driver INF file is in the MDK, SMPSERWV.INF. You can include this file on your modem installation diskette with few, if any, changes. Each of the sections that contain items yo u may want to change are discussed below. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab You may want to change the XformID item, such as the one shown in the [SAMPLE2.AddReg] section. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [SAMPLE2.AddReg] \par HKR,Drivers\\wave\\serwvdrv.drv,Description,,%Rockwell.DeviceDesc%\tab ;; serwvdrv.drv is driver \par HKR,Config,XformModule, , "umdmxfrm.dll"\tab ;; necessary \par HKR,Config,XformID, 1, 01, 00, 00, 00\tab ;; format \par \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Use the value of the XformID key to specify the format your serial wave device uses. The value used in SMPSERWV.INF, 0x00000001, specifies the 4-bit Rockwell ADPCM 7200 Hz format. Valid values for the XformID key are listed in the following table: \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 XformID Value \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Meaning \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000001 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 4-bit Rockwell ADPCM 7200 Hz format \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000002 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 4-bit IMA ADPCM 4800 Hz format \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000003 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 4-bit IMA ADPCM 7200 Hz format \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000004 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 4-bit IMA ADPCM 8000 Hz format \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab You may want to change the WaveDevices item, such as the one shown in the [SAMPLE1.AddReg] section. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [SAMPLE1.AddReg] \par HKR,Drivers\\wave\\serwvdrv.drv,Description,,%Cirrus.DeviceDesc% \par HKR,Config,XformModule, , "umdmxfrm.dll" \par HKR,Config,XformID, 1, 02, 00, 00, 00 \par HKR,Config,WaveDevices, 1, 01, 00\tab \tab ;; normally, have 2 wave devices, line and \par \tab \tab \tab \tab \tab \tab ;; handset. If handset is not supported \par \tab \tab \tab \tab \tab \tab ;; only have 1 wave device, so serwvdrv \par \tab \tab \tab \tab \tab \tab ;; needs to know this so it only reports \par \tab \tab \tab \tab \tab \tab ;; one device. If this entry is omitted \par \tab \tab \tab \tab \tab \tab ;; default is 2 \par \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Use the value of the WaveDevices key to indicate whether or not your voice modem has t he ability to playback and record to a handset device. The value used in SMPSERWV.INF, 0x00000001, indicates that the voice modem does not have this ability, or does not have a handset device. Valid values for the WaveDevices key are listed in the followi ng table: \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 WaveDevices Value \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Meaning \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000001 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Voice modem plays back and records to line only. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0x00000002 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Voice modem plays back and records to line and handset device. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 There other items in the SMPSERWV.INF file that are of interest only because they indicate SMPSERWV.INF is a wave device INF file and not a modem device INF file. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab In the [Version] section, the class of device is Media and the class installer is MMCI.DLL. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [Version] \par Signature="$Windows95$" \par Class=MEDIA\tab \tab ;; needed - this is a wave driver, so gets installed in media \par provider=%MSFT% \par \par [ClassInstall] \par Addreg=Class.AddReg\tab ;; standard media stuff \par \par [Class.AddReg]\tab \tab ;; standard media stuff \par HKR,,,,%MediaClassName% \par HKR,,Icon,,"-1" \par HKR,,Installer,,mmci.dll \par \par \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The devloader is MMDEVLDR.VXD. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [MSSERWAVE.AddReg]\tab \tab \tab \tab ;; this stuff should never change \par HKR,,DevLoader,,mmdevldr.vxd \par HKR,Drivers,MIGRATED,,0 \par HKR,Drivers\\wave,,, \par HKR,,Driver,,serwave.vxd \par HKR,Drivers\\wave\\serwvdrv.drv,Driver,,serwvdrv.drv \par HKR,Drivers,SubClasses,,"wave" \par \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282530}{\*\bkmkstart _Toc342282627}Changing Items in SMPWRAP.INF{\*\bkmkend _Toc342282530}{\*\bkmkend _Toc342282627} \par \pard\plain \widctlpar \f4\fs20 A sample serial wave driver INF file is in the MDK, SMPWRAP.INF. You can include this file on your modem installation diskette with few, if any, changes. Each of the section s that contain items you may want to change are discussed below. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab You may want to change one or more of the items that describe the wave wrapper, such as the items in the section [MSWRAPPER.AddReg]. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [MSWRAPPER.AddReg] \par . \par . \par . \par ;; information about the Wave Driver being wrapped \par \par HKR,Config,LowerMid,1, 5c, 00 \par HKR,Config,LowerWaveInPid,1, 81, 00 \par HKR,Config,LowerWaveOutPid,1, 82, 00 \par \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Use the values of the LowerMid, LowerWaveInPid, and LowerWaveOutPid keys to sp ecify the audio wave driver the wave wrapper is using. The LowerMid value is the wave driver manufacturer's ID, the LowerWaveInPid value is the wave input product ID, and the LowerWaveOutPid is the wave output product ID. \par You may also want to change one of more of the following entries in the [MSWRAPPER.AddReg] section: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,Config,WaveOutMixerDest, 1, 00, 00, 00, 00 \par HKR,Config,WaveOutMixerSource, 1, 00, 00, 00, 00 \par \par HKR,Config,WaveInMixerDest, 1, 01, 00, 00, 00 \par HKR,Config,WaveInMixerSource, 1, 00, 00, 00, 00 \par \par \pard\plain \widctlpar \f4\fs20 The wave wrapper has a mixer device. These entries connect the wave wrapper mixer device to the wave driver mixer. The wave wrapper mixer will control the wave driver mixer while the wave wrapper is loaded. When the wave wrapper is not loaded, the wave dr iver mixer settings are set back to their original settings. \par Use the value in the WaveOutMixerDest key to indicate the multimedia line that wave out goes to; normally, this is the speakers. Use the value i n the WaveOutMixerSource key to indicate the multimedia line used as the source relative to WaveOutMixerDest; normally this is the ADC. \par Use the value in the WaveInMixerDest key to indicate the multimedia line corresponding to wave in. Use the value in the WaveInMixerSource key to indicate the multimedia line used as the source relative to WaveInMixerDest; normally this is line in or wave in. \par There other items in the SMPWRAP.INF file that are of interest only because they indicate SMPWRAP.INF is a wave device INF file and not a modem device INF file. \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab In the [Version] section, the class of device is Media and the class installer is MMCI.DLL. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [Version] \par Signature="$Windows95$" \par Class=MEDIA \par provider=%MSFT% \par \par [ClassInstall] \par Addreg=Class.AddReg \par \par [Class.AddReg] \par HKR,,,,%MediaClassName% \par HKR,,Icon,,"-1" \par HKR,,Installer,,mmci.dll \par \par \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The devloader is MMDEVLDR.VXD. \par \pard\plain \s55\li280\sl-220\slmult0\widctlpar\tx670\tx1060\tx1450\tx1840\tx2230\tx2620\tx3010\tx3400\tx3790\tx4180\tx4570\tx4960\tx5350\tx5740\tx6130\tx6520\tx6910 \f51\fs16 [MSWRAPPER.AddReg] \par HKR,,DevLoader,,mmdevldr.vxd \par HKR,Drivers,MIGRATED,,0 \par HKR,Drivers\\wave,,, \par HKR,,Driver,,serwave.vxd \par HKR,Drivers\\wave\\tamwrap.drv,Description,,%Wavewrap.DeviceDesc% \par HKR,Drivers\\wave\\tamwrap.drv,Driver,,wavewrap.drv \par HKR,Drivers,SubClasses,,"wave" \par \par \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282531}{\*\bkmkstart _Toc342282628}Understanding the Primary Commands Used by Unimodem/V{\*\bkmkend _Toc342282531}{\*\bkmkend _Toc342282628} \par \pard\plain \widctlpar \f4\fs20 Unimodem/V uses the command values in the Init, Monitor, EnableCallerID, EnableDistintiveRing, VoiceDialNumberSetup, VoiceAnswer, and VoiceDialNumberSetup registry keys to control the initialization of your voice modem. The relationships between these com mands are summarized in the following state transition diagram. \par The TAPI functions called, and their parameters, when Unimodem/V performs the commands stored in these registry keys are listed in the following table, along with their parameters. \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Registry Key(s) Holding Command \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 TAPI Function Called \cell Parameter(s) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Init and Monitor \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 lineOpen \cell LINECALLPRIVILEDGE_OWNER \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Init \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 lineOpen \cell LINECALLPRIVILEDGE_NONE or _MONITOR LINEMEDIAMODE_INTERACTIVEVOICE or _AUTOMATEDVOICE followed by lineMakeCall \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 VoiceDialNumberSetup \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 lineMakeCall \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 VoiceAnswer \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 lineAnswer \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282532}{\*\bkmkstart _Toc342282629}Adding Section Names to the Install Section AddReg= Item{\*\bkmkend _Toc342282532}{\*\bkmkend _Toc342282629} \par \pard\plain \widctlpar \f4\fs20 All of the additions you must make to add voice modem capability to a modem INF file are in AddReg-type sections. If you add entire new AddReg-type sections to the INF file, don't forget to add the name of the new section(s) to the AddReg= item in the INF Install section. A typical AddReg= item is shown below, with four AddReg-type sections named in it. You may have to add a fifth, and a sixth, etc. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 AddReg=All, MfgAddReg, Modem1.AddReg, INTERNAL \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282533}{\*\bkmkstart _Toc342282630}Adding Modem-Specific Voice Support Section to the INF File{\*\bkmkend _Toc342282533}{\*\bkmkend _Toc342282630} \par \pard\plain \widctlpar \f4\fs20 SMPVOICE.INF is a sample INF file in the MDK for a voice modem that uses the serial wave driver for playing audio to the handset and line. \par In SMPVOICE.INF, the AddReg-type section named [MICROSOFT_VOICE] demonstrates all the registry keys that can be added for voice modem support, along with sample values for each key. See the "Modem Registry Reference" for details about each key. The follow ing paragraphs walk through the items in the [MICROSOFT_VOICE] section to give you an overview of all the keys you can add to the registry for voice modem support. \par Note that you must add the name of the new AddReg-type section to the AddReg= item in the Install section for the voice modem. For example, the AddReg= item in SMPVOICE.INF reads \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 AddReg=All, MfgAddReg, MICROSOFT_VOICE, Modem1.AddReg, PCMCIA \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282534}{\*\bkmkstart _Toc342282631}Adding a VoiceProfile Key{\*\bkmkend _Toc342282534}{\*\bkmkend _Toc342282631} \par \pard\plain \widctlpar \f4\fs20 You must add a VoiceProfile key value to the INF that installs a voice modem. Unimodem/V us es the bit settings in the VoiceProfile key to determine the capabilities of your voice modem. All the bit settings you can use are listed in the "Modem Registry Reference" (documentation file Reg.doc). A Profile Calculator tool is included in the MDK th at presents a graphical user interface with which you can build and analyze VoiceProfile vectors. \par \par The example value used in SMPVOICE.INF is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, VoiceProfile, 1, 27,02,40,00 \par \par \pard\plain \widctlpar \f4\fs20 The value for the VoiceProfile key, 00400227, comes from adding the following flags: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 0x00400000 Indicates the speakerphone cannot be muted. \par 0x00000200 Forces blind dialing after dialtone detection. \par 0x00000020 Modem uses the serial wave driver for playing audio to \par handset and line. \par 0x00000004 Modem has a speakerphone. \par 0x00000002 Modem can play audio to handset \par 0x00000001 This is a voice modem (this flag must always be set in \par the VoiceProfile value). \par \par {\f4\fs20 Note that for all Rockwell voice modems the following flag must be set in the VoiceProfile value: \par } 0x00080000 If set, the UART baud rate will be set before issuing \par StartPlay or StartRecord commands. Otherwise, it will be \par set after the StartPlay or StartRecord commands. \par {\f4\fs20 \par \par }\pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282535}{\*\bkmkstart _Toc342282632}Adding Keys That Describe the Audio Mixer{\*\bkmkend _Toc342282535}{\*\bkmkend _Toc342282632} \par \pard\plain \widctlpar \f4\fs20 The following items in SMPVOICE.INF describe the audio mixer used by the voice modem: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, VoiceMixerMid, 1, 02,00 \par HKR,, VoiceMixerPid, 1, 99,01 \par HKR,, VoiceMixerLineID, 1, 00, 05 00, 00 \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282536}{\*\bkmkstart _Toc342282633}Adding Caller ID Support{\*\bkmkend _Toc342282536}{\*\bkmkend _Toc342282633} \par \pard\plain \widctlpar \f4\fs20 If your voice modem offers caller ID support and you want Unimodem/V to use it, then you must add several items to an AddReg section of your INF file. Do not add these values to the I nit key, but instead use the keys specified below. \par You must add an EnableCallerID key to the registry. The value of the key is the command string Unimodem/V can send to your modem to enable caller ID support. For example, the SMPVOICE.INF file contains the following item: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, EnableCallerID, 1,, "at#cid=1" \par \par \par \pard\plain \widctlpar \f4\fs20 You can also specify characters your modem returns for caller ID information that is blocked because it is private or originates outside the area. For example, the SMPVOICE.INF file contains the following items: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, CallerIDPrivate,, "P" \par HKR,, CallerIDOutSide,, "O" \par \par \par \pard\plain \widctlpar \f4\fs20 Since the caller ID information returned by your modem is a variable-length string, you must specify the string terminator characters. For example, the SMPVOICE.INF file contains the following item: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, VariableTerminator,, \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282537}{\*\bkmkstart _Toc342282634}Adding Distinctive Ring Support{\*\bkmkend _Toc342282537}{\*\bkmkend _Toc342282634} \par \pard\plain \widctlpar \f4\fs20 If your voice modem offers distinctive ring support and you want Unimodem/V to use it, then you must add a EnableDistinctiveRing key to the registry. The value of the key is the command string Unimodem/V can send to your modem to enable distinctive ring support. For example, the SMPVOICE.INF file contains the following item: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, EnableDistinctiveRing, 1,, "at-sdr=7" \par \par \par \pard\plain \widctlpar \f4\fs20 Since the Distinctive Ring information returned by your modem is a variable-length string, you must specify the string terminator characters. For example, the SMPVOICE.INF file contains the following item: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, VariableTerminator,, \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282538}{\*\bkmkstart _Toc342282635}Adding Speaker Phone Support{\*\bkmkend _Toc342282538}{\*\bkmkend _Toc342282635} \par \pard\plain \widctlpar \f4\fs20 If your v oice modem offers speaker phone support, you can add up to six different keys to the registry to direct the way Unimodem/V uses the speaker phone built into your modem. For example, here are the six keys from SMPVOICE.INF: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, SpeakerPhoneSpecs, 1, 00,00,00,00, 0f,00,00,00, 03,00,00,00, 00,00,00,00 \par HKR, SpeakerPhoneEnable, 1,, "at#vls=5" \par HKR, SpeakerPhoneDisable, 1,, "at#vls=0" \par HKR, SpeakerPhoneMute, 1,, "at#spk=0,,," \par HKR, SpeakerPhoneUnMute, 1,, "at#spk=1,,," \par HKR, SpeakerPhoneSetVolumeGain,1,, "at#spk=,," \par \par \par \pard\plain \widctlpar \f4\fs20 You must add a SpeakerPhoneSpecs key, even if all four values are 0. Unimodem/V uses the four values in the SpeakerPhoneSpecs key to determine the minimum and maximum speaker phone volumes, as well as the minimum and maximum gain, to use with your speaker phone hardware. Details of the four values to put in the key are in REG.DOC. The example values used in SMPVOICE.INF is \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR,, SpeakerPhon eSpecs, 1, 00,00,00,00, 0f,00,00,00, 03,00,00,00, 00,00,00,00 \par \par \par \pard\plain \widctlpar \f4\fs20 Unimodem/V uses the SpeakerSetVolumeGain key values to scale the speaker phone volume and gain when TAPI passes Unimodem/V a speaker volume setting, based on the values you put in the SpeakerPhoneSpecs key. Notice in the example SpeakerPhoneSpecs value ab ove, the speaker gain values show an attenuation method, because the minimum speaker gain value (0x00000003) is greater than the maximum speaker gain value (0x00000000). Note also that both speaker volume and gain get reset each time Unimodem/V uses SpeakerPhoneSetVolumeGain command. \par Set the values of the SpeakerPhoneEnable, SpeakerPhoneDisable, SpeakerPhoneMute, and SpeakerPhoneUnMute keys to the command strings Unimodem/V can send to your voice modem to accomplish those functions. \par The relationship between the speaker phone commands you put into the registry for Unimodem/V to use is shown in the following state transition diagram. The Voice Connected (VCON) state can be entered when U nimodem/V sends to the modem either the command string in the VoiceAnswer key or the command string in the VoiceDialNumberSetup key. \par The following conventions are used in the illustration: \par Italics = Registry key \par Bold caps = State name \par Underline = TAPI or MMSystem function called to cause state change \par Non-bold caps = Parameters for TAPI functions \par The state transition diagram shows the TAPI functions called, and their parameters, when Unimodem/V performs the commands stored in the SpeakerPhoneSetVol umeGain, SpeakerPhoneMute, and SpeakerPhoneUnmute registry keys. The TAPI and MMSystem functions Unimodem/V calls when it performs the other commands shown in the state transition diagram are summarized in the following table. \par \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Registry Key Holding Command \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 TAPI or MMSystem Function Called \cell Parameter(s) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 SpeakerPhoneEnable \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 phoneSetHookSwitchState \cell PHONESETHOOKSWITCHDEV_SPEAKER PHONESETHOOKSWITCHMODE_MICSPEAKER or PHONESETHOOKSWITCHMODE_SPEAKER \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 LineSetPlayFormat then StartPlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 waveOutOpen \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 SpeakerPhoneDisable \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 phoneSetHookSwitchState \cell PHONESETHOOKSWITCHDEV_SPEAKER PHONESETHOOKSWITCHMODE_ONHOOK \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 TerminatePlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0 \widctlpar\intbl\tx280\tx560 \f4\fs19 WaveOutClose \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 AbortPlay then StopPlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 WaveOutClose \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2220\cellx4440\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 HangUp \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 lineDrop \cell \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282539}{\*\bkmkstart _Toc342282636}Adding Registry Keys to Support Phone Message Recording and Playback{\*\bkmkend _Toc342282539}{\*\bkmkend _Toc342282636} \par \pard\plain \widctlpar \f4\fs20 To support the telephone answering machine functions of recording incoming phone messages and playing the messages back through the handset when there is no active call, you must use your modem INF file to put values in fourteen different registry keys: \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Registry Key \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Value \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 AbortPlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that stops playing audio data immediately (does not play the rest of the audio buffer contents). This command is not used for modems that are not using a serial wave device. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 CloseHandset \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that resets the modem to Class 0. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 HandsetSetPlayFormat \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that sets the modem's handset playback format. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 HandsetSetRecordFormat \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that sets the modem's handset recording format. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 LineSetPlayFormat \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that sets the modem's line playback format. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 LineSetRecordFormat \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that sets the modem's line recording format. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 OpenHandset \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that puts modem in a mode that enables audio to be played back through the handset when there is no active call. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 StartPlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that starts playing audio (wave files) out of the modem. If a serial wave driver is being used, a bit in the VoiceProfile key controls whether the baud rate is set prior to the StartPlay command or after the StartPlay command. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 StartRecord \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that sta rts recording audio (wave files) from the modem. If a serial wave driver is being used, a bit in the VoiceProfile key controls whether the baud rate is set prior to the StartRecord command or after the StartRecord command. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 StopPlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that can be used to reset the modem's baudrate after an AbortPlay or TerminatePlay command. A bit in the VoiceProfile key indicates whether Unimodem/V has to reset the UART's baudrate. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 StopRecord \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that stops recording audio (wave files) from the modem. If a serial wave driver is being used, a bit in the VoiceProfile key controls whether the baud rate is set prior to the StopRecord command or after the StopRecord command. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 TerminateRecord \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that causes the modem to finish recording its local buffer and stop recording audio data. This command is not used for modems that are not using a serial wave device. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 TerminatePlay \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Command that causes the modem to finish playing the contents of i ts local buffer and stop playing audio data after that. This command is not used for modems that are not using a serial wave device. \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The relationship between these commands and the way they are used in sequence by Unimodem/V is shown in the following state transition diagram. \par The following conventions are used in the illustration: \par Italics = Registry key \par Bold caps = State name \par Underline = TAPI or MMSystem function called to cause state change \par Non-bold caps = Parameters for TAPI functions \par SMPVOICE.INF is a sample INF file in the MDK for a voice modem that uses the serial wave driver for playing audio to the handset and line. The example values from SMPVOICE.INF for the fourteen keys listed in the table above are: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, CloseHandset, 1,, "at#cls=0" \par HKR, StartPlay, 1,, "at#vtx" \par HKR, StopPlay, 1,, "None" \par HKR, StopPlay, 2,, "NoResponse" \par HKR, StartRecord, 1,, "at#vrx" \par HKR, StopRecord, 1,, "None" \par HKR, StopRecord, 2,, "NoResponse" \par HKR,, TerminateRecord,, " \par Eat" \par HKR,, TerminatePlay,, " \par \par at" \par HKR,, AbortPlay,, " \par \par at" \par HKR, LineSetPlayFormat, 1,, "at#vls=0" \par HKR, LineSetRecordFormat, 1,, "None" \par HKR, LineSetRecordFormat, 2,, "NoResponse" \par HKR, HandsetSetRecordFormat, 1,,"at#vsr=7200" \par HKR, HandsetSetRecordFormat, 2,,"at#vbs=4" \par HKR, HandsetSetPlayFormat, 1,,"at#vsr=7200" \par HKR, HandsetSetPlayFormat, 2,,"at#vbs=4" \par HKR, OpenHandset, 1,, "at#cls=8" \par HKR, OpenHandset, 2,, "at#vls=2" \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282540}{\*\bkmkstart _Toc342282637}Adding Registry Keys to Answer a Voice Call{\*\bkmkend _Toc342282540}{\*\bkmkend _Toc342282637} \par \pard\plain \widctlpar \f4\fs20 The VoiceAnswer entries give a sequence of commands Unimodem/V can send to your modem to answer a voice call and monitor for other calling tones. For example, SMPVOICE.INF uses seven VoiceAnswer entries to specify a sequence of commands that answer a voic e call. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, VoiceAnswer,\tab 1,, "at#cls=8"\tab \tab (select voice) \par HKR, VoiceAnswer,\tab 2,, "at#vls=8"\tab \tab (route phone line i/f thru modem) \par HKR, VoiceAnswer,\tab 3,, "at#vbt=1"\tab \tab (beep tone timer) \par HKR, VoiceAnswer,\tab 6,, "ats30=60"\tab \tab (sampling rate selection) \par HKR, VoiceAnswer,\tab 7,, "ata" (answer) \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282541}{\*\bkmkstart _Toc342282638}Adding Registry Keys to Dial Out for a Voice Call{\*\bkmkend _Toc342282541}{\*\bkmkend _Toc342282638} \par \pard\plain \widctlpar \f4\fs20 The VoiceDialNumberSetup entries give a sequence of commands Unimodem/V can send to your modem to dial out for a voice call. For example, SMPVOICE.INF uses seven VoiceDialNumberSetup entries to s pecify a sequence of commands that dial out for a voice call. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, VoiceDialNumberSetup,\tab 1,, "at#cls=8" \tab \tab (select voice) \par HKR, VoiceDialNumberSetup,\tab 2,, "at#vls=8" \tab \tab (route phone line i/f thru modem) \par HKR, VoiceDialNumberSetup,\tab 3,, "at#vrn=0" \tab \tab (ringback never came timer) \par HKR, VoiceDialNumberSetup,\tab 4,, "at#vbt=1"\tab \tab (beep tone timer) \par HKR, VoiceDialNumberSetup,\tab 7,, "ats30=60"\tab \tab (set S Register S30, Inactivity timer) \par \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282542}{\*\bkmkstart _Toc342282639}Adding Registry Keys to Generate DTMF Digits in Voice Mode{\*\bkmkend _Toc342282542}{\*\bkmkend _Toc342282639} \par \pard\plain \widctlpar \f4\fs20 The GenerateDigit entry is used to generate a DTMF digit while in voice mode. For example, SMPVOICE.INF uses the following value for the GenerateDigit key: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, GenerateDigit,\tab \tab 1,, "at#vts="\tab (generate tone signal ) \par \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282543}{\*\bkmkstart _Toc342282640}Adding Registry Keys to Support Voice to Data Answering Switch{\*\bkmkend _Toc342282543}{\*\bkmkend _Toc342282640} \par \pard\plain \widctlpar \f4\fs20 The VoiceToDataAnswer entries give a sequence of commands Unimodem/V can send to your modem to switch it to data answering mode after it has been in voice answering mode. For example, SMPVOICE.INF uses the following sequence of commands for switching voice to data mode switching: \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 HKR, VoiceToDataAnswer,\tab 1,, "at#cls=0"\tab (select data) \par HKR, VoiceToDataAnswer,\tab 2,, "ata"\tab \tab \tab \tab \tab (answer) \par \par \pard\plain \widctlpar \f4\fs20 Note that Unimodem/V answers all incoming calls on voice modems as voice calls. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282544}{\*\bkmkstart _Toc342282641}STEP 6 -- TESTING YOUR MODEM INSTALLATION WITH MCT{\*\bkmkend _Toc342282544}{\*\bkmkend _Toc342282641} \par \pard\plain \widctlpar \f4\fs20 The current Modem Compatibility Test (MCT) is part of the Windows 95 DDK. The MCT is constantly evolving and being improved as Microsoft encounters modems with new features. Be sure you are always using the most cur rent version of the MCT. \par You can use the MCT to test whether your INF file properly installs your modem on a Windows 95 platform. \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Save your INF file as a text-only ASCII format document, using filename extension ".INF" and a filename prefix of ".MDM." Do not use the filename "MODEMS.INF". \par \tab 2\tab Open the Modems control panel and click the New button, and then the Select button. Your manufacturer name should now appear in the lefthand listbox. Click on it to see your models appear in the list in the righthand listbox. \par \tab 3\tab Select one of your modem models and click the OK button. This will install the modem into the registry. Also try uninstalling the modem. For Plug and Play modems, try autodetection and enumeration. \par \tab 4\tab Specify the correct port name when prompted. When complete, the new modem will appear in the "Installed Modems" list. \par \tab 5\tab Run the Modem Compatibility Tests (MCTs) to confirm that the INF settings are correct. You can debug your INF file using the instructions below. \par \tab 6\tab You should also test y our modem INF using Windows 95 features which make modem connections using 32-bit TAPI access, including the HyperTerminal and Remote Access Services (RAS). Be sure to try different modem setting configurations (different speaker volumes and modes, baud r ates, error control and compression settings, flow control settings, and so on). \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 It is important that between each MCT session, you erase all INF files with the name OEM*.INF from the \\WINDOWS\\INF directory. During the modem installation process, a copy o f your INF file is renamed to OEM*.INF and copied to that directory. If, between MCT sessions, you change your INF file, you do not want an old version of the INF file left on the Windows 95 computer. \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282545}{\*\bkmkstart _Toc342282642}Preparing to Run MCT{\*\bkmkend _Toc342282545}{\*\bkmkend _Toc342282642} \par \pard\plain \widctlpar \f4\fs20 Before running the MCT you must have two computers, preferably 486/50 or higher. The computers must have 16550 UARTs installed for high speed modem testing with external modems. Internal modems typically have 16550 UARTs present as part of the modem desig n. If in doubt, check using the Microsoft MSD utility. \par A good slave modem is necessary and must have a verified and tested INF file itself. Any brand slave modem will work. Generally select any good quality 28.8 VFC or V.34 modem. The remote modem must have error control and compression capabilities and compl ete responses for states such as compression and error correction. If any modems to be tested have cellular capabilities, the slave modem must also have cellular capabilities. A good way to find a slave modem is obtain two identical 2 8.8 modems and write an INF and then run the MCT test between those two identical modems until all MCT tests pass. This provides a slave modem which is a reference against which other modems are tested. \par Before running MCT, enable the modem event logging feature. See "Debugging a Modem INF File Using Modem Event Logs" for instructions for enabling the logging feature and interpreting the log file your MCT session generates. The modem event log file in nam ed MODEMLOG.TXT and is saved in the WINDOWS subdirectory. You may want to write a batch file that automatically opens MODEMLOG.TXT after each MCT run. \par Before running MCT, you should also run a quick check to make sure modem is working: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Open a Command Prompt window (DOS box). \par \tab 2\tab Type "ECHO ATDT 123456 >COMx" (without the quotes), where x is the number of the communication port the modem is associated with. \par \tab 3\tab Listen for modem activity. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Windows 95 uses a database index to track INF files, storing the index in .BIN files in the \\WINDOWS\\ INF directory. If you make changes to an INF during testing, you may need to delete all existing .BIN files, then delete and reinstall the modem so that the index is rewritten and the MCT uses your new INF file. Usuall y this is rarely necessary since Windows 95 detects any changes to available INF structures and presents a "gas gauge" as the INF database is rebuilt. \par Because high speed responses may not be thoroughly documented for all modems, you may need to test for a variety of subtle responses using several types of high-end modems as remote slaves. An easy way to do this is set up two computers as slaves with one having a V.34 modem as slave and one having a VFC modem as slave. Have your master modem call the V.34 m odem and note responses. Then change the phone number on the master and call the VFC slave modem to check for other responses. \par Useful testing tools to drag and drop onto the start menu button (right click and drag) or onto the desktop of an MCT test computer are: \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Terminal icon (install the Terminal application from Windows 3.1). Use this to check to see if command strings will work with a modem under test. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MCT icon. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab MS-DOS editor (opens an MS-DOS session, starts DOS edit and opens your INF for adjustments). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Batch file to delete the *.BIN files in \\WINDOWS\\INF every time you change or adjust your INF. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282546}{\*\bkmkstart _Toc342282643}MCT Testing Methodology: Tips and Traps{\*\bkmkend _Toc342282546}{\*\bkmkend _Toc342282643} \par \pard\plain \widctlpar \f4\fs20 You can avoid common MCT problems by using the following tips and avoiding traps listed below. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282547}{\*\bkmkstart _Toc342282644}Avoiding Current MCT Limitations{\*\bkmkend _Toc342282547}{\*\bkmkend _Toc342282644} \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab At the current time, some MCT menu items are inactive or awaiting further development to make them functional. Do not use ALL TESTS, SPEED ADJUST, ALL AUTOMATED, or ALL INTERACTIVE. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Forced error control can sometimes produce erroneous results. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The MCT is constantly evolving and being improved as Microsoft encounters modems with new features. Be sure you are always using the most current version of the MCT. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282548}{\*\bkmkstart _Toc342282645}Avoiding Common MCT Setup Errors{\*\bkmkend _Toc342282548}{\*\bkmkend _Toc342282645} \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Do not forget to install a phone number for the MCT to dial. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Make sure to have only one modem installed while running MCT. Use the Modem Control Panel to make sure only one modem is present. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Make sure a network card or other device is not also using the same communication port as the modem. Check this using the Device Manager. Click the Start button, point to Settings, and click the Control Panel Option. In the Control Panel, double-click th e System icon, select the Device Manager tab, and click the Properties button to display all the system devices and their current resource usage. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282549}{\*\bkmkstart _Toc342282646}Using Alternate Configurations for Running the MCT{\*\bkmkend _Toc342282549}{\*\bkmkend _Toc342282646} \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If during MCT eve rything seems locked up, shut down and try again. If still failing, replace your test modem with a good modem and good INF and retest to reestablish that MCT is functional. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Consider using several different remote slaves and running MCT connecting to each slave. As a minimum a V.34 slave modem will cause some connect responses to appear and a VFC slave modem will cause other responses. Thus with high end (V.34 and VFC) modem s consider doing an MCT send file test with a V FC slave, note undocumented responses, then retest with a V.34 slave and note additional undocumented responses. Frequently high speed responses which are poorly documented in manufacturers manuals and this provides an extra level of security that an INF contains complete responses. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282550}{\*\bkmkstart _Toc342282647}Avoiding Common INF Item Problems{\*\bkmkend _Toc342282550}{\*\bkmkend _Toc342282647} \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab INF responses within an INF must be accurate and comprehensive for the modem. For example, an incomplete response such as "CONNECT 14400" instead of " CONNECT 14400" will cause a failure. If MCT fails to run to completion and you have not already enabled logging of modem events, then enable modem event logging and rerun the MCT. Study the log entries for bad or incomplete responses such as t he example incomplete response shown above. Complete instructions for enabling logging of modem events is in "Debugging a Modem INF File Using Modem Event Logs." \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A common modem INF syntax mistake is to include \\ (backslash) or other prohibited characters in a modem's name within the Strings section of the INF. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A common INF mistake is an incorrect init string applied to all modems. For example one of your modems may require AT&F1 instead of AT&F. Perhaps one of your modems uses \\ Tn for inactivity timer instead of S30. Make sure you are using a fully robust init string. An example of a fully-robust init string is AT&FE0&C1&D2S95=47. An example of a non-robust init string is AT&FE0. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab If you suspect that your INF numeric response section is incorrect, consider switching to verbose responses. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282551}{\*\bkmkstart _Toc342282648}Avoiding DTE and DCE Speed Problems{\*\bkmkend _Toc342282551}{\*\bkmkend _Toc342282648} \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Check the properties line of your INF for incorrect maximum DTE and DCE speed values. Values that are too high for the modem in use will cause MCT to fail. You can determine the maximum possible DTE speed by trial and error with any communications applic ation and/or by examining the modem eve nt log. See "Debugging a Modem INF File Using Modem Event Logs" for instructions on how to enable modem event logging and interpreting the logs. To determine the maximum DTE speeds by trial and error, try to transmit init strings to the modem at various D TE speeds and learn by trial and error. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Having DTE set wrong for a 2400 bps external modem can cause MCT failures. Care should be taken to encode correct maximum DCE and DTE settings into the properties line for your mo dem, especially if it is 2400 bps modem. For example, an external 2400 bps modem may have a maximum DTE of 2400 bps (modem probably has no compression). A similar 2400 bps modem may have a maximum DTE of 4800 bps (MNP5 compression) or a maximum DTE of 960 0 bps (full V.42bis compression). Carefully refer to the manufacturer's documentation as your primary authority on maximum DTE settings. You can also experiment with the modem and use MODEMID.EXE to give you a fairly reliable measurement tool for DCE and DTE. If nothing seems to work with a 2400 bps external modem, try to lower the maximum DTE setting in the properties line to about 9600 or even 2400 (for modems lacking any compression). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A 2400 bps internal modem may allow a maximum DCE of 2400 (as expected) and a maximum DTE of 115200 bps which is reasonable given inexpensive onboard high-speed UART technology. The manufacturer's documentation may state this and you may confirm this by testing and studying the modem even t logs. However, having DTE set wrong for an internal 2400 bps modem sometimes causes MCT failures. Setting the properties line to 2400 maximum DCE and a high maximum DTE (for example, 115200 bps) sometimes causes handshake problems. If nothing seems to w ork with a 2400 bps internal modem, try lowering the maximum DTE setting in the properties line to about 9600 bps or even 2400 bps (for modems lacking any compression). \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s2\li-1800\sb140\sa60\sl-380\slmult0\keepn\widctlpar \b\f16\fs34 {\*\bkmkstart _Toc342282552}{\*\bkmkstart _Toc342282649}Full Debugging of a Modem INF File Using Modem Event Logs{\*\bkmkend _Toc342282552}{\*\bkmkend _Toc342282649} \par \pard\plain \widctlpar \f4\fs20 Running the MCT can usually provide a gross pass/fail result. However, subtle errors, such as a response string missing from your INF file, can sneak through MCT validation. Examining a debug log of any MCT or dialout session is important to ensure INF robustness and accuracy. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282553}{\*\bkmkstart _Toc342282650}Setting Up a Modem Event Logging Session{\*\bkmkend _Toc342282553}{\*\bkmkend _Toc342282650} \par \pard\plain \widctlpar \f4\fs20 The Modem Development Kit provides two executables, LOGGER.VXD and LOGWIN.EXE, which enable you to produce logs in real-time of the events during an MCT run or dialout session. You can display the e vent log in a window on the screen and/or save the log in a file (named MODEMLOG.TXT) in the WINDOWS subdirectory. \par \pard\plain \s23\li30\ri30\sl-80\slmult0\keepn\widctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s17\sb40\sl-238\slmult0\keepn\widctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 IMPORTANT: \par \pard\plain \s18\sb40\sa80\keepn\widctlpar \f4\fs20 Before any modem event logs can be produced, LOGGER.VXD must be copied from the MDK to your WINDOWS\\SYSTEM directory. \par \pard\plain \s20\li30\ri30\sa40\sl-140\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \widctlpar \f4\fs20 To produce the modem event logging information, you must: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Make sure your modem is enabled; for example, an external modem must be powered on and connected to a communications port. \par \tab 2\tab Enable event logging in the Modem Control Panel. \par \tab 3\tab Start up LOGWIN.EXE. \par \tab 4\tab Begin your MCT or modem dialout session. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 The procedure for enabling event logging, starting LOGWIN.EXE, and starting an MCT session is given in more detail below: \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Click the Start button, point to Settings, and then click the Control Panel. \par \tab 2\tab Double-click the Modems icon in the Control Panel. \par \tab 3\tab In the Modems Properties dialog, select the General tab and click the Properties button. \par \tab 4\tab When a Properties dialog for your modem appears, select the Connection tab and click the Advanced button. \par \tab 5\tab In the Advanced Connection Settings dialog, check the option Record a Log File and click OK on all the open dialogs. \par \tab 6\tab Click the Start button and select the Run option. \par \tab 7\tab Use the Run dialog to browse for LOGWIN.EXE and then run it. \par \tab 8\tab Begin your MCT or modem dialout session. The modem event log data will appear in the LOGWIN.EXE window on-screen. The same information is also always recorded in the file MODEMLOG.TXT in your WINDOWS subdirectory. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \s23\li30\ri30\sl-80\slmult0\keepn\widctlpar\brdrb\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s17\sb40\sl-238\slmult0\keepn\widctlpar\pvpara\posy0\absh235\dxfrtext130\dfrmtxtx130\dfrmtxty0 \b\f16\fs21 NOTE: \par \pard\plain \s18\sb40\sa80\keepn\widctlpar \f4\fs20 If LOGWIN.EXE is not running when you start an MCT or modem dialout session, no log information will appear on the screen and no log information will be written into MODEMLOG.TXT. \par \pard\plain \s20\li30\ri30\sa40\sl-140\slmult0\widctlpar\brdrt\brdrs\brdrw15\brsp20 \f4\fs12\cf8 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282554}{\*\bkmkstart _Toc342282651}Using the Terminal Application as a Debugging Aid{\*\bkmkend _Toc342282554}{\*\bkmkend _Toc342282651} \par \pard\plain \widctlpar \f4\fs20 You can use TERMINAL.EXE from Windows 3.1 for simple init and AT command debugging. This is useful if a modem event log file indicates an error immediately after a specific init or command. \par \pard\plain \s27\fi-440\li280\sa80\widctlpar\tqr\tx160\tx280 \f4\fs20 \tab 1\tab Copy the program TERMINAL.EXE from Windows 3.1 to your computer (if not already present). \par \tab 2\tab Close MCT if it is running. \par \tab 3\tab Set up Terminal to access the modem. \par \tab 4\tab Issue various AT commands until you find one or more commands which do not produce an OK response in Terminal. \par \tab 5\tab Modify these commands in your INF, or remove them from the INF entirely. \par \tab 6\tab Uninstall the modem from the Control Panel and reinstall it again so that the newly modified INF is in use. \par \tab 7\tab Rerun the MCT. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 Another debugging shortcut is to cut and paste, via the Windows clipboard, init strings from an INF into Terminal and then connect to a slave modem to see what verbose or numeric responses you receive. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282555}{\*\bkmkstart _Toc342282652}Interpreting Modem Event Logs{\*\bkmkend _Toc342282555}{\*\bkmkend _Toc342282652} \par \pard\plain \widctlpar \f4\fs20 Two sample modem event logs produced by LOGWIN.EXE are shown below, one for a data modem session and the other for a voice modem session. In order to interpret the event logs, you need to understand the following about how LOGWIN.EXE and Unimodem/V work t ogether to produce the logs. \par When Unimodem/V receives a DLE from the modem, the DLE is translated to a standard event. Below is the table that maps the translated value to the event. The modem log displays the actual DLE received and it's translated value. \par \trowd \cellx2880\cellx6660 \pard\plain \s85\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Translated DLE value \cell \pard\plain \s37\li240\sb20\sa60\sl-220\slmult0\keepn\widctlpar\intbl \b\f4\fs19 Description \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 0 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 0 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 1 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 1 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 2 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 2 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 3 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 3 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 4 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 4 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 5 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 5 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 6 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 6 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 7 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 7 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 8 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 8 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 9 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF 9 \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 10 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF A \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 11 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF B \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 12 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF C \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 13 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF D \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 14 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF * \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 15 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF # \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 16 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF Start \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 17 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 DTMF End \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 32 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 End of Transmit \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 33 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Handset off hook \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 34 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Handset onhook \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 35 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Ring \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 36 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Ringback \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 37 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Answer tone (CCITT - V.25/T.30 2100 Hz) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 38 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Busy \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 39 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Fax CNG Tone \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 40 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Dialtone \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 41 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Silence \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 42 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Quiet \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 43 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Data calling tone (V.25 1300 Hz tone) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 44 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Bell answer tone (2225 Hz tone) \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \trowd \cellx2880\cellx6660 \pard\plain \s82\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 255 \cell \pard\plain \s38\li240\sb20\sa60\sl-220\slmult0\widctlpar\intbl\tx280\tx560 \f4\fs19 Don't care - Unimodem ignores DLE \cell \pard\plain \widctlpar\intbl \f4\fs20 \row \pard\plain \s103\qr\sl-140\slmult0\widctlpar \f4\fs12 \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282556}{\*\bkmkstart _Toc342282653}Sample Data Modem Event Log{\*\bkmkend _Toc342282556}{\*\bkmkend _Toc342282653} \par \pard\plain \widctlpar \f4\fs20 Following is a sample data modem event log, with annotations added to the logged events. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:55 05-25-1994 - TI V.32bis-V.17 Internal in use. \par 05:02:55 05-25-1994 - Modem type: TI V.32bis-V.17 Internal \par \par \pard\plain \widctlpar \f4\fs20 An application has called TAPI to open this modem's line handle. UNIMODEM.TSP called the Win32 function CreateFile("TI V.32bis-V.17 Internal"...) to open a file handle to UNIMODEM.VXD for this modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:56 05-25-1994 - 38400,N,8,1 \par \par \pard\plain \widctlpar \f4\fs20 Unimodem has called VCOMM to open the correct serial port for this modem, and set its default COM port settings. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:56 05-25-1994 - Initializing modem. \par 05:02:56 05-25-1994 - Send: AT \par \par \pard\plain \widctlpar \f4\fs20 Unimodem sends an "AT" to initialize the modem's autobaud setting. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:57 05-25-1994 - Recv: ATOK \par 05:02:57 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 The "AT" is echoed back by the modem, along with an "OK" response code. Unimodem discards the echoed command, and correctly interprets the OK response. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:57 05-25-1994 - Send: AT &F0 \par 05:02:59 05-25-1994 - Recv: AT &F0 OK \par 05:02:59 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem sends the first Init string specified in the INF, discards the echoed command, and interprets the OK response correctly. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:02:59 05-25-1994 - Send: AT E0 Q0 V0 W1 T L2 M1 &C1 \par 05:03:01 05-25-1994 - Recv: AT E0 Q0 V0 W1 T L2 M1 &C1 0 \par 05:03:01 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem sends the second Init string from the INF. The command is echoed back, but notice that numeric response codes are now in use. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:01 05-25-1994 - Send: AT &D2 &S0 X4 %C1 \\J0 \\N7 \\Q3 \\V1 \\T0 \par 05:03:03 05-25-1994 - Recv: 0 \par 05:03:03 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem successfully sends the third Init string from the INF. Note that this command was not echoed back by the modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:03 05-25-1994 - Send: ATS7=50\\T0L2M1%C1\\N7\\Q3B1X4 \par 05:03:04 05-25-1994 - Recv: 0 \par 05:03:04 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 This is the dynamic initialization stage. Unimodem sent a string to configure the modem to settings requested by the user and/or application. The command string is built dynamically based on registry keys, originally specified by "Settings" values in t he INF file. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:04 05-25-1994 - Dialing ''. \par 05:03:04 05-25-1994 - Send: ATX4 \par 05:03:06 05-25-1994 - Recv: 0 \par 05:03:07 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem first sets dial tone detection on. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:07 05-25-1994 - Send: ATDT; \par 05:03:09 05-25-1994 - Recv: 0 \par 05:03:09 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem takes the modem off-hook. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:09 05-25-1994 - Dialing '9242 9992'. \par 05:03:09 05-25-1994 - Send: ATX4 \par 05:03:11 05-25-1994 - Recv: 0 \par 05:03:11 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem sets dial tone detection on again (probably a bug). \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:11 05-25-1994 - Send: ATDT9242 9992; \par 05:03:15 05-25-1994 - Recv: 0 \par 05:03:15 05-25-1994 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Unimodem dials the phone number provided by the application via a TAPI lineMakeCall function. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:15 05-25-1994 - Originating the call. \par 05:03:15 05-25-1994 - Send: ATX3D \par \par \pard\plain \widctlpar \f4\fs20 Unimodem originals the call. Note that 'X3' is included because this modem will not work correctly without it. Some modems do not require this. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:30 05-25-1994 - Recv: 527769 \par 05:03:30 05-25-1994 - Interpreted response: Ignore \par \par \pard\plain \widctlpar \f4\fs20 "Ignore" is misleading. Here, Unimodem recognized "52" as a call progress response code. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:30 05-25-1994 - Recv: 7769 \par 05:03:30 05-25-1994 - Interpreted response: Ignore \par \par \pard\plain \widctlpar \f4\fs20 Unimodem recognized "77" as a call progress response code. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:30 05-25-1994 - Recv: 69 \par 05:03:30 05-25-1994 - Interpreted response: Connect \par \par \pard\plain \widctlpar \f4\fs20 Unimodem recognized "69" as indication of a connection. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:30 05-25-1994 - Connection established at 14400bps. \par 05:03:30 05-25-1994 - Error-control activated. \par 05:03:30 05-25-1994 - No data compression, or modem does not support compression reporting. \par \par \pard\plain \widctlpar \f4\fs20 Unimodem knows that this is a 14400 call with error compression but no data compression, based on the "527769" response codes. \par The call is now in progress, in use by the application. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:41 05-25-1994 - Remote modem hung up. \par \par \pard\plain \widctlpar \f4\fs20 Unimodem detected carrier loss. The call was disconnected by the other computer. This output would appear different if Unimodem had been called to disconnect. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:41 05-25-1994 - Hanging up the modem. \par \par \pard\plain \widctlpar \f4\fs20 Unimodem dropped DTR to cause the modem to hang up. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 05:03:41 05-25-1994 - TI V.32bis-V.17 Internal closed. \par \par \pard\plain \widctlpar \f4\fs20 UNIMODEM.TSP closed its Win32 file handle to the modem. \par \pard\plain \s3\sb80\sa40\sl-340\slmult0\keepn\widctlpar \b\f16\fs30 {\*\bkmkstart _Toc342282557}{\*\bkmkstart _Toc342282654}Sample Voice Modem Event Log{\*\bkmkend _Toc342282557}{\*\bkmkend _Toc342282654} \par \pard\plain \widctlpar \f4\fs20 Following is a sample voice modem event log, with annotations added to the logged events. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:28.64 - Microsoft Voice Modem in use. \par \par

11-08-1995 14:49:28.69 - Modem type: Microsoft Voice Modem \par \par \pard\plain \widctlpar \f4\fs20 An application has called TAPI to open this modem's line handle. UNIMODEM.TSP called the Win32 function CreateFile("Microsoft Voice Modem"...) to open a file handle to UNIMODEM.VXD for this modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:28.95 - 19200,N,8,1 \par \par \pard\plain \widctlpar \f4\fs20 Unimodem has called VCOMM to open the correct serial port for this modem, and set its default COM port settings. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:29.52 - Initializing modem. \par 11-08-1995 14:49:29.52 - Send: AT \par 11-08-1995 14:49:29.52 - Recv: AT \par 11-08-1995 14:49:29.67 - Recv: OK \par 11-08-1995 14:49:29.67 - Interpreted response: Ok \par 11-08-1995 14:49:29.67 - Send: AT &F E0 V1 &D2 &C1 W2 S95=47 \par 11-08-1995 14:49:29.68 - Recv: AT &F E0 V1 &D2 &C1 W2 S95=47 \par 11-08-1995 14:49:29.82 - Recv: OK \par 11-08-1995 14:49:29.82 - Interpreted response: Ok \par 11-08-1995 14:49:29.82 - Send: ATS7=60S30=0L1M1\\N3%C3&K3B0 N1X4 \par 11-08-1995 14:49:29.98 - Recv: OK \par 11-08-1995 14:49:29.98 - Interpreted response: Ok \par 11-08-1995 14:49:29.98 - Waiting for a call. \par \par \pard\plain \widctlpar \f4\fs20 Normal data init process. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:29.98 - Send: at#cid=1 \par 11-08-1995 14:49:30.14 - Recv: OK \par 11-08-1995 14:49:30.14 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 EnableCallerID commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:30.14 - Send: at-sdr=7 \par 11-08-1995 14:49:30.27 - Recv: OK \par 11-08-1995 14:49:30.27 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 EnableDistinctiveRing commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:30.27 - Send: ATS0=0 \par 11-08-1995 14:49:30.41 - Recv: OK \par 11-08-1995 14:49:30.41 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Monitoring command sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:44.25 - Recv: RING1 \par 11-08-1995 14:49:44.25 - Interpreted response: Distinctive Ring A \par \par \pard\plain \widctlpar \f4\fs20 Incoming ring. Since distinctive ringing is enabled, distinctive ring is reported. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:46.90 - Answering the voice call. \par 11-08-1995 14:49:46.90 - Send: at#cls=8 \par 11-08-1995 14:49:47.16 - Recv: OK \par 11-08-1995 14:49:47.16 - Interpreted response: Ok \par 11-08-1995 14:49:47.16 - Send: at#vls=0 \par 11-08-1995 14:49:47.31 - Recv: OK \par 11-08-1995 14:49:47.31 - Interpreted response: Ok \par 11-08-1995 14:49:47.31 - Send: at#vbt=1 \par 11-08-1995 14:49:47.45 - Recv: OK \par 11-08-1995 14:49:47.45 - Interpreted response: Ok \par 11-08-1995 14:49:47.45 - Send: at#vsr=7200 \par 11-08-1995 14:49:47.59 - Recv: OK \par 11-08-1995 14:49:47.59 - Interpreted response: Ok \par 11-08-1995 14:49:47.59 - Send: at#vbs=4 \par 11-08-1995 14:49:47.73 - Recv: OK \par 11-08-1995 14:49:47.74 - Interpreted response: Ok \par 11-08-1995 14:49:47.74 - Send: ats30=60 \par 11-08-1995 14:49:47.88 - Recv: OK \par 11-08-1995 14:49:47.88 - Interpreted response: Ok \par 11-08-1995 14:49:47.88 - Send: ata \par \par \pard\plain \widctlpar \f4\fs20 VoiceAnswer commands sent to modem. This happens in response to the TAPI function lineAnswer. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.11 - Recv: VCON \par 11-08-1995 14:49:48.11 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 Voice connect response. The voice connect response is normally mapped to an OK response. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.11 - Issuing Speakerphone command. \par 11-08-1995 14:49:48.11 - Send: at#vls=6 \par 11-08-1995 14:49:48.26 - Recv: OK \par 11-08-1995 14:49:48.26 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 SpeakerphoneEnable commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.26 - Send: at#vls=6 \par 11-08-1995 14:49:48.41 - Recv: OK \par 11-08-1995 14:49:48.41 - Interpreted response: Ok \par 11-08-1995 14:49:48.41 - Send: at#spk=0,,, \par 11-08-1995 14:49:48.55 - Recv: OK \par 11-08-1995 14:49:48.55 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 SpeakerphoneMute commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.55 - Send: at#vls=6 \par 11-08-1995 14:49:48.69 - Recv: OK \par 11-08-1995 14:49:48.69 - Interpreted response: Ok \par 11-08-1995 14:49:48.69 - Send: at#spk=,0,3 \par 11-08-1995 14:49:48.84 - Recv: OK \par 11-08-1995 14:49:48.84 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 SpeakerphoneSetVolumeGain commands sent to modem \par The above commands (Speaker phoneEnable, SpeakerphoneMute, and SpeakerphoneSetVolumeGain) are sent in response to the TAPI call phoneSetHookSwitch(hPhone, PHONESHOOKSWITCHDEV_SPEAKER, PHONEHOOKSWITCHMODE_SPEAKER), which takes the speakerphone off hook, and mutes it. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.84 - Voice Modem Wave Open. \par \par \pard\plain \widctlpar \f4\fs20 waveOutOpen/waveInOpen called \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.85 - Setting wave format. \par 11-08-1995 14:49:48.85 - Send: at#vls=0 \par 11-08-1995 14:49:48.99 - Recv: OK \par 11-08-1995 14:49:48.99 - Interpreted response: Ok \par \par \pard\plain \widctlpar \f4\fs20 LineSetPlayFormat commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:48.99 - Starting wave play/record. \par 11-08-1995 14:49:48.99 - Send: at#vtx \par 11-08-1995 14:49:49.17 - Recv: CONNECT \par 11-08-1995 14:49:49.17 - Interpreted response: Connect \par \par \pard\plain \widctlpar \f4\fs20 StartPlay commands sent to modem. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:49.40 - Received DLE Raw=117, Translated=255. \par \par \pard\plain \widctlpar \f4\fs20 DLE received from modem. The Raw value is the actual value received, and the Translated value is the value Unimodem has mapped it to. See the DLE translation table in "Interpreting Modem Event Logs." In this example, the DLE is translated to 255, which means that Unimodem/V ignores this DLE. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:49:54.78 - Ending wave play/record. \par 11-08-1995 14:49:54.78 - Voice Modem Wave Close. \par \par \pard\plain \widctlpar \f4\fs20 waveInClose/waveOutClose has been called. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 . \par . \par . \par 11-08-1995 14:50:41.48 - Received DLE Raw=49, Translated=1. \par \par \pard\plain \widctlpar \f4\fs20 DLE received from modem. This is translated to the DTMF digit 1. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:50:41.51 - Ending wave play/record. \par 11-08-1995 14:50:41.51 - Voice Modem Wave Close. \par \par \pard\plain \widctlpar \f4\fs20 waveInClose/waveOutClose has been called. \par \pard\plain \s44\sl-220\slmult0\widctlpar\tx390\tx780\tx1170\tx1560\tx1950\tx2340\tx2730\tx3120\tx3510\tx3900\tx4290\tx4680\tx5070\tx5460\tx5850\tx6240\tx6630 \f51\fs16 11-08-1995 14:50:41.94 - Received DLE Raw=35, Translated=15. \par \par \pard\plain \widctlpar \f4\fs20 DLE received from modem. This is translated to the DTMF digit #. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282558}{\*\bkmkstart _Toc342282655}STEP 7 -- Getting Modem Certification from WHQL{\*\bkmkend _Toc342282558}{\*\bkmkend _Toc342282655} \par \pard\plain \widctlpar \f4\fs20 Get the Microsoft Windows Hardware Quality Labs (WHQL) Modem Test Kit which gives step-by-step instructions for submitting your modem and INF file to WHQL for certification testing. During certification testing, you will get technical feedback on problems found during the testing. \par When the certification tests are completed, you will get a Test Report. \par When the certification tests are passed, you will get \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab A signed Windows Logo License Agreement and a Logo Kit containing camera ready artwork. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Addition of the modem product on the Windows 95 and/or Windows NT Hardware Compatibility Lists (HCL). \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab An opportunity to distribute your INF file through the Windows Driver Library (WDL). \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \pard\plain \widctlpar \f4\fs20 To obtain the WHQL information about the latest modem certification tests, send mail to whqlinfo@microsoft.com. They get an auto-notification message telling them to call the fax-back # 206-635-2222 and entering doc # 869 (for modem IHVs). This doc has step- by-step instructions for the IHVs on how to proceed. \par \pard\plain \s1\li-1800\sb200\sa80\sl-440\slmult0\keepn\widctlpar \b\f16\fs40 {\*\bkmkstart _Toc342282559}{\*\bkmkstart _Toc342282656}STEP 8 -- Distributing Your INF File{\*\bkmkend _Toc342282559}{\*\bkmkend _Toc342282656} \par \pard\plain \widctlpar \f4\fs20 Since Windows 95 contains pre-existing modem INF files, care should be taken to avoid possible conflicts. If you plan to provide INF files for new modems not current ly part of Windows 95 follow these steps. For information relevant to distributing your modem INF file on a diskette, see the topic "Key Modem INF File Issues." \par \pard\plain \s45\fi-280\li280\sa80\widctlpar\tx280 \f4\fs20 {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Users will normally install new INF files from a floppy disk or INF downloaded from your company BBS or other distribution point. For a new modem not currently listed in Windows 95, create an INF containing that modem exclusively. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Carefully search all pre-existing Windows 95 INFs for all new modem IDs in the new modem using the batch file outlined above or a suitable grep search utility. If rank 1 ID matches are found in other INF files, review the section above on resolving rank 1 ID matches. This is a good reason for modem manufacturers to change modem ID strings for each new modem released so that a simple rank 0 (unique) ID can be assigned to the new INF. In checking for matching ID strings you MUST check for ALL ID strings which may be present in the new modem. For exam ple, PCMCIA modems have both tuple ID strings and Unimodem ID strings. Plug and Play modems likewise have more than one ID string and all must be checked and listed by appropriate INF ID rank. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab The new INF should contain entries covering ONLY that modem and should not contain entries for modems already listed in Windows 95. When a customer is prompted for a disk or directory from which to install the new INF, Windows 95 will automatically copy the new INF file to the correct INF subdirectory and rename it using the format OEM.INF. Thus a permanent copy of the new INF file is stored with Windows 95. For this reason, copying the new file explicitly to the INF subdirectory is not necessary. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab DO NOT confuse the use of the CopyFiles entry discussed above with this process of copying and creating the OEM. INF. The CopyFiles statement is only used for copying special VXD and other drivers which a modem might need. For example, some mod ems use a special parallel port driver or DSP-based driver. Copyfiles is used to transfer those drivers to Windows 95. \par {\field\flddirty{\*\fldinst SYMBOL 117 \\f "MSIcons" \\s 9.5 \\h }{\fldrslt }}\tab Send Microsoft a copy of the new INF for potential inclusion in the Microsoft WDL (Windows Drivers Library) and subsequent updates of Windows 95. \par \pard\plain \s40\qr\sl-160\slmult0\widctlpar \f4\fs12 \par \par }