import base64
import subprocess


exe_bin = "e??420s#R400000000000{}h%0RR91pb`K800000KmY&$00000Fv|o00000000000Kma%Z2>?I<9snHx1^@s61ONa4KmY&$00000KmY&$00000KmY&$00000_yGU_00000_yGU_000002mk;8000000{{R31ONa4I066w00000I066w00000I066w000008~^|S000008~^|S000000RR91000000RR911poj5000000000000000000000000000000Ashez00000Ashez00000001BW000000RR911^@s6C>;O*00000C><aG00000C><aG00000P@e<<00000ke>(u00000001BW000000ssI21^@s6Kpg-800000Kph|e00000Kph|e000005CQ-I000005CQ-I000002mk;8000001ONa41ONa4R004100000R004100000R004100000L;wH)00000L;wH)000001ONa400000P~~)F1ONa4)EEE&00000)EEE&00000)EEE&00000bN~PV00000bN~PV000001ONa400000QRQ@G1^@s6000000000000000000000000000000000000000000000000005C8xG00000Qss1H1ONa4C>;O*00000C><aG00000C><aG00000*a83m00000*a83m000000RR9100000FKlUIHZ(76WG!rIZgqGqcsMpKHZ(4CZ!R(b1ONa45C8xG0RR91M^04$000000{{R30ssI2000001ONa46aWAK0{{R3M^04$gW=i(WwlUY;7f06KTK7=)(GSI0ssI26#xJL0RR911^@s6001BWfB_Hy6#xJL761SMDIJU)XH{Vk000000000000000000000000000000Z2$lO5&!@I00000000000000000000I{^RyA^-pY000000000000000000003jqKC5&!@I00000000000000000000AOQdX5&!@I00000000000000000000836zQ5&!@I00000000000000000000{r~^~5&!@I00000000000000000000h5!Hn5&!@I00000000000000000000q5uE@5&!@I00000000000000000000=Kufz5&!@I00000000000000000000H30ws5&!@I00000000000000000000r~m)}5&!@I00000000000000000000N&x@>5&!@I00000000000000000000jQ{`u5&!@I000000000000000000009{>OVAOHXW00000000000000000000&Hw-a5&!@I00000000000000000000QUL$}5&!@I000000000000000000005C8xGAOHXW00000000000000000000I{*LxAOHXW00000000000000000000E&%`l5&!@I00000000000000000000RR9105&!@I000000000000000000005&-}J5dawgfV?CC000002mk;800000_y7O^5dawgkh~-S000002mk;8000000BmVub97{5D=RK@Z!R_fUtec!Z*E_6bYXIIUta)UNmNZ=WMy(?XK8bEWpY$aLu_wuWmI8eY-IpnNmNZ=a%E>}b97~LR82!{Z*FB&VPb4$0AE^8Q*=0KZ*yN_VRL0PNp5L$L@`Bn0AE^DbTKzyUvy}4Z+Bl}VPs!nY;131b^u>mWNc7&0AF8ccz9oMWpZ<GZeeU`ba`KPFaTd#Zg*_}Us_I6bU0~mb6;X%b7eG1ZfSHwF-3L&Y-wU=V`E=)E^}`#F#umxZg**JWM5Kcb9HTH0BmVuV=i-VE;ayPUvqR}V{2byXlq|)VQFjtb97{BZUA3jV|Za-VRU79X><T>Wo>h1bO3X7WN&qJ0BvP$V{mx@UteuyZEbIMWnW`xYXD|<a%psB0A_M!VPpVbUt@S-UuJ1;VQgu7WdLnuZEbIMWdL7aY-wU+UvqR}a&%v9VQFpvM?*tjGcGUyLs(crLP=jSE;9f}Oi4mRSXf^(E;Il~Oi4mRUotK<07pzoLPK9NE-^F!M@&gVLtip3GcGg$M@&gVLtip3GA=a$000930ssO41ONp90ssR50{{j90ssR50ssd9000O80ssI2000620{{X50ssI20RRC2zyJUM5C8xGAOHXWP$qc`000O8WB~vG000000RRF30RR915C8xGFaQ7m)30j<000L7YykiO5C8xGbSaVu00093cL4wZ000000RRL5-2eap5C8xG000006lrM<000I6g8={l5C8xGl#!MO000F5jR61v5C8xGbQx(0000C4m;nF)5C8xGbsA|200062qyYc`00000C><aG000002mk;800000pc4Q900000FdZNO000002mk;800000FcJU&00000I2|AW000002mk;800000U=siU000002p}K;000002mk;8000002p}K;00000XuKo<000002mk;800000ARr(B00000&>tWG000001^@s60ssI20000000000*dHJO000001^@s64gdfE0000000000;2$6W000001^@s65C8xG0000000000=pP^e000001^@s65dZ)H0000000000@E;%m000001^@s65&!@I0000000000_#Yqu000001^@s66aWAK0000000000aJ(b{000000RR914FCWD0000000000fV?CC000001poj56#xJL0000000000kh~-S000001poj5761SM0000000000XdfT|000002LJ#70RR910000000000a33H5000002LJ#70{{R30000000000cpo4D000002LJ#71ONa40000000000fFB?L000002LJ#71poj50000000000h#w#T000002LJ#71^@s60000000000kRKob000002LJ#72LJ#70000000000m>(bj000002LJ#72mk;80000000000pdTOr000002LJ#72><{90000000000s2?Bz000002LJ#73IG5A0000000000upb}*000002LJ#73jhEB0000000000xE~+@000002LJ#73;+NC0000000000z#kw0000002LJ#74*&oF0000000000$R8j8000002LJ#76951J0000000000NQ3MMNQ(vS6(9geg}`(I|IkQ-#0bLx0000000000|20AtAOQa*L=_+a4<A4P|0O~dAOL6p0002#;Q#;s|0OyVAOL6q0002#(EtDc|0OaNAOL6r0002#!2kdM|0OCFAOL6s0002#u>b%6|0N<7AOL6t0002#p#T5>|0Nm~AOL6u0002#kpKVx|0NO?AOL6v0002#fdBvh|0N0)AOL6w0002#aR2}R|0MzyAOL6x0002#VE_OB|0VhqAOL6y0002#Q2+n`|0VJiAOL6z0002#K>z>$|0U`aAOL6!0002#F#rGm|0UuSAOL6#0002#ApigW|0UWKAOL2N0000000000L03UmK~+IiRZ~cfEswDz07!xCXbC+4NQ*Uzu_ypYiR)xYiv%So0000;iG(Cr2|WNYz(|V)WU(j!NICEigaQTt01vhhfcgq_3xN6{bt7gEA4C8ENQ1xuNQnhKu_yo!wh(~&Aaw13`U-UDNICFyz(|cy6i7MNcTz|x#z>7l7_lS(xex#Z07;4TNQv@DiN@%q{{R0<ja(%FNQ({Wup|Jw000C4Oex~N0RR91NQvL*<o^HvNCCr0i5=pwC;-L-07!`~(6A@~NQ)K8uqXfzwgNmY4}?7h002BM501D6002md(J}T&gTVnY(hna1jTDlD;15WN4V$ni07!$u0gV(;54J)7JTHIbK!o;m0{7ZTW7<fC+Yf|$1poj@xc~qE|NsC0KS(*l4~L-z002ylB%J^N002yh=jb;6|Nlsd!bpikBrq|+4<A4P#{_}^0000;gTMhuIm31ENQ-<VFieTyNCEgrImbweL?jpwgv|f|08EV~7_cM&NQwIoA4C8ENQ*TQuqXgXi#-CcC;&(~_YZ{m0{{RIwg)^4bObygbuLJaM*(Io4<Cd800000NQnj6uP6Wywh%~($4G;~0f71-bn1Zm3UuX2IsSCFNR3AnNIAw2h9Cm~07#1!tgk2l#{&QW000lR0z54bgyaGM05SGFFMc#ggTetZ$qyfZ00000jSPu{;15WN6??BJ07!$v0gVhui3<<5LjOE3f8s!d_H+dI*@+8CgTn+!Ib0+d4~0Vi|Np<#rab`YDE<HcNQp!wC`gM$Bq&IYkkqC<01qF400000#{d8T002mXzywG+!gcXTjeI0P==TQz07#2OBrr%hL?jpwgwX&107!{MBsfTkL?jRoA4C8ENQ*=y5Q`Xt`vDJxoB#j-G08<S_C+!ONMplAG31MEgg|BwA4C8EiP%Ad!~vQ2{YYcbJ8YCdNQu*Q>r6TEL5al=gy#SN06~c^MTuqvNrT1+L4*APb-qnG_jEu>V+Tl!bR;N9jSPm10foR1kAndK07;Ek2<sXTA4C8ENMiy>gTe?%jSPm10foR1k7EG<0E55*OgZw20d?U`h5vL2Oo{*K9Q^<PNP|Qq5ClkzL?jSMIYcBF4~0Je|NlshH8TnT07#8Js1YCl=z|CV07#8JoDm=Zz6t;U0O&Fa002mfd?YC7*!%zgNP~PNFaUH4NQ-<VFzCkn|Nk+-NQ=BASP4A<WJohSB`5#@01t&*0{{R>fy8JDJpfx>L0myyL0&;$!w(+-Oo{MJDfmc<!bpikBp^t^`U6OX(hr240000;jRX=%Il@SZL?j3ghGzi)07%C~BnbHb|Nlsfd?X0yX#4;FNQ+b?AV>kiO*!|8DnyB51P_GJ0RR9=jaLXsDb_L4Nx|*|PK`A62mk;84<A4PNs9~@NQn#(NQ1%%NjcVa?@0m1NrT1+O@;q-5=@EzNQp!wAn5-3|NlsfL?j?ci%cX4Nr}fu0m12Y{{R1G4<Cd800000NXJAZ2nYZG0O@f5|Nmx?Oo{*K$ol{POp8P$7)*;yBsej^Nn<fcWBBOt0{{R?gTVw%ImmVFgXjSdgf;;H07#8B?Faw>NR2%~5Fh~P90vdZ>6HHe|45BW0Z54rtgI*i54J)9JTDK9Kmh;%NQuh60RR91>Hhrx|41qRxex#Z07;4VNQv@DiT+H9=T41mH2~-p`v3n(iw$0^BmlYq00aQO0RR91OeykAiSOuH`v3n)0mVp-6;G@r08EK3P^>5bLB>S@07!|g000C4Oo`>`i2VQmNWcI8|NsC0{~t&>_z#DM{{R0mz(|99BnSWxgp2<F|46~&1W1WgBnatq{{R0EA4C8Exex#Z05Q@`iRb8%`Tze&iw)YVBmlYq00aQO0RR91Oo`{{*!lneNCD_fiRVa(1=Fi20LB0S54J@BNQtcg00aO?i#5KhC;&VP4}`$`|NlH74}`e;|NrUS`~Uw*iN@(w{{R0-jWwqS002mhJqr&Y0O;lg008M;{r~?+jY<JXi4AtEC;$((LIFH44~~)m006!L0002#uloQ0G0Exl`~Uwj(zy@-1OP~h-{|W2|Nlsf4Ku4G0KNeL006oG00aO?iQnik`Tze&0q97H1uv^80LB0S54J@BNQtcg00aO?i!~anC;&VlbObyKbva0l1p})j0O_{*|Np<#rab`Y)cF7ZNXJAZFaQ7m07!{MBq&J7L?jph0002#mHYqyG1BQu`v3n(jRnf8Bmn7^`TzguK=}XvO@;qRiNkaVOo{*KfcXFaNQ-<VDCl<h|NlsXd?YXcbP7m|d?YaFWcdI8NQvL*y!ikBNQuMi=}3vg>)hyV`2YV%iNov24<Cd800000NR2&tswe<RgX{?CaQOfKNQ*tO4IltWjTO2LAOJ{>HCw7E0O$tz|Nlsh4L_<R0J;DG1OPGiNQuwr!1w?ENR1Vd4IltWjWwbTAOJ{>J*xo#07!`i6sjlyNQng%swe<RgTx5w#P|RI4<A4PG3`l-(OyW2;z)z!@K97tjRo2T002mh4PylW07#8JJox|r{}mPuAOQ3aA4C8ENR2(AsU!eZNR0)VsU!eMIrvD4<#ZWHiv{WoAOJ{(z;q2=|KMgW4<Cd800000UBeF_KmcYg4<Cd800000NR2&VsU!eMjWt@SBmh-NDgH=_<w(K)14xPRNWthoNCC!3(f)K8NQ(ur3?KkVg}`(SUH{-_4<Cd800000UBeF_KmcYg4<Cd800000fITs(Bme+)FGzzuUko4s098nd<#Y^4i#>`AAOPrX_y7OsNdN!;#svwfBme<j!w(;T00000^TTEjA4C8ERY-~DUFl~3|NmwWA4C8ENQwGL!TLW)iO@(f_(&<xNQL%z6G(;sbQVa3_H`Na!w(;T00000NcY}Ih5vO3NQv;n4<A4PNQuWW$w&$J^GFZ8$n!`Ky#Gkk_zxcdG0F2t54_Gu)BZ>~#(fD$iNZ*U@JNZ)NGZm3<B9o5)8NBqE)O4s0000001qDkNQ;+9oCE+!iw#1kBmlkv0000;Df;P^_W%D6A4C8EL03UmNs0DBRY6oqiS$)dNQwPOgX|bci%$qhiyugd$Vn;QNGaGz!T175g}@Jlv;Y7ANR2cANyo?h|Ns9;Iq(mLxBvhEOo{(Ui4-L0-1YzeNQ+$nNQ+GfO^M)0ixebDiN#3)$4M#JivmnJ<3ou=H2`!VOo_rsiQY_!??{PEBnV821SII;_5c4!i%cX4Op630Nr}!+jYI_mO)2I~IpK5>Oo_)#iSkT|=IBcG|Nlvez)b<hNQK*U2uO+F=vVds|4fN(08EK>2uz865J-c>7+YOITtQtyUO`{O4<A4Pz5xIL08EWMwEzGB0O?Nu|NmwWA4C8ENVxz1|NsC0|364M#t(-z|Ns9;h4yvTO^NVDG5<v|?deAU|Nmw#4<Cd800000K~z;pjh7e+JpfZkiTg-{>@Z|Viv%So0000;i9{qQF~CTP_zxcd#{d8T002mXzywG+!gcXXjbtPYNR4bH5J<;FBoF`q002nGL?jph0000;$3!F`00000G4{tqBn$!o002R_0ssI24<A4PNn^lBjRb>>5QWkYgr@)i07#2`BoIl7@<fY7Bn(L@`bok10!4+=eo#qcz>615jSPc9I}v|EiO@k0ufRP;LJt6cHAsz51VMx90Zxq+k?S1~A4C8EixELP5q}$r&`5*91VIn4z&%Am4*-7(NSH}E%83+%b>2aPzyU#l_(ehw07QvIBn%IZaR2}RNQM7&1?cAU|NlsfL?kF=NHYW_C;$KebzMk<#4uZ3L0rQRA4C8ENIP^SAVi4(bQVO321tX(1W1W=BpB&F|Ns9FA4C8EOo`%1iSOur{r~?+i*zIy=_LRE|455`BoIi6!$^hybOq>v^Z)-yiQnki^Z)<ol=J`p4<A4PK~_OkOpUhy00aO*R8>id{ZmMbmq?rh07!}TNR2{3Njb)LdqfYmWdKEl<a9kri=9ZE1OP~b#Q|myA4C8ENR2}QNjb)LFGPqVNsEO@oCE+!gT(<zjaUImiJeHC1OP-2wq^fCgyeP9TU|k1L0v&!!w(+-NQ(^tr6d4IiQ2va0000?De6p#?@Wp7=u7ke|4oUlNSp)!>#JsvNQ({Gq$B`HDf+$v0002!Ec5^WO^K~YoCE;rW&i*GK~z;pjfVgL1OP~juSlE(08>GU^hk;ONR3qiNIAlD7et6<07!#_NSp)!0b5-`T*GD$A4C8ENQ(`Dq$B`HiR!)q0000;Df&o>{pil}|Nlsdn@F4l0PDsNA4C8EL03UmNr~4%RY6otjV1O3AOKZJjV=BJAOKTAiTz25_Dm_|NQ3MMNWuLB=%4Zb|44=HbRaR?4<Cd800000Oo{qTiS|T^??L|*+(?7N0Z2LBb?Qii#0XnmL0myyL0&;$!;oe!4<Cd800000^TPlDNQ3MMNQ1-(!vFvP0RRF3aA9e3cWHBFAY*TEa%pX40CQz@cWHBFAY*TEa%pX40B&z|AY*TEa%pX4000000UHB5Z~y=R4FCWDJn{ekyZ`_I9P<DF<NyEwEb{;VI066wT>1b1i~;}v%=!QSi~s-t-1`6jGywnrT>Jn39033TeEa|ZNC5x<to;A~lmP$$EdKxh%mDxZ?Ee4%3<3ZEO#lD?qyhi{y#N3I>;eD)6aWAK000000eVsZ0eBDr8w>{skO2n}6aWAK8~^|SIQjqoD*ylh00000000006aWAK000000eVsZ0eBDr8w>{skO2SyBme*a8~^|Sc<}%K-~a#s01gmF4j4)g3wH>B06!W#Dl;S^000006aWAKL;wH)F!BHY2mk;800000000008~^|S000000eVnOQUC#X5C@x$q9gzt8w>{skO2Sy6aWAKBme*aIQswp8vp<R1lIuo000005C8xGlmGw#p!xs*a{vGU00000NB{r;r~m)}Ec*ZdCIJ8d074EBj{-st7>)x)4j_#LLJla51w;-oh6X_nID-dA4p0KZ3Jy3y4lqFuC_)Y(LJk;04iG{P2t^A3GynhqoB#j-5c~iCd;tIe1Y-dJ074EBi~>Op7={B#4j_XBM-ET}3;_xbAVCfoK@Jc?4hTjIJOBUyECB!jSp5J0zyJUM074EBjsijs7>xr-4j_yKK@KQ}1w;-og9ZXy3Jxei4j@7f7(xyZLJkN-3jhEBC;$KeYykiO*!=(hTL1t6074EBi~>Op7={B+4j_XBTnY{tK@Jc?4hTmJPyhe`Kmh;%?C<~oC<g!l1kL~e074EBj{-st7>)x%4j_#LLJla51wjrlh6X_nID-dH4xp3t0RyrF3Jy3y4lqFuC_)Y(LJk;04iG{P2t*426aWAK>;V7($oBvLYybcN080)K0$dIVL;wH)1Ofm6p#1;;WdHyG074EBj{-st7>)x)4j_#LLJla51xOAsh6YFuID-dG4nT4aI6)3DK@KQF4j@7f7(xyZLJkN35C8xGOacG^$o&8R0ssI20000000000|Nj91|Nj9C&H@G90s!&?1pom5{{b?$0h0j$0Mi5onGOJi1&RWr4giw~1>g+;-w6ey4gkUmh5?ig0F?{{qYeP-45|SD000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000pc4Q900000FcJU&00000U=siU000000RR91000000RR91000000RR9100000zyJUM000000RR9100000-2eap000003;+NC00000@Cg6_000004FCWD00000lo$X20000082|tP00000C><aG000008vp<R000005C8xG000008UO$Q00000I2|AW000008~^|S000002mk;800000_5S~F00000m;wL*000001poj500000=mY=&000001^@s600000zybgO000003IG5A00000umJ!7000003jhEB000007ytkO000006#xJL0000000000000000{{R300000P#+)w000000ssI200000H~|0v000006aWAK000002LJ#7000007XSbN00000xCj6M000002LJ#700000Xa@iQ000002mk;800000Pyqk{000002><{9000007ytkO000009smFU000002mk;800000`~UxM000000RR9900000{{R1P00000$OZra00000|NsAQ000000{{R300000@c;jB00000m<9j<00000`TzfK000001poj5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000Kph|e0000000000000000000000000CJF!m00000HVOa$00000MhXA`00000Rtf+B00000W(oiR00000b_xIh00000h6(@x00000mI?p>00000rV0Q600000wh90M00000#tHxc00000)(QXs00000<_Z7+0000000000000000000000000000000000000000000000000000000000000000000000000002p}K;00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005C8xFfcGMF)%PNGB7YOGcYhPG%zqQH83zRHZU+SH!v_TI503UIWRCWFfcGNF)%POGB7YPGcYhQG%zqRH83zSHZU+TH!v_UI503VIWRCXFfcGOF)%PPGB7YQGcYhRG%zqSH83zTHZU+UH!v_VI503WIWRCYFfcGPF)%PQGB7YRGcYhSG%zqTH83zUHZU+VH!v_WI503XIWRCZFfcGQF)%PRGB7YSGcYhTG%zqUH83zVHZU+WH!v_XI503YIWRCaFfcGRF)%PSGB7YTGcYhUG%zqVH83zWHZU+XH!v_YI503ZIWRCbFfcGSF)%PTGB7YUGcYhVG%zqWH83zXHZU+YH!v_ZI503aIWRCcFfcGTF)%PUGB7YVGcYhWG%zqXH83zYHZU+ZH!v_aI503bIWRCdFfcGUF)%PVGB7YWGcYhXG%zqYH83zZHZU+aH!v_bI503cIWRCeFfcGVF)%PWGB7YXGcYhYG%zqZH83zaHZU+bH!v_cI503dIWRFWFfcJNF)%SOGB7bPGcYkQG%ztRH83$SHZU<TH!v|UI506VIWRFXFfcJOF)%SPGB7bQGcYkRG%ztSH83$THZU<UH!v|VI506WIWRFYFfcJPF)%SQGB7bRGcYkSG%ztTH83$UHZU<VH!v|WI506XIWRFZFfcJQF)%SRGB7bSGcYkTG%ztUH83$VHZU<WH!v|XI506YIWRFaFfcJRF)%SSGB7bTGcYkUG%ztVH83$WHZU<XH!v|YI506ZIWRFbFfcJSF)%STGB7bUGcYkVG%ztWH83$XHZU<YH!v|ZI506aIWRFcFfcJTF)%SUGB7bVGcYkWG%ztXH83$YHZU<ZH!v|aI506bIWRFdFfcJUF)%SVGB7bWGcYkXG%ztYH83$ZHZU<aH!v|bI506cIWRFeFfcJVF)%SWGB7bXGcYkYG%ztZH83$aHZU<bH!v|cI506dIWRFfFfcJWF)%SXGB7bYGcYkZG%ztaH83$bHZU<cH!v|dI506eIWRIXFfcMOF)%VPGB7eQGcYnRG%zwSH83(THZU?UH!w0VI509WIWRIYFfcMPF)%VQGB7eRGcYnSG%zwTH83(UHZU?VH!w0WI509XIWRIZFfcMQF)%VRGB7eSGcYnTG%zwUH83(VHZU?WH!w0XI509YIWRIaFfcMRF)%VSGB7eTGcYnUG%zwVH83(WHZU?XH!w0YI509ZIWRIbFfcMSF)%VTGB7eUGcYnVG%zwWH83(XHZU?YH!w0ZI509aIWRIcFfcMTF)%VUGB7eVGcYnWG%zwXH83(YHZU?ZH!w0aI509bIWRIdFfcMUF)%VVGB7eWGcYnXG%zwYH83(ZHZU?aH!w0bI509cIWRIeFfcMVF)%VWGB7eXGcYnYG%zwZH83(aHZU?bH!w0cI509dIWRIfFfcMWF)%VXGB7eYGcYnZG%zwaH83(bHZU?cH!w0dI509eIWRIgFfcMXF)%VYGB7eZGcYnaG%zwbH83(cHZU?dH!w0eI509fIWRLYFfcPPF)%YQGB7hRGcYqSG%zzTH83+UHZU_VH!w3WI50CXIWRLZFfcPQF)%YRGB7hSGcYqTG%zzUH83+VHZU_WH!w3XI50CYIWRLaFfcPRF)%YSGB7hTGcYqUG%zzVH83+WHZU_XH!w3YI50CZIWRLbFfcPSF)%YTGB7hUGcYqVG%zzWH83+XHZU_YH!w3ZI50CaIWRLcFfcPTF)%YUGB7hVGcYqWG%zzXH83+YHZU_ZH!w3aI50CbIWRLdFfcPUF)%YVGB7hWGcYqXG%zzYH83+ZHZU_aH!w3bI50CcIWRLeFfcPVF)%YWGB7hXGcYqYG%zzZH83+aHZU_bH!w3cI50CdIWRLfFfcPWF)%YXGB7hYGcYqZG%zzaH83+bHZU_cH!w3dI50CeIWRLgFfcPXF)%YYGB7hZGcYqaG%zzbH83+cHZU_dH!w3eI50CfIWRLhFfcPYF)%YZGB7haGcYqbG%zzcH83+dHZU_eH!w3fI50CgIWROZFfcSQF)%bRGB7kSGcYtTG%z$UH83<VHZU|WH!w6XI50FYIWROaFfcSRF)%bSGB7kTGcYtUG%z$VH83<WHZU|XH!w6YI50FZIWRObFfcSSF)%bTGB7kUGcYtVG%z$WH83<XHZU|YH!w6ZI50FaIWROcFfcSTF)%bUGB7kVGcYtWG%z$XH83<YHZU|ZH!w6aI50FbIWROdFfcSUF)%bVGB7kWGcYtXG%z$YH83<ZHZU|aH!w6bI50FcIWROeFfcSVF)%bWGB7kXGcYtYG%z$ZH83<aHZU|bH!w6cI50FdIWROfFfcSWF)%bXGB7kYGcYtZG%z$aH83<bHZU|cH!w6dI50FeIWROgFfcSXF)%bYGB7kZGcYtaG%z$bH83<cHZU|dH!w6eI50FfIWROhFfcSYF)%bZGB7kaGcYtbG%z$cH83<dHZU|eH!w6fI50FgIWROiFfcSZF)%baGB7kbGcYtcG%z$dH83<eHZU|fH!w6gI50FhIWRRaFfcVRF)%eSGB7nTGcYwUG%z(VH83?WHZV0XH!w9YI50IZIWRRbFfcVSF)%eTGB7nUGcYwVG%z(WH83?XHZV0YH!w9ZI50IaIWRRcFfcVTF)%eUGB7nVGcYwWG%z(XH83?YHZV0ZH!w9aI50IbIWRRdFfcVUF)%eVGB7nWGcYwXG%z(YH83?ZHZV0aH!w9bI50IcIWRReFfcVVF)%eWGB7nXGcYwYG%z(ZH83?aHZV0bH!w9cI50IdIWRRfFfcVWF)%eXGB7nYGcYwZG%z(aH83?bHZV0cH!w9dI50IeIWRRgFfcVXF)%eYGB7nZGcYwaG%z(bH83?cHZV0dH!w9eI50IfIWRRhFfcVYF)%eZGB7naGcYwbG%z(cH83?dHZV0eH!w9fI50IgIWRRiFfcVZF)%eaGB7nbGcYwcG%z(dH83?eHZV0fH!w9gI50IhIWRRjFfcVaF)%ebGB7ncGcYwdG%z(eH83?fHZV0gH!w9hI50IiIWRUbFfcYSF)%hTGB7qUGcYzVG%z+WH83_XHZV3YH!wCZI50LaIWRUcFfcYTF)%hUGB7qVGcYzWG%z+XH83_YHZV3ZH!wCaI50LbIWRUdFfcYUF)%hVGB7qWGcYzXG%z+YH83_ZHZV3aH!wCbI50LcIWRUeFfcYVF)%hWGB7qXGcYzYG%z+ZH83_aHZV3bH!wCcI50LdIWRUfFfcYWF)%hXGB7qYGcYzZG%z+aH83_bHZV3cH!wCdI50LeIWRUgFfcYXF)%hYGB7qZGcYzaG%z+bH83_cHZV3dH!wCeI50LfIWRUhFfcYYF)%hZGB7qaGcYzbG%z+cH83_dHZV3eH!wCfI50LgIWRUiFfcYZF)%haGB7qbGcYzcG%z+dH83_eHZV3fH!wCgI50LhIWRUjFfcYaF)%hbGB7qcGcYzdG%z+eH83_fHZV3gH!wChI50LiIWRUkFfcYbF)%hcGB7qdGcYzeG%z+fH83_gHZV3hH!wCiI50LjIWRXcFfcbTF)%kUGB7tVGcY$WG%z<XH83|YHZV6ZH!wFaI50ObIWRXdFfcbUF)%kVGB7tWGcY$XG%z<YH83|ZHZV6aH!wFbI50OcIWRXeFfcbVF)%kWGB7tXGcY$YG%z<ZH83|aHZV6bH!wFcI50OdIWRXfFfcbWF)%kXGB7tYGcY$ZG%z<aH83|bHZV6cH!wFdI50OeIWRXgFfcbXF)%kYGB7tZGcY$aG%z<bH83|cHZV6dH!wFeI50OfIWRXhFfcbYF)%kZGB7taGcY$bG%z<cH83|dHZV6eH!wFfI50OgIWRXiFfcbZF)%kaGB7tbGcY$cG%z<dH83|eHZV6fH!wFgI50OhIWRXjFfcbaF)%kbGB7tcGcY$dG%z<eH83|fHZV6gH!wFhI50OiIWRXkFfcbbF)%kcGB7tdGcY$eG%z<fH83|gHZV6hH!wFiI50OjIWRXlFfcbcF)%kdGB7teGcY$fG%z<gH83|hHZV6iH!wFjI50OkIWRadFfceUF)%nVGB7wWGcY(XG%z?YH840ZHZV9aH!wIbI50RcIWRaeFfceVF)%nWGB7wXGcY(YG%z?ZH840aHZV9bH!wIcI50RdIWRafFfceWF)%nXGB7wYGcY(ZG%z?aH840bHZV9cH!wIdI50ReIWRagFfceXF)%nYGB7wZGcY(aG%z?bH840cHZV9dH!wIeI50RfIWRahFfceYF)%nZGB7waGcY(bG%z?cH840dHZV9eH!wIfI50RgIWRaiFfceZF)%naGB7wbGcY(cG%z?dH840eHZV9fH!wIgI50RhIWRajFfceaF)%nbGB7wcGcY(dG%z?eH840fHZV9gH!wIhI50RiIWRakFfcebF)%ncGB7wdGcY(eG%z?fH840gHZV9hH!wIiI50RjIWRalFfcecF)%ndGB7weGcY(fG%z?gH840hHZV9iH!wIjI50RkIWRamFfcedF)%neGB7wfGcY(gG%z?hH840iHZV9jH!wIkI50RlIWRdeFfchVF)%qWGB7zXGcY+YG%z_ZH843aHZVCbH!wLcI50UdIWRdfFfchWF)%qXGB7zYGcY+ZG%z_aH843bHZVCcH!wLdI50UeIWRdgFfchXF)%qYGB7zZGcY+aG%z_bH843cHZVCdH!wLeI50UfIWRdhFfchYF)%qZGB7zaGcY+bG%z_cH843dHZVCeH!wLfI50UgIWRdiFfchZF)%qaGB7zbGcY+cG%z_dH843eHZVCfH!wLgI50UhIWRdjFfchaF)%qbGB7zcGcY+dG%z_eH843fHZVCgH!wLhI50UiIWRdkFfchbF)%qcGB7zdGcY+eG%z_fH843gHZVChH!wLiI50UjIWRdlFfchcF)%qdGB7zeGcY+fG%z_gH843hHZVCiH!wLjI50UkIWRdmFfchdF)%qeGB7zfGcY+gG%z_hH843iHZVCjH!wLkI50UlIWRdnFfcheF)%qfGB7zgGcY+hG%z_iH843jHZVCkH!wLlI50UmIWaIWFflMNF)=VOGBGePGchnQG%+wRH8C(SHZd?TH!(0UI599VIWaIXFflMOF)=VPGBGeQGchnRG%+wSH8C(THZd?UH!(0VI599WIWaIYFflMPF)=VQGBGeRGchnSG%+wTH8C(UHZd?VH!(0WI599XIWaIZFflMQF)=VRGBGeSGchnTG%+wUH8C(VHZd?WH!(0XI599YIWaIaFflMRF)=VSGBGeTGchnUG%+wVH8C(WHZd?XH!(0YI599ZIWaIbFflMSF)=VTGBGeUGchnVG%+wWH8C(XHZd?YH!(0ZI599aIWaIcFflMTF)=VUGBGeVGchnWG%+wXH8C(YHZd?ZH!(0aI599bIWaIdFflMUF)=VVGBGeWGchnXG%+wYH8C(ZHZd?aH!(0bI599cIWaIeFflMVF)=VWGBGeXGchnYG%+wZH8C(aHZd?bH!(0cI599dIWaIfFflMWF)=VXGBGeYGchnZG%+waH8C(bHZd?cH!(0dI599eIWaLXFflPOF)=YPGBGhQGchqRG%+zSH8C+THZd_UH!(3VI59CWIWaLYFflPPF)=YQGBGhRGchqSG%+zTH8C+UHZd_VH!(3WI59CXIWaLZFflPQF)=YRGBGhSGchqTG%+zUH8C+VHZd_WH!(3XI59CYIWaLaFflPRF)=YSGBGhTGchqUG%+zVH8C+WHZd_XH!(3YI59CZIWaLbFflPSF)=YTGBGhUGchqVG%+zWH8C+XHZd_YH!(3ZI59CaIWaLcFflPTF)=YUGBGhVGchqWG%+zXH8C+YHZd_ZH!(3aI59CbIWaLdFflPUF)=YVGBGhWGchqXG%+zYH8C+ZHZd_aH!(3bI59CcIWaLeFflPVF)=YWGBGhXGchqYG%+zZH8C+aHZd_bH!(3cI59CdIWaLfFflPWF)=YXGBGhYGchqZG%+zaH8C+bHZd_cH!(3dI59CeIWaLgFflPXF)=YYGBGhZGchqaG%+zbH8C+cHZd_dH!(3eI59CfIWaOYFflSPF)=bQGBGkRGchtSG%+$TH8C<UHZd|VH!(6WI59FXIWaOZFflSQF)=bRGBGkSGchtTG%+$UH8C<VHZd|WH!(6XI59FYIWaOaFflSRF)=bSGBGkTGchtUG%+$VH8C<WHZd|XH!(6YI59FZIWaObFflSSF)=bTGBGkUGchtVG%+$WH8C<XHZd|YH!(6ZI59FaIWaOcFflSTF)=bUGBGkVGchtWG%+$XH8C<YHZd|ZH!(6aI59FbIWaOdFflSUF)=bVGBGkWGchtXG%+$YH8C<ZHZd|aH!(6bI59FcIWaOeFflSVF)=bWGBGkXGchtYG%+$ZH8C<aHZd|bH!(6cI59FdIWaOfFflSWF)=bXGBGkYGchtZG%+$aH8C<bHZd|cH!(6dI59FeIWaOgFflSXF)=bYGBGkZGchtaG%+$bH8C<cHZd|dH!(6eI59FfIWaOhFflSYF)=bZGBGkaGchtbG%+$cH8C<dHZd|eH!(6fI59FgIWaRZFflVQF)=eRGBGnSGchwTG%+(UH8C?VHZe0WH!(9XI59IYIWaRaFflVRF)=eSGBGnTGchwUG%+(VH8C?WHZe0XH!(9YI59IZIWaRbFflVSF)=eTGBGnUGchwVG%+(WH8C?XHZe0YH!(9ZI59IaIWaRcFflVTF)=eUGBGnVGchwWG%+(XH8C?YHZe0ZH!(9aI59IbIWaRdFflVUF)=eVGBGnWGchwXG%+(YH8C?ZHZe0aH!(9bI59IcIWaReFflVVF)=eWGBGnXGchwYG%+(ZH8C?aHZe0bH!(9cI59IdIWaRfFflVWF)=eXGBGnYGchwZG%+(aH8C?bHZe0cH!(9dI59IeIWaRgFflVXF)=eYGBGnZGchwaG%+(bH8C?cHZe0dH!(9eI59IfIWaRhFflVYF)=eZGBGnaGchwbG%+(cH8C?dHZe0eH!(9fI59IgIWaRiFflVZF)=eaGBGnbGchwcG%+(dH8C?eHZe0fH!(9gI59IhIWaUaFflYRF)=hSGBGqTGchzUG%++VH8C_WHZe3XH!(CYI59LZIWaUbFflYSF)=hTGBGqUGchzVG%++WH8C_XHZe3YH!(CZI59LaIWaUcFflYTF)=hUGBGqVGchzWG%++XH8C_YHZe3ZH!(CaI59LbIWaUdFflYUF)=hVGBGqWGchzXG%++YH8C_ZHZe3aH!(CbI59LcIWaUeFflYVF)=hWGBGqXGchzYG%++ZH8C_aHZe3bH!(CcI59LdIWaUfFflYWF)=hXGBGqYGchzZG%++aH8C_bHZe3cH!(CdI59LeIWaUgFflYXF)=hYGBGqZGchzaG%++bH8C_cHZe3dH!(CeI59LfIWaUhFflYYF)=hZGBGqaGchzbG%++cH8C_dHZe3eH!(CfI59LgIWaUiFflYZF)=haGBGqbGchzcG%++dH8C_eHZe3fH!(CgI59LhIWaUjFflYaF)=hbGBGqcGchzdG%++eH8C_fHZe3gH!(ChI59LiIWaXbFflbSF)=kTGBGtUGch$VG%+<WH8C|XHZe6YH!(FZI59OaIWaXcFflbTF)=kUGBGtVGch$WG%+<XH8C|YHZe6ZH!(FaI59ObIWaXdFflbUF)=kVGBGtWGch$XG%+<YH8C|ZHZe6aH!(FbI59OcIWaXeFflbVF)=kWGBGtXGch$YG%+<ZH8C|aHZe6bH!(FcI59OdIWaXfFflbWF)=kXGBGtYGch$ZG%+<aH8C|bHZe6cH!(FdI59OeIWaXgFflbXF)=kYGBGtZGch$aG%+<bH8C|cHZe6dH!(FeI59OfIWaXhFflbYF)=kZGBGtaGch$bG%+<cH8C|dHZe6eH!(FfI59OgIWaXiFflbZF)=kaGBGtbGch$cG%+<dH8C|eHZe6fH!(FgI59OhIWaXjFflbaF)=kbGBGtcGch$dG%+<eH8C|fHZe6gH!(FhI59OiIWaXkFflbbF)=kcGBGtdGch$eG%+<fH8C|gHZe6hH!(FiI59OjIWaacFfleTF)=nUGBGwVGch(WG%+?XH8D0YHZe9ZH!(IaI59RbIWaadFfleUF)=nVGBGwWGch(XG%+?YH8D0ZHZe9aH!(IbI59RcIWaaeFfleVF)=nWGBGwXGch(YG%+?ZH8D0aHZe9bH!(IcI59RdIWaafFfleWF)=nXGBGwYGch(ZG%+?aH8D0bHZe9cH!(IdI59ReIWaagFfleXF)=nYGBGwZGch(aG%+?bH8D0cHZe9dH!(IeI59RfIWaahFfleYF)=nZGBGwaGch(bG%+?cH8D0dHZe9eH!(IfI59RgIWaaiFfleZF)=naGBGwbGch(cG%+?dH8D0eHZe9fH!(IgI59RhIWaajFfleaF)=nbGBGwcGch(dG%+?eH8D0fHZe9gH!(IhI59RiIWaakFflebF)=ncGBGwdGch(eG%+?fH8D0gHZe9hH!(IiI59RjIWaalFflecF)=ndGBGweGch(fG%+?gH8D0hHZe9iH!(IjI59RkIWaddFflhUF)=qVGBGzWGch+XG%+_YH8D3ZHZeCaH!(LbI59UcIWadeFflhVF)=qWGBGzXGch+YG%+_ZH8D3aHZeCbH!(LcI59UdIWadfFflhWF)=qXGBGzYGch+ZG%+_aH8D3bHZeCcH!(LdI59UeIWadgFflhXF)=qYGBGzZGch+aG%+_bH8D3cHZeCdH!(LeI59UfIWadhFflhYF)=qZGBGzaGch+bG%+_cH8D3dHZeCeH!(LfI59UgIWadiFflhZF)=qaGBGzbGch+cG%+_dH8D3eHZeCfH!(LgI59UhIWadjFflhaF)=qbGBGzcGch+dG%+_eH8D3fHZeCgH!(LhI59UiIWadkFflhbF)=qcGBGzdGch+eG%+_fH8D3gHZeChH!(LiI59UjIWadlFflhcF)=qdGBGzeGch+fG%+_gH8D3hHZeCiH!(LjI59UkIWadmFflhdF)=qeGBGzfGch+gG%+_hH8D3iHZeCjH!(LkI59UlIWageFflkVF)=tWGBG$XGch<YG%+|ZH8D6aHZeFbH!(OcI59XdIWagfFflkWF)=tXGBG$YGch<ZG%+|aH8D6bHZeFcH!(OdI59XeIWaggFflkXF)=tYGBG$ZGch<aG%+|bH8D6cHZeFdH!(OeI59XfIWaghFflkYF)=tZGBG$aGch<bG%+|cH8D6dHZeFeH!(OfI59XgIWagiFflkZF)=taGBG$bGch<cG%+|dH8D6eHZeFfH!(OgI59XhIWagjFflkaF)=tbGBG$cGch<dG%+|eH8D6fHZeFgH!(OhI59XiIWagkFflkbF)=tcGBG$dGch<eG%+|fH8D6gHZeFhH!(OiI59XjIWaglFflkcF)=tdGBG$eGch<fG%+|gH8D6hHZeFiH!(OjI59XkIWagmFflkdF)=teGBG$fGch<gG%+|hH8D6iHZeFjH!(OkI59XlIWagnFflkeF)=tfGBG$gGch<hG%+|iH8D6jHZeFkH!(OlI59XmIWajfFflnWF)=wXGBG(YGch?ZG%-0aH8D9bHZeIcH!(RdI59aeIWajgFflnXF)=wYGBG(ZGch?aG%-0bH8D9cHZeIdH!(ReI59afIWajhFflnYF)=wZGBG(aGch?bG%-0cH8D9dHZeIeH!(RfI59agIWajiFflnZF)=waGBG(bGch?cG%-0dH8D9eHZeIfH!(RgI59ahIWajjFflnaF)=wbGBG(cGch?dG%-0eH8D9fHZeIgH!(RhI59aiIWajkFflnbF)=wcGBG(dGch?eG%-0fH8D9gHZeIhH!(RiI59ajIWajlFflncF)=wdGBG(eGch?fG%-0gH8D9hHZeIiH!(RjI59akIWajmFflndF)=weGBG(fGch?gG%-0hH8D9iHZeIjH!(RkI59alIWajnFflneF)=wfGBG(gGch?hG%-0iH8D9jHZeIkH!(RlI59amIWajoFflnfF)=wgGBG(hGch?iG%-0jH8D9kHZeIlH!(RmI59anIWjOXFfuSOF)}bPGBPkQGcqtRG%_$SH8L<THZm|UH!?6VI5IFWIWjOYFfuSPF)}bQGBPkRGcqtSG%_$TH8L<UHZm|VH!?6WI5IFXIWjOZFfuSQF)}bRGBPkSGcqtTG%_$UH8L<VHZm|WH!?6XI5IFYIWjOaFfuSRF)}bSGBPkTGcqtUG%_$VH8L<WHZm|XH!?6YI5IFZIWjObFfuSSF)}bTGBPkUGcqtVG%_$WH8L<XHZm|YH!?6ZI5IFaIWjOcFfuSTF)}bUGBPkVGcqtWG%_$XH8L<YHZm|ZH!?6aI5IFbIWjOdFfuSUF)}bVGBPkWGcqtXG%_$YH8L<ZHZm|aH!?6bI5IFcIWjOeFfuSVF)}bWGBPkXGcqtYG%_$ZH8L<aHZm|bH!?6cI5IFdIWjOfFfuSWF)}bXGBPkYGcqtZG%_$aH8L<bHZm|cH!?6dI5IFeIWjOgFfuSXF)}bYGBPkZGcqtaG%_$bH8L<cHZm|dH!?6eI5IFfIWjRYFfuVPF)}eQGBPnRGcqwSG%_(TH8L?UHZn0VH!?9WI5IIXIWjRZFfuVQF)}eRGBPnSGcqwTG%_(UH8L?VHZn0WH!?9XI5IIYIWjRaFfuVRF)}eSGBPnTGcqwUG%_(VH8L?WHZn0XH!?9YI5IIZIWjRbFfuVSF)}eTGBPnUGcqwVG%_(WH8L?XHZn0YH!?9ZI5IIaIWjRcFfuVTF)}eUGBPnVGcqwWG%_(XH8L?YHZn0ZH!?9aI5IIbIWjRdFfuVUF)}eVGBPnWGcqwXG%_(YH8L?ZHZn0aH!?9bI5IIcIWjReFfuVVF)}eWGBPnXGcqwYG%_(ZH8L?aHZn0bH!?9cI5IIdIWjRfFfuVWF)}eXGBPnYGcqwZG%_(aH8L?bHZn0cH!?9dI5IIeIWjRgFfuVXF)}eYGBPnZGcqwaG%_(bH8L?cHZn0dH!?9eI5IIfIWjRhFfuVYF)}eZGBPnaGcqwbG%_(cH8L?dHZn0eH!?9fI5IIgIWjUZFfuYQF)}hRGBPqSGcqzTG%_+UH8L_VHZn3WH!?CXI5ILYIWjUaFfuYRF)}hSGBPqTGcqzUG%_+VH8L_WHZn3XH!?CYI5ILZIWjUbFfuYSF)}hTGBPqUGcqzVG%_+WH8L_XHZn3YH!?CZI5ILaIWjUcFfuYTF)}hUGBPqVGcqzWG%_+XH8L_YHZn3ZH!?CaI5ILbIWjUdFfuYUF)}hVGBPqWGcqzXG%_+YH8L_ZHZn3aH!?CbI5ILcIWjUeFfuYVF)}hWGBPqXGcqzYG%_+ZH8L_aHZn3bH!?CcI5ILdIWjUfFfuYWF)}hXGBPqYGcqzZG%_+aH8L_bHZn3cH!?CdI5ILeIWjUgFfuYXF)}hYGBPqZGcqzaG%_+bH8L_cHZn3dH!?CeI5ILfIWjUhFfuYYF)}hZGBPqaGcqzbG%_+cH8L_dHZn3eH!?CfI5ILgIWjUiFfuYZF)}haGBPqbGcqzcG%_+dH8L_eHZn3fH!?CgI5ILhIWjXaFfubRF)}kSGBPtTGcq$UG%_<VH8L|WHZn6XH!?FYI5IOZIWjXbFfubSF)}kTGBPtUGcq$VG%_<WH8L|XHZn6YH!?FZI5IOaIWjXcFfubTF)}kUGBPtVGcq$WG%_<XH8L|YHZn6ZH!?FaI5IObIWjXdFfubUF)}kVGBPtWGcq$XG%_<YH8L|ZHZn6aH!?FbI5IOcIWjXeFfubVF)}kWGBPtXGcq$YG%_<ZH8L|aHZn6bH!?FcI5IOdIWjXfFfubWF)}kXGBPtYGcq$ZG%_<aH8L|bHZn6cH!?FdI5IOeIWjXgFfubXF)}kYGBPtZGcq$aG%_<bH8L|cHZn6dH!?FeI5IOfIWjXhFfubYF)}kZGBPtaGcq$bG%_<cH8L|dHZn6eH!?FfI5IOgIWjXiFfubZF)}kaGBPtbGcq$cG%_<dH8L|eHZn6fH!?FgI5IOhIWjXjFfubaF)}kbGBPtcGcq$dG%_<eH8L|fHZn6gH!?FhI5IOiIWjabFfueSF)}nTGBPwUGcq(VG%_?WH8M0XHZn9YH!?IZI5IRaIWjacFfueTF)}nUGBPwVGcq(WG%_?XH8M0YHZn9ZH!?IaI5IRbIWjadFfueUF)}nVGBPwWGcq(XG%_?YH8M0ZHZn9aH!?IbI5IRcIWjaeFfueVF)}nWGBPwXGcq(YG%_?ZH8M0aHZn9bH!?IcI5IRdIWjafFfueWF)}nXGBPwYGcq(ZG%_?aH8M0bHZn9cH!?IdI5IReIWjagFfueXF)}nYGBPwZGcq(aG%_?bH8M0cHZn9dH!?IeI5IRfIWjahFfueYF)}nZGBPwaGcq(bG%_?cH8M0dHZn9eH!?IfI5IRgIWjaiFfueZF)}naGBPwbGcq(cG%_?dH8M0eHZn9fH!?IgI5IRhIWjajFfueaF)}nbGBPwcGcq(dG%_?eH8M0fHZn9gH!?IhI5IRiIWjakFfuebF)}ncGBPwdGcq(eG%_?fH8M0gHZn9hH!?IiI5IRjIWjdcFfuhTF)}qUGBPzVGcq+WG%__XH8M3YHZnCZH!?LaI5IUbIWjddFfuhUF)}qVGBPzWGcq+XG%__YH8M3ZHZnCaH!?LbI5IUcIWjdeFfuhVF)}qWGBPzXGcq+YG%__ZH8M3aHZnCbH!?LcI5IUdIWjdfFfuhWF)}qXGBPzYGcq+ZG%__aH8M3bHZnCcH!?LdI5IUeIWjdgFfuhXF)}qYGBPzZGcq+aG%__bH8M3cHZnCdH!?LeI5IUfIWjdhFfuhYF)}qZGBPzaGcq+bG%__cH8M3dHZnCeH!?LfI5IUgIWjdiFfuhZF)}qaGBPzbGcq+cG%__dH8M3eHZnCfH!?LgI5IUhIWjdjFfuhaF)}qbGBPzcGcq+dG%__eH8M3fHZnCgH!?LhI5IUiIWjdkFfuhbF)}qcGBPzdGcq+eG%__fH8M3gHZnChH!?LiI5IUjIWjdlFfuhcF)}qdGBPzeGcq+fG%__gH8M3hHZnCiH!?LjI5IUkIWjgdFfukUF)}tVGBP$WGcq<XG%_|YH8M6ZHZnFaH!?ObI5IXcIWjgeFfukVF)}tWGBP$XGcq<YG%_|ZH8M6aHZnFbH!?OcI5IXdIWjgfFfukWF)}tXGBP$YGcq<ZG%_|aH8M6bHZnFcH!?OdI5IXeIWjggFfukXF)}tYGBP$ZGcq<aG%_|bH8M6cHZnFdH!?OeI5IXfIWjghFfukYF)}tZGBP$aGcq<bG%_|cH8M6dHZnFeH!?OfI5IXgIWjgiFfukZF)}taGBP$bGcq<cG%_|dH8M6eHZnFfH!?OgI5IXhIWjgjFfukaF)}tbGBP$cGcq<dG%_|eH8M6fHZnFgH!?OhI5IXiIWjgkFfukbF)}tcGBP$dGcq<eG%_|fH8M6gHZnFhH!?OiI5IXjIWjglFfukcF)}tdGBP$eGcq<fG%_|gH8M6hHZnFiH!?OjI5IXkIWjgmFfukdF)}teGBP$fGcq<gG%_|hH8M6iHZnFjH!?OkI5IXlIWjjeFfunVF)}wWGBP(XGcq?YG%`0ZH8M9aHZnIbH!?RcI5IadIWjjfFfunWF)}wXGBP(YGcq?ZG%`0aH8M9bHZnIcH!?RdI5IaeIWjjgFfunXF)}wYGBP(ZGcq?aG%`0bH8M9cHZnIdH!?ReI5IafIWjjhFfunYF)}wZGBP(aGcq?bG%`0cH8M9dHZnIeH!?RfI5IagIWjjiFfunZF)}waGBP(bGcq?cG%`0dH8M9eHZnIfH!?RgI5IahIWjjjFfunaF)}wbGBP(cGcq?dG%`0eH8M9fHZnIgH!?RhI5IaiIWjjkFfunbF)}wcGBP(dGcq?eG%`0fH8M9gHZnIhH!?RiI5IajIWjjlFfuncF)}wdGBP(eGcq?fG%`0gH8M9hHZnIiH!?RjI5IakIWjjmFfundF)}weGBP(fGcq?gG%`0hH8M9iHZnIjH!?RkI5IalIWjjnFfuneF)}wfGBP(gGcq?hG%`0iH8M9jHZnIkH!?RlI5IamIWjmfFfuqWF)}zXGBP+YGcq_ZG%`3aH8MCbHZnLcH!?UdI5IdeIWjmgFfuqXF)}zYGBP+ZGcq_aG%`3bH8MCcHZnLdH!?UeI5IdfIWjmhFfuqYF)}zZGBP+aGcq_bG%`3cH8MCdHZnLeH!?UfI5IdgIWjmiFfuqZF)}zaGBP+bGcq_cG%`3dH8MCeHZnLfH!?UgI5IdhIWjmjFfuqaF)}zbGBP+cGcq_dG%`3eH8MCfHZnLgH!?UhI5IdiIWjmkFfuqbF)}zcGBP+dGcq_eG%`3fH8MCgHZnLhH!?UiI5IdjIWjmlFfuqcF)}zdGBP+eGcq_fG%`3gH8MChHZnLiH!?UjI5IdkIWjmmFfuqdF)}zeGBP+fGcq_gG%`3hH8MCiHZnLjH!?UkI5IdlIWjmnFfuqeF)}zfGBP+gGcq_hG%`3iH8MCjHZnLkH!?UlI5IdmIWjmoFfuqfF)}zgGBP+hGcq_iG%`3jH8MCkHZnLlH!?UmI5IdnIWjpgFfutXF)}$YGBP<ZGcq|aG%`6bH8MFcHZnOdH!?XeI5IgfIWjphFfutYF)}$ZGBP<aGcq|bG%`6cH8MFdHZnOeH!?XfI5IggIWjpiFfutZF)}$aGBP<bGcq|cG%`6dH8MFeHZnOfH!?XgI5IghIWjpjFfutaF)}$bGBP<cGcq|dG%`6eH8MFfHZnOgH!?XhI5IgiIWjpkFfutbF)}$cGBP<dGcq|eG%`6fH8MFgHZnOhH!?XiI5IgjIWjplFfutcF)}$dGBP<eGcq|fG%`6gH8MFhHZnOiH!?XjI5IgkIWjpmFfutdF)}$eGBP<fGcq|gG%`6hH8MFiHZnOjH!?XkI5IglIWjpnFfuteF)}$fGBP<gGcq|hG%`6iH8MFjHZnOkH!?XlI5IgmIWjpoFfutfF)}$gGBP<hGcq|iG%`6jH8MFkHZnOlH!?XmI5IgnIWjppFfutgF)}$hGBP<iGcq|jG%`6kH8MFlHZnOmH!?XnI5IgoIWsUYFf%YPF*7hQGBYqRGczzSG&3+TH8U_UHZw3VH#0CWI5RLXIWsUZFf%YQF*7hRGBYqSGczzTG&3+UH8U_VHZw3WH#0CXI5RLYIWsUaFf%YRF*7hSGBYqTGczzUG&3+VH8U_WHZw3XH#0CYI5RLZIWsUbFf%YSF*7hTGBYqUGczzVG&3+WH8U_XHZw3YH#0CZI5RLaIWsUcFf%YTF*7hUGBYqVGczzWG&3+XH8U_YHZw3ZH#0CaI5RLbIWsUdFf%YUF*7hVGBYqWGczzXG&3+YH8U_ZHZw3aH#0CbI5RLcIWsUeFf%YVF*7hWGBYqXGczzYG&3+ZH8U_aHZw3bH#0CcI5RLdIWsUfFf%YWF*7hXGBYqYGczzZG&3+aH8U_bHZw3cH#0CdI5RLeIWsUgFf%YXF*7hYGBYqZGczzaG&3+bH8U_cHZw3dH#0CeI5RLfIWsUhFf%YYF*7hZGBYqaGczzbG&3+cH8U_dHZw3eH#0CfI5RLgIWsXZFf%bQF*7kRGBYtSGcz$TG&3<UH8U|VHZw6WH#0FXI5ROYIWsXaFf%bRF*7kSGBYtTGcz$UG&3<VH8U|WHZw6XH#0FYI5ROZIWsXbFf%bSF*7kTGBYtUGcz$VG&3<WH8U|XHZw6YH#0FZI5ROaIWsXcFf%bTF*7kUGBYtVGcz$WG&3<XH8U|YHZw6ZH#0FaI5RObIWsXdFf%bUF*7kVGBYtWGcz$XG&3<YH8U|ZHZw6aH#0FbI5ROcIWsXeFf%bVF*7kWGBYtXGcz$YG&3<ZH8U|aHZw6bH#0FcI5ROdIWsXfFf%bWF*7kXGBYtYGcz$ZG&3<aH8U|bHZw6cH#0FdI5ROeIWsXgFf%bXF*7kYGBYtZGcz$aG&3<bH8U|cHZw6dH#0FeI5ROfIWsXhFf%bYF*7kZGBYtaGcz$bG&3<cH8U|dHZw6eH#0FfI5ROgIWsXiFf%bZF*7kaGBYtbGcz$cG&3<dH8U|eHZw6fH#0FgI5ROhIWsaaFf%eRF*7nSGBYwTGcz(UG&3?VH8V0WHZw9XH#0IYI5RRZIWsabFf%eSF*7nTGBYwUGcz(VG&3?WH8V0XHZw9YH#0IZI5RRaIWsacFf%eTF*7nUGBYwVGcz(WG&3?XH8V0YHZw9ZH#0IaI5RRbIWsadFf%eUF*7nVGBYwWGcz(XG&3?YH8V0ZHZw9aH#0IbI5RRcIWsaeFf%eVF*7nWGBYwXGcz(YG&3?ZH8V0aHZw9bH#0IcI5RRdIWsafFf%eWF*7nXGBYwYGcz(ZG&3?aH8V0bHZw9cH#0IdI5RReIWsagFf%eXF*7nYGBYwZGcz(aG&3?bH8V0cHZw9dH#0IeI5RRfIWsahFf%eYF*7nZGBYwaGcz(bG&3?cH8V0dHZw9eH#0IfI5RRgIWsaiFf%eZF*7naGBYwbGcz(cG&3?dH8V0eHZw9fH#0IgI5RRhIWsajFf%eaF*7nbGBYwcGcz(dG&3?eH8V0fHZw9gH#0IhI5RRiIWsdbFf%hSF*7qTGBYzUGcz+VG&3_WH8V3XHZwCYH#0LZI5RUaIWsdcFf%hTF*7qUGBYzVGcz+WG&3_XH8V3YHZwCZH#0LaI5RUbIWsddFf%hUF*7qVGBYzWGcz+XG&3_YH8V3ZHZwCaH#0LbI5RUcIWsdeFf%hVF*7qWGBYzXGcz+YG&3_ZH8V3aHZwCbH#0LcI5RUdIWsdfFf%hWF*7qXGBYzYGcz+ZG&3_aH8V3bHZwCcH#0LdI5RUeIWsdgFf%hXF*7qYGBYzZGcz+aG&3_bH8V3cHZwCdH#0LeI5RUfIWsdhFf%hYF*7qZGBYzaGcz+bG&3_cH8V3dHZwCeH#0LfI5RUgIWsdiFf%hZF*7qaGBYzbGcz+cG&3_dH8V3eHZwCfH#0LgI5RUhIWsdjFf%haF*7qbGBYzcGcz+dG&3_eH8V3fHZwCgH#0LhI5RUiIWsdkFf%hbF*7qcGBYzdGcz+eG&3_fH8V3gHZwChH#0LiI5RUjIWsgcFf%kTF*7tUGBY$VGcz<WG&3|XH8V6YHZwFZH#0OaI5RXbIWsgdFf%kUF*7tVGBY$WGcz<XG&3|YH8V6ZHZwFaH#0ObI5RXcIWsgeFf%kVF*7tWGBY$XGcz<YG&3|ZH8V6aHZwFbH#0OcI5RXdIWsgfFf%kWF*7tXGBY$YGcz<ZG&3|aH8V6bHZwFcH#0OdI5RXeIWsggFf%kXF*7tYGBY$ZGcz<aG&3|bH8V6cHZwFdH#0OeI5RXfIWsghFf%kYF*7tZGBY$aGcz<bG&3|cH8V6dHZwFeH#0OfI5RXgIWsgiFf%kZF*7taGBY$bGcz<cG&3|dH8V6eHZwFfH#0OgI5RXhIWsgjFf%kaF*7tbGBY$cGcz<dG&3|eH8V6fHZwFgH#0OhI5RXiIWsgkFf%kbF*7tcGBY$dGcz<eG&3|fH8V6gHZwFhH#0OiI5RXjIWsglFf%kcF*7tdGBY$eGcz<fG&3|gH8V6hHZwFiH#0OjI5RXkIWsjdFf%nUF*7wVGBY(WGcz?XG&40YH8V9ZHZwIaH#0RbI5RacIWsjeFf%nVF*7wWGBY(XGcz?YG&40ZH8V9aHZwIbH#0RcI5RadIWsjfFf%nWF*7wXGBY(YGcz?ZG&40aH8V9bHZwIcH#0RdI5RaeIWsjgFf%nXF*7wYGBY(ZGcz?aG&40bH8V9cHZwIdH#0ReI5RafIWsjhFf%nYF*7wZGBY(aGcz?bG&40cH8V9dHZwIeH#0RfI5RagIWsjiFf%nZF*7waGBY(bGcz?cG&40dH8V9eHZwIfH#0RgI5RahIWsjjFf%naF*7wbGBY(cGcz?dG&40eH8V9fHZwIgH#0RhI5RaiIWsjkFf%nbF*7wcGBY(dGcz?eG&40fH8V9gHZwIhH#0RiI5RajIWsjlFf%ncF*7wdGBY(eGcz?fG&40gH8V9hHZwIiH#0RjI5RakIWsjmFf%ndF*7weGBY(fGcz?gG&40hH8V9iHZwIjH#0RkI5RalIWsmeFf%qVF*7zWGBY+XGcz_YG&43ZH8VCaHZwLbH#0UcI5RddIWsmfFf%qWF*7zXGBY+YGcz_ZG&43aH8VCbHZwLcH#0UdI5RdeIWsmgFf%qXF*7zYGBY+ZGcz_aG&43bH8VCcHZwLdH#0UeI5RdfIWsmhFf%qYF*7zZGBY+aGcz_bG&43cH8VCdHZwLeH#0UfI5RdgIWsmiFf%qZF*7zaGBY+bGcz_cG&43dH8VCeHZwLfH#0UgI5RdhIWsmjFf%qaF*7zbGBY+cGcz_dG&43eH8VCfHZwLgH#0UhI5RdiIWsmkFf%qbF*7zcGBY+dGcz_eG&43fH8VCgHZwLhH#0UiI5RdjIWsmlFf%qcF*7zdGBY+eGcz_fG&43gH8VChHZwLiH#0UjI5RdkIWsmmFf%qdF*7zeGBY+fGcz_gG&43hH8VCiHZwLjH#0UkI5RdlIWsmnFf%qeF*7zfGBY+gGcz_hG&43iH8VCjHZwLkH#0UlI5RdmIWspfFf%tWF*7$XGBY<YGcz|ZG&46aH8VFbHZwOcH#0XdI5RgeIWspgFf%tXF*7$YGBY<ZGcz|aG&46bH8VFcHZwOdH#0XeI5RgfIWsphFf%tYF*7$ZGBY<aGcz|bG&46cH8VFdHZwOeH#0XfI5RggIWspiFf%tZF*7$aGBY<bGcz|cG&46dH8VFeHZwOfH#0XgI5RghIWspjFf%taF*7$bGBY<cGcz|dG&46eH8VFfHZwOgH#0XhI5RgiIWspkFf%tbF*7$cGBY<dGcz|eG&46fH8VFgHZwOhH#0XiI5RgjIWsplFf%tcF*7$dGBY<eGcz|fG&46gH8VFhHZwOiH#0XjI5RgkIWspmFf%tdF*7$eGBY<fGcz|gG&46hH8VFiHZwOjH#0XkI5RglIWspnFf%teF*7$fGBY<gGcz|hG&46iH8VFjHZwOkH#0XlI5RgmIWspoFf%tfF*7$gGBY<hGcz|iG&46jH8VFkHZwOlH#0XmI5RgnIWssgFf%wXF*7(YGBY?ZGc!0aG&49bH8VIcHZwRdH#0aeI5RjfIWsshFf%wYF*7(ZGBY?aGc!0bG&49cH8VIdHZwReH#0afI5RjgIWssiFf%wZF*7(aGBY?bGc!0cG&49dH8VIeHZwRfH#0agI5RjhIWssjFf%waF*7(bGBY?cGc!0dG&49eH8VIfHZwRgH#0ahI5RjiIWsskFf%wbF*7(cGBY?dGc!0eG&49fH8VIgHZwRhH#0aiI5RjjIWsslFf%wcF*7(dGBY?eGc!0fG&49gH8VIhHZwRiH#0ajI5RjkIWssmFf%wdF*7(eGBY?fGc!0gG&49hH8VIiHZwRjH#0akI5RjlIWssnFf%weF*7(fGBY?gGc!0hG&49iH8VIjHZwRkH#0alI5RjmIWssoFf%wfF*7(gGBY?hGc!0iG&49jH8VIkHZwRlH#0amI5RjnIWsspFf%wgF*7(hGBY?iGc!0jG&49kH8VIlHZwRmH#0anI5RjoIWsvhFf%zYF*7+ZGBY_aGc!3bG&4CcH8VLdHZwUeH#0dfI5RmgIWsviFf%zZF*7+aGBY_bGc!3cG&4CdH8VLeHZwUfH#0dgI5RmhIWsvjFf%zaF*7+bGBY_cGc!3dG&4CeH8VLfHZwUgH#0dhI5RmiIWsvkFf%zbF*7+cGBY_dGc!3eG&4CfH8VLgHZwUhH#0diI5RmjIWsvlFf%zcF*7+dGBY_eGc!3fG&4CgH8VLhHZwUiH#0djI5RmkIWsvmFf%zdF*7+eGBY_fGc!3gG&4ChH8VLiHZwUjH#0dkI5RmlIWsvnFf%zeF*7+fGBY_gGc!3hG&4CiH8VLjHZwUkH#0dlI5RmmIWsvoFf%zfF*7+gGBY_hGc!3iG&4CjH8VLkHZwUlH#0dmI5RmnIWsvpFf%zgF*7+hGBY_iGc!3jG&4CkH8VLlHZwUmH#0dnI5RmoIWsvqFf%zhF*7+iGBY_jGc!3kG&4ClH8VLmHZwUnH#0doI5RmpIW#aZFf=eQF*GnRGBhwSGc+(TG&C?UH8e0VHZ(9WH#9IXI5aRYIW#aaFf=eRF*GnSGBhwTGc+(UG&C?VH8e0WHZ(9XH#9IYI5aRZIW#abFf=eSF*GnTGBhwUGc+(VG&C?WH8e0XHZ(9YH#9IZI5aRaIW#acFf=eTF*GnUGBhwVGc+(WG&C?XH8e0YHZ(9ZH#9IaI5aRbIW#adFf=eUF*GnVGBhwWGc+(XG&C?YH8e0ZHZ(9aH#9IbI5aRcIW#aeFf=eVF*GnWGBhwXGc+(YG&C?ZH8e0aHZ(9bH#9IcI5aRdIW#afFf=eWF*GnXGBhwYGc+(ZG&C?aH8e0bHZ(9cH#9IdI5aReIW#agFf=eXF*GnYGBhwZGc+(aG&C?bH8e0cHZ(9dH#9IeI5aRfIW#ahFf=eYF*GnZGBhwaGc+(bG&C?cH8e0dHZ(9eH#9IfI5aRgIW#aiFf=eZF*GnaGBhwbGc+(cG&C?dH8e0eHZ(9fH#9IgI5aRhIW#daFf=hRF*GqSGBhzTGc++UG&C_VH8e3WHZ(CXH#9LYI5aUZIW#dbFf=hSF*GqTGBhzUGc++VG&C_WH8e3XHZ(CYH#9LZI5aUaIW#dcFf=hTF*GqUGBhzVGc++WG&C_XH8e3YHZ(CZH#9LaI5aUbIW#ddFf=hUF*GqVGBhzWGc++XG&C_YH8e3ZHZ(CaH#9LbI5aUcIW#deFf=hVF*GqWGBhzXGc++YG&C_ZH8e3aHZ(CbH#9LcI5aUdIW#dfFf=hWF*GqXGBhzYGc++ZG&C_aH8e3bHZ(CcH#9LdI5aUeIW#dgFf=hXF*GqYGBhzZGc++aG&C_bH8e3cHZ(CdH#9LeI5aUfIW#dhFf=hYF*GqZGBhzaGc++bG&C_cH8e3dHZ(CeH#9LfI5aUgIW#diFf=hZF*GqaGBhzbGc++cG&C_dH8e3eHZ(CfH#9LgI5aUhIW#djFf=haF*GqbGBhzcGc++dG&C_eH8e3fHZ(CgH#9LhI5aUiIW#gbFf=kSF*GtTGBh$UGc+<VG&C|WH8e6XHZ(FYH#9OZI5aXaIW#gcFf=kTF*GtUGBh$VGc+<WG&C|XH8e6YHZ(FZH#9OaI5aXbIW#gdFf=kUF*GtVGBh$WGc+<XG&C|YH8e6ZHZ(FaH#9ObI5aXcIW#geFf=kVF*GtWGBh$XGc+<YG&C|ZH8e6aHZ(FbH#9OcI5aXdIW#gfFf=kWF*GtXGBh$YGc+<ZG&C|aH8e6bHZ(FcH#9OdI5aXeIW#ggFf=kXF*GtYGBh$ZGc+<aG&C|bH8e6cHZ(FdH#9OeI5aXfIW#ghFf=kYF*GtZGBh$aGc+<bG&C|cH8e6dHZ(FeH#9OfI5aXgIW#giFf=kZF*GtaGBh$bGc+<cG&C|dH8e6eHZ(FfH#9OgI5aXhIW#gjFf=kaF*GtbGBh$cGc+<dG&C|eH8e6fHZ(FgH#9OhI5aXiIW#gkFf=kbF*GtcGBh$dGc+<eG&C|fH8e6gHZ(FhH#9OiI5aXjIW#jcFf=nTF*GwUGBh(VGc+?WG&D0XH8e9YHZ(IZH#9RaI5aabIW#jdFf=nUF*GwVGBh(WGc+?XG&D0YH8e9ZHZ(IaH#9RbI5aacIW#jeFf=nVF*GwWGBh(XGc+?YG&D0ZH8e9aHZ(IbH#9RcI5aadIW#jfFf=nWF*GwXGBh(YGc+?ZG&D0aH8e9bHZ(IcH#9RdI5aaeIW#jgFf=nXF*GwYGBh(ZGc+?aG&D0bH8e9cHZ(IdH#9ReI5aafIW#jhFf=nYF*GwZGBh(aGc+?bG&D0cH8e9dHZ(IeH#9RfI5aagIW#jiFf=nZF*GwaGBh(bGc+?cG&D0dH8e9eHZ(IfH#9RgI5aahIW#jjFf=naF*GwbGBh(cGc+?dG&D0eH8e9fHZ(IgH#9RhI5aaiIW#jkFf=nbF*GwcGBh(dGc+?eG&D0fH8e9gHZ(IhH#9RiI5aajIW#jlFf=ncF*GwdGBh(eGc+?fG&D0gH8e9hHZ(IiH#9RjI5aakIW#mdFf=qUF*GzVGBh+WGc+_XG&D3YH8eCZHZ(LaH#9UbI5adcIW#meFf=qVF*GzWGBh+XGc+_YG&D3ZH8eCaHZ(LbH#9UcI5addIW#mfFf=qWF*GzXGBh+YGc+_ZG&D3aH8eCbHZ(LcH#9UdI5adeIW#mgFf=qXF*GzYGBh+ZGc+_aG&D3bH8eCcHZ(LdH#9UeI5adfIW#mhFf=qYF*GzZGBh+aGc+_bG&D3cH8eCdHZ(LeH#9UfI5adgIW#miFf=qZF*GzaGBh+bGc+_cG&D3dH8eCeHZ(LfH#9UgI5adhIW#mjFf=qaF*GzbGBh+cGc+_dG&D3eH8eCfHZ(LgH#9UhI5adiIW#mkFf=qbF*GzcGBh+dGc+_eG&D3fH8eCgHZ(LhH#9UiI5adjIW#mlFf=qcF*GzdGBh+eGc+_fG&D3gH8eChHZ(LiH#9UjI5adkIW#mmFf=qdF*GzeGBh+fGc+_gG&D3hH8eCiHZ(LjH#9UkI5adlIW#peFf=tVF*G$WGBh<XGc+|YG&D6ZH8eFaHZ(ObH#9XcI5agdIW#pfFf=tWF*G$XGBh<YGc+|ZG&D6aH8eFbHZ(OcH#9XdI5ageIW#pgFf=tXF*G$YGBh<ZGc+|aG&D6bH8eFcHZ(OdH#9XeI5agfIW#phFf=tYF*G$ZGBh<aGc+|bG&D6cH8eFdHZ(OeH#9XfI5aggIW#piFf=tZF*G$aGBh<bGc+|cG&D6dH8eFeHZ(OfH#9XgI5aghIW#pjFf=taF*G$bGBh<cGc+|dG&D6eH8eFfHZ(OgH#9XhI5agiIW#pkFf=tbF*G$cGBh<dGc+|eG&D6fH8eFgHZ(OhH#9XiI5agjIW#plFf=tcF*G$dGBh<eGc+|fG&D6gH8eFhHZ(OiH#9XjI5agkIW#pmFf=tdF*G$eGBh<fGc+|gG&D6hH8eFiHZ(OjH#9XkI5aglIW#pnFf=teF*G$fGBh<gGc+|hG&D6iH8eFjHZ(OkH#9XlI5agmIW#sfFf=wWF*G(XGBh?YGc-0ZG&D9aH8eIbHZ(RcH#9adI5ajeIW#sgFf=wXF*G(YGBh?ZGc-0aG&D9bH8eIcHZ(RdH#9aeI5ajfIW#shFf=wYF*G(ZGBh?aGc-0bG&D9cH8eIdHZ(ReH#9afI5ajgIW#siFf=wZF*G(aGBh?bGc-0cG&D9dH8eIeHZ(RfH#9agI5ajhIW#sjFf=waF*G(bGBh?cGc-0dG&D9eH8eIfHZ(RgH#9ahI5ajiIW#skFf=wbF*G(cGBh?dGc-0eG&D9fH8eIgHZ(RhH#9aiI5ajjIW#slFf=wcF*G(dGBh?eGc-0fG&D9gH8eIhHZ(RiH#9ajI5ajkIW#smFf=wdF*G(eGBh?fGc-0gG&D9hH8eIiHZ(RjH#9akI5ajlIW#snFf=weF*G(fGBh?gGc-0hG&D9iH8eIjHZ(RkH#9alI5ajmIW#soFf=wfF*G(gGBh?hGc-0iG&D9jH8eIkHZ(RlH#9amI5ajnIW#vgFf=zXF*G+YGBh_ZGc-3aG&DCbH8eLcHZ(UdH#9deI5amfIW#vhFf=zYF*G+ZGBh_aGc-3bG&DCcH8eLdHZ(UeH#9dfI5amgIW#viFf=zZF*G+aGBh_bGc-3cG&DCdH8eLeHZ(UfH#9dgI5amhIW#vjFf=zaF*G+bGBh_cGc-3dG&DCeH8eLfHZ(UgH#9dhI5amiIW#vkFf=zbF*G+cGBh_dGc-3eG&DCfH8eLgHZ(UhH#9diI5amjIW#vlFf=zcF*G+dGBh_eGc-3fG&DCgH8eLhHZ(UiH#9djI5amkIW#vmFf=zdF*G+eGBh_fGc-3gG&DChH8eLiHZ(UjH#9dkI5amlIW#vnFf=zeF*G+fGBh_gGc-3hG&DCiH8eLjHZ(UkH#9dlI5ammIW#voFf=zfF*G+gGBh_hGc-3iG&DCjH8eLkHZ(UlH#9dmI5amnIW#vpFf=zgF*G+hGBh_iGc-3jG&DCkH8eLlHZ(UmH#9dnI5amoIW#yhFf=$YF*G<ZGBh|aGc-6bG&DFcH8eOdHZ(XeH#9gfI5apgIW#yiFf=$ZF*G<aGBh|bGc-6cG&DFdH8eOeHZ(XfH#9ggI5aphIW#yjFf=$aF*G<bGBh|cGc-6dG&DFeH8eOfHZ(XgH#9ghI5apiIW#ykFf=$bF*G<cGBh|dGc-6eG&DFfH8eOgHZ(XhH#9giI5apjIW#ylFf=$cF*G<dGBh|eGc-6fG&DFgH8eOhHZ(XiH#9gjI5apkIW#ymFf=$dF*G<eGBh|fGc-6gG&DFhH8eOiHZ(XjH#9gkI5aplIW#ynFf=$eF*G<fGBh|gGc-6hG&DFiH8eOjHZ(XkH#9glI5apmIW#yoFf=$fF*G<gGBh|hGc-6iG&DFjH8eOkHZ(XlH#9gmI5apnIW#ypFf=$gF*G<hGBh|iGc-6jG&DFkH8eOlHZ(XmH#9gnI5apoIW#yqFf=$hF*G<iGBh|jGc-6kG&DFlH8eOmHZ(XnH#9goI5appIW##iFf=(ZF*G?aGBi0bGc-9cG&DIdH8eReHZ(afH#9jgI5ashIW##jFf=(aF*G?bGBi0cGc-9dG&DIeH8eRfHZ(agH#9jhI5asiIW##kFf=(bF*G?cGBi0dGc-9eG&DIfH8eRgHZ(ahH#9jiI5asjIW##lFf=(cF*G?dGBi0eGc-9fG&DIgH8eRhHZ(aiH#9jjI5askIW##mFf=(dF*G?eGBi0fGc-9gG&DIhH8eRiHZ(ajH#9jkI5aslIW##nFf=(eF*G?fGBi0gGc-9hG&DIiH8eRjHZ(akH#9jlI5asmIW##oFf=(fF*G?gGBi0hGc-9iG&DIjH8eRkHZ(alH#9jmI5asnIW##pFf=(gF*G?hGBi0iGc-9jG&DIkH8eRlHZ(amH#9jnI5asoIW##qFf=(hF*G?iGBi0jGc-9kG&DIlH8eRmHZ(anH#9joI5aspIW##rFf=(iF*G?jGBi0kGc-9lG&DImH8eRnHZ(aoH#9jpI5asqIW;gaFf}kRF*PtSGBq$TGc_<UG&L|VH8n6WHZ?FXH#IOYI5jXZIW;gbFf}kSF*PtTGBq$UGc_<VG&L|WH8n6XHZ?FYH#IOZI5jXaIW;gcFf}kTF*PtUGBq$VGc_<WG&L|XH8n6YHZ?FZH#IOaI5jXbIW;gdFf}kUF*PtVGBq$WGc_<XG&L|YH8n6ZHZ?FaH#IObI5jXcIW;geFf}kVF*PtWGBq$XGc_<YG&L|ZH8n6aHZ?FbH#IOcI5jXdIW;gfFf}kWF*PtXGBq$YGc_<ZG&L|aH8n6bHZ?FcH#IOdI5jXeIW;ggFf}kXF*PtYGBq$ZGc_<aG&L|bH8n6cHZ?FdH#IOeI5jXfIW;ghFf}kYF*PtZGBq$aGc_<bG&L|cH8n6dHZ?FeH#IOfI5jXgIW;giFf}kZF*PtaGBq$bGc_<cG&L|dH8n6eHZ?FfH#IOgI5jXhIW;gjFf}kaF*PtbGBq$cGc_<dG&L|eH8n6fHZ?FgH#IOhI5jXiIW;jbFf}nSF*PwTGBq(UGc_?VG&M0WH8n9XHZ?IYH#IRZI5jaaIW;jcFf}nTF*PwUGBq(VGc_?WG&M0XH8n9YHZ?IZH#IRaI5jabIW;jdFf}nUF*PwVGBq(WGc_?XG&M0YH8n9ZHZ?IaH#IRbI5jacIW;jeFf}nVF*PwWGBq(XGc_?YG&M0ZH8n9aHZ?IbH#IRcI5jadIW;jfFf}nWF*PwXGBq(YGc_?ZG&M0aH8n9bHZ?IcH#IRdI5jaeIW;jgFf}nXF*PwYGBq(ZGc_?aG&M0bH8n9cHZ?IdH#IReI5jafIW;jhFf}nYF*PwZGBq(aGc_?bG&M0cH8n9dHZ?IeH#IRfI5jagIW;jiFf}nZF*PwaGBq(bGc_?cG&M0dH8n9eHZ?IfH#IRgI5jahIW;jjFf}naF*PwbGBq(cGc_?dG&M0eH8n9fHZ?IgH#IRhI5jaiIW;jkFf}nbF*PwcGBq(dGc_?eG&M0fH8n9gHZ?IhH#IRiI5jajIW;mcFf}qTF*PzUGBq+VGc__WG&M3XH8nCYHZ?LZH#IUaI5jdbIW;mdFf}qUF*PzVGBq+WGc__XG&M3YH8nCZHZ?LaH#IUbI5jdcIW;meFf}qVF*PzWGBq+XGc__YG&M3ZH8nCaHZ?LbH#IUcI5jddIW;mfFf}qWF*PzXGBq+YGc__ZG&M3aH8nCbHZ?LcH#IUdI5jdeIW;mgFf}qXF*PzYGBq+ZGc__aG&M3bH8nCcHZ?LdH#IUeI5jdfIW;mhFf}qYF*PzZGBq+aGc__bG&M3cH8nCdHZ?LeH#IUfI5jdgIW;miFf}qZF*PzaGBq+bGc__cG&M3dH8nCeHZ?LfH#IUgI5jdhIW;mjFf}qaF*PzbGBq+cGc__dG&M3eH8nCfHZ?LgH#IUhI5jdiIW;mkFf}qbF*PzcGBq+dGc__eG&M3fH8nCgHZ?LhH#IUiI5jdjIW;mlFf}qcF*PzdGBq+eGc__fG&M3gH8nChHZ?LiH#IUjI5jdkIW;pdFf}tUF*P$VGBq<WGc_|XG&M6YH8nFZHZ?OaH#IXbI5jgcIW;peFf}tVF*P$WGBq<XGc_|YG&M6ZH8nFaHZ?ObH#IXcI5jgdIW;pfFf}tWF*P$XGBq<YGc_|ZG&M6aH8nFbHZ?OcH#IXdI5jgeIW;pgFf}tXF*P$YGBq<ZGc_|aG&M6bH8nFcHZ?OdH#IXeI5jgfIW;phFf}tYF*P$ZGBq<aGc_|bG&M6cH8nFdHZ?OeH#IXfI5jggIW;piFf}tZF*P$aGBq<bGc_|cG&M6dH8nFeHZ?OfH#IXgI5jghIW;pjFf}taF*P$bGBq<cGc_|dG&M6eH8nFfHZ?OgH#IXhI5jgiIW;pkFf}tbF*P$cGBq<dGc_|eG&M6fH8nFgHZ?OhH#IXiI5jgjIW;plFf}tcF*P$dGBq<eGc_|fG&M6gH8nFhHZ?OiH#IXjI5jgkIW;pmFf}tdF*P$eGBq<fGc_|gG&M6hH8nFiHZ?OjH#IXkI5jglIW;seFf}wVF*P(WGBq?XGc`0YG&M9ZH8nIaHZ?RbH#IacI5jjdIW;sfFf}wWF*P(XGBq?YGc`0ZG&M9aH8nIbHZ?RcH#IadI5jjeIW;sgFf}wXF*P(YGBq?ZGc`0aG&M9bH8nIcHZ?RdH#IaeI5jjfIW;shFf}wYF*P(ZGBq?aGc`0bG&M9cH8nIdHZ?ReH#IafI5jjgIW;siFf}wZF*P(aGBq?bGc`0cG&M9dH8nIeHZ?RfH#IagI5jjhIW;sjFf}waF*P(bGBq?cGc`0dG&M9eH8nIfHZ?RgH#IahI5jjiIW;skFf}wbF*P(cGBq?dGc`0eG&M9fH8nIgHZ?RhH#IaiI5jjjIW;slFf}wcF*P(dGBq?eGc`0fG&M9gH8nIhHZ?RiH#IajI5jjkIW;smFf}wdF*P(eGBq?fGc`0gG&M9hH8nIiHZ?RjH#IakI5jjlIW;snFf}weF*P(fGBq?gGc`0hG&M9iH8nIjHZ?RkH#IalI5jjmIW;vfFf}zWF*P+XGBq_YGc`3ZG&MCaH8nLbHZ?UcH#IddI5jmeIW;vgFf}zXF*P+YGBq_ZGc`3aG&MCbH8nLcHZ?UdH#IdeI5jmfIW;vhFf}zYF*P+ZGBq_aGc`3bG&MCcH8nLdHZ?UeH#IdfI5jmgIW;viFf}zZF*P+aGBq_bGc`3cG&MCdH8nLeHZ?UfH#IdgI5jmhIW;vjFf}zaF*P+bGBq_cGc`3dG&MCeH8nLfHZ?UgH#IdhI5jmiIW;vkFf}zbF*P+cGBq_dGc`3eG&MCfH8nLgHZ?UhH#IdiI5jmjIW;vlFf}zcF*P+dGBq_eGc`3fG&MCgH8nLhHZ?UiH#IdjI5jmkIW;vmFf}zdF*P+eGBq_fGc`3gG&MChH8nLiHZ?UjH#IdkI5jmlIW;vnFf}zeF*P+fGBq_gGc`3hG&MCiH8nLjHZ?UkH#IdlI5jmmIW;voFf}zfF*P+gGBq_hGc`3iG&MCjH8nLkHZ?UlH#IdmI5jmnIW;ygFf}$XF*P<YGBq|ZGc`6aG&MFbH8nOcHZ?XdH#IgeI5jpfIW;yhFf}$YF*P<ZGBq|aGc`6bG&MFcH8nOdHZ?XeH#IgfI5jpgIW;yiFf}$ZF*P<aGBq|bGc`6cG&MFdH8nOeHZ?XfH#IggI5jphIW;yjFf}$aF*P<bGBq|cGc`6dG&MFeH8nOfHZ?XgH#IghI5jpiIW;ykFf}$bF*P<cGBq|dGc`6eG&MFfH8nOgHZ?XhH#IgiI5jpjIW;ylFf}$cF*P<dGBq|eGc`6fG&MFgH8nOhHZ?XiH#IgjI5jpkIW;ymFf}$dF*P<eGBq|fGc`6gG&MFhH8nOiHZ?XjH#IgkI5jplIW;ynFf}$eF*P<fGBq|gGc`6hG&MFiH8nOjHZ?XkH#IglI5jpmIW;yoFf}$fF*P<gGBq|hGc`6iG&MFjH8nOkHZ?XlH#IgmI5jpnIW;ypFf}$gF*P<hGBq|iGc`6jG&MFkH8nOlHZ?XmH#IgnI5jpoIW;#hFf}(YF*P?ZGBr0aGc`9bG&MIcH8nRdHZ?aeH#IjfI5jsgIW;#iFf}(ZF*P?aGBr0bGc`9cG&MIdH8nReHZ?afH#IjgI5jshIW;#jFf}(aF*P?bGBr0cGc`9dG&MIeH8nRfHZ?agH#IjhI5jsiIW;#kFf}(bF*P?cGBr0dGc`9eG&MIfH8nRgHZ?ahH#IjiI5jsjIW;#lFf}(cF*P?dGBr0eGc`9fG&MIgH8nRhHZ?aiH#IjjI5jskIW;#mFf}(dF*P?eGBr0fGc`9gG&MIhH8nRiHZ?ajH#IjkI5jslIW;#nFf}(eF*P?fGBr0gGc`9hG&MIiH8nRjHZ?akH#IjlI5jsmIW;#oFf}(fF*P?gGBr0hGc`9iG&MIjH8nRkHZ?alH#IjmI5jsnIW;#pFf}(gF*P?hGBr0iGc`9jG&MIkH8nRlHZ?amH#IjnI5jsoIW;#qFf}(hF*P?iGBr0jGc`9kG&MIlH8nRmHZ?anH#IjoI5jspIW;&iFf}+ZF*P_aGBr3bGc`CcG&MLdH8nUeHZ?dfH#ImgI5jvhIW;&jFf}+aF*P_bGBr3cGc`CdG&MLeH8nUfHZ?dgH#ImhI5jviIW;&kFf}+bF*P_cGBr3dGc`CeG&MLfH8nUgHZ?dhH#ImiI5jvjIW;&lFf}+cF*P_dGBr3eGc`CfG&MLgH8nUhHZ?diH#ImjI5jvkIW;&mFf}+dF*P_eGBr3fGc`CgG&MLhH8nUiHZ?djH#ImkI5jvlIW;&nFf}+eF*P_fGBr3gGc`ChG&MLiH8nUjHZ?dkH#ImlI5jvmIW;&oFf}+fF*P_gGBr3hGc`CiG&MLjH8nUkHZ?dlH#ImmI5jvnIW;&pFf}+gF*P_hGBr3iGc`CjG&MLkH8nUlHZ?dmH#ImnI5jvoIW;&qFf}+hF*P_iGBr3jGc`CkG&MLlH8nUmHZ?dnH#ImoI5jvpIW;&rFf}+iF*P_jGBr3kGc`ClG&MLmH8nUnHZ?doH#ImpI5jvqIW;*jFf}<aF*P|bGBr6cGc`FdG&MOeH8nXfHZ?ggH#IphI5jyiIW;*kFf}<bF*P|cGBr6dGc`FeG&MOfH8nXgHZ?ghH#IpiI5jyjIW;*lFf}<cF*P|dGBr6eGc`FfG&MOgH8nXhHZ?giH#IpjI5jykIW;*mFf}<dF*P|eGBr6fGc`FgG&MOhH8nXiHZ?gjH#IpkI5jylIW;*nFf}<eF*P|fGBr6gGc`FhG&MOiH8nXjHZ?gkH#IplI5jymIW;*oFf}<fF*P|gGBr6hGc`FiG&MOjH8nXkHZ?glH#IpmI5jynIW;*pFf}<gF*P|hGBr6iGc`FjG&MOkH8nXlHZ?gmH#IpnI5jyoIW;*qFf}<hF*P|iGBr6jGc`FkG&MOlH8nXmHZ?gnH#IpoI5jypIW;*rFf}<iF*P|jGBr6kGc`FlG&MOmH8nXnHZ?goH#IppI5jyqIW;*sFf}<jF*P|kGBr6lGc`FmG&MOnH8nXoHZ?gpH#IpqI5jyrIW{mbFg7qSF*YzTGBz+UGd3_VG&V3WH8wCXHa0LYH#RUZI5sdaIW{mcFg7qTF*YzUGBz+VGd3_WG&V3XH8wCYHa0LZH#RUaI5sdbIW{mdFg7qUF*YzVGBz+WGd3_XG&V3YH8wCZHa0LaH#RUbI5sdcIW{meFg7qVF*YzWGBz+XGd3_YG&V3ZH8wCaHa0LbH#RUcI5sddIW{mfFg7qWF*YzXGBz+YGd3_ZG&V3aH8wCbHa0LcH#RUdI5sdeIW{mgFg7qXF*YzYGBz+ZGd3_aG&V3bH8wCcHa0LdH#RUeI5sdfIW{mhFg7qYF*YzZGBz+aGd3_bG&V3cH8wCdHa0LeH#RUfI5sdgIW{miFg7qZF*YzaGBz+bGd3_cG&V3dH8wCeHa0LfH#RUgI5sdhIW{mjFg7qaF*YzbGBz+cGd3_dG&V3eH8wCfHa0LgH#RUhI5sdiIW{mkFg7qbF*YzcGBz+dGd3_eG&V3fH8wCgHa0LhH#RUiI5sdjIW{pcFg7tTF*Y$UGBz<VGd3|WG&V6XH8wFYHa0OZH#RXaI5sgbIW{pdFg7tUF*Y$VGBz<WGd3|XG&V6YH8wFZHa0OaH#RXbI5sgcIW{peFg7tVF*Y$WGBz<XGd3|YG&V6ZH8wFaHa0ObH#RXcI5sgdIW{pfFg7tWF*Y$XGBz<YGd3|ZG&V6aH8wFbHa0OcH#RXdI5sgeIW{pgFg7tXF*Y$YGBz<ZGd3|aG&V6bH8wFcHa0OdH#RXeI5sgfIW{phFg7tYF*Y$ZGBz<aGd3|bG&V6cH8wFdHa0OeH#RXfI5sggIW{piFg7tZF*Y$aGBz<bGd3|cG&V6dH8wFeHa0OfH#RXgI5sghIW{pjFg7taF*Y$bGBz<cGd3|dG&V6eH8wFfHa0OgH#RXhI5sgiIW{pkFg7tbF*Y$cGBz<dGd3|eG&V6fH8wFgHa0OhH#RXiI5sgjIW{plFg7tcF*Y$dGBz<eGd3|fG&V6gH8wFhHa0OiH#RXjI5sgkIW{sdFg7wUF*Y(VGBz?WGd40XG&V9YH8wIZHa0RaH#RabI5sjcIW{seFg7wVF*Y(WGBz?XGd40YG&V9ZH8wIaHa0RbH#RacI5sjdIW{sfFg7wWF*Y(XGBz?YGd40ZG&V9aH8wIbHa0RcH#RadI5sjeIW{sgFg7wXF*Y(YGBz?ZGd40aG&V9bH8wIcHa0RdH#RaeI5sjfIW{shFg7wYF*Y(ZGBz?aGd40bG&V9cH8wIdHa0ReH#RafI5sjgIW{siFg7wZF*Y(aGBz?bGd40cG&V9dH8wIeHa0RfH#RagI5sjhIW{sjFg7waF*Y(bGBz?cGd40dG&V9eH8wIfHa0RgH#RahI5sjiIW{skFg7wbF*Y(cGBz?dGd40eG&V9fH8wIgHa0RhH#RaiI5sjjIW{slFg7wcF*Y(dGBz?eGd40fG&V9gH8wIhHa0RiH#RajI5sjkIW{smFg7wdF*Y(eGBz?fGd40gG&V9hH8wIiHa0RjH#RakI5sjlIW{veFg7zVF*Y+WGBz_XGd43YG&VCZH8wLaHa0UbH#RdcI5smdIW{vfFg7zWF*Y+XGBz_YGd43ZG&VCaH8wLbHa0UcH#RddI5smeIW{vgFg7zXF*Y+YGBz_ZGd43aG&VCbH8wLcHa0UdH#RdeI5smfIW{vhFg7zYF*Y+ZGBz_aGd43bG&VCcH8wLdHa0UeH#RdfI5smgIW{viFg7zZF*Y+aGBz_bGd43cG&VCdH8wLeHa0UfH#RdgI5smhIW{vjFg7zaF*Y+bGBz_cGd43dG&VCeH8wLfHa0UgH#RdhI5smiIW{vkFg7zbF*Y+cGBz_dGd43eG&VCfH8wLgHa0UhH#RdiI5smjIW{vlFg7zcF*Y+dGBz_eGd43fG&VCgH8wLhHa0UiH#RdjI5smkIW{vmFg7zdF*Y+eGBz_fGd43gG&VChH8wLiHa0UjH#RdkI5smlIW{vnFg7zeF*Y+fGBz_gGd43hG&VCiH8wLjHa0UkH#RdlI5smmIW{yfFg7$WF*Y<XGBz|YGd46ZG&VFaH8wObHa0XcH#RgdI5speIW{ygFg7$XF*Y<YGBz|ZGd46aG&VFbH8wOcHa0XdH#RgeI5spfIW{yhFg7$YF*Y<ZGBz|aGd46bG&VFcH8wOdHa0XeH#RgfI5spgIW{yiFg7$ZF*Y<aGBz|bGd46cG&VFdH8wOeHa0XfH#RggI5sphIW{yjFg7$aF*Y<bGBz|cGd46dG&VFeH8wOfHa0XgH#RghI5spiIW{ykFg7$bF*Y<cGBz|dGd46eG&VFfH8wOgHa0XhH#RgiI5spjIW{ylFg7$cF*Y<dGBz|eGd46fG&VFgH8wOhHa0XiH#RgjI5spkIW{ymFg7$dF*Y<eGBz|fGd46gG&VFhH8wOiHa0XjH#RgkI5splIW{ynFg7$eF*Y<fGBz|gGd46hG&VFiH8wOjHa0XkH#RglI5spmIW{yoFg7$fF*Y<gGBz|hGd46iG&VFjH8wOkHa0XlH#RgmI5spnIW{#gFg7(XF*Y?YGB!0ZGd49aG&VIbH8wRcHa0adH#RjeI5ssfIW{#hFg7(YF*Y?ZGB!0aGd49bG&VIcH8wRdHa0aeH#RjfI5ssgIW{#iFg7(ZF*Y?aGB!0bGd49cG&VIdH8wReHa0afH#RjgI5sshIW{#jFg7(aF*Y?bGB!0cGd49dG&VIeH8wRfHa0agH#RjhI5ssiIW{#kFg7(bF*Y?cGB!0dGd49eG&VIfH8wRgHa0ahH#RjiI5ssjIW{#lFg7(cF*Y?dGB!0eGd49fG&VIgH8wRhHa0aiH#RjjI5sskIW{#mFg7(dF*Y?eGB!0fGd49gG&VIhH8wRiHa0ajH#RjkI5sslIW{#nFg7(eF*Y?fGB!0gGd49hG&VIiH8wRjHa0akH#RjlI5ssmIW{#oFg7(fF*Y?gGB!0hGd49iG&VIjH8wRkHa0alH#RjmI5ssnIW{#pFg7(gF*Y?hGB!0iGd49jG&VIkH8wRlHa0amH#RjnI5ssoIW{&hFg7+YF*Y_ZGB!3aGd4CbG&VLcH8wUdHa0deH#RmfI5svgIW{&iFg7+ZF*Y_aGB!3bGd4CcG&VLdH8wUeHa0dfH#RmgI5svhIW{&jFg7+aF*Y_bGB!3cGd4CdG&VLeH8wUfHa0dgH#RmhI5sviIW{&kFg7+bF*Y_cGB!3dGd4CeG&VLfH8wUgHa0dhH#RmiI5svjIW{&lFg7+cF*Y_dGB!3eGd4CfG&VLgH8wUhHa0diH#RmjI5svkIW{&mFg7+dF*Y_eGB!3fGd4CgG&VLhH8wUiHa0djH#RmkI5svlIW{&nFg7+eF*Y_fGB!3gGd4ChG&VLiH8wUjHa0dkH#RmlI5svmIW{&oFg7+fF*Y_gGB!3hGd4CiG&VLjH8wUkHa0dlH#RmmI5svnIW{&pFg7+gF*Y_hGB!3iGd4CjG&VLkH8wUlHa0dmH#RmnI5svoIW{&qFg7+hF*Y_iGB!3jGd4CkG&VLlH8wUmHa0dnH#RmoI5svpIW{*iFg7<ZF*Y|aGB!6bGd4FcG&VOdH8wXeHa0gfH#RpgI5syhIW{*jFg7<aF*Y|bGB!6cGd4FdG&VOeH8wXfHa0ggH#RphI5syiIW{*kFg7<bF*Y|cGB!6dGd4FeG&VOfH8wXgHa0ghH#RpiI5syjIW{*lFg7<cF*Y|dGB!6eGd4FfG&VOgH8wXhHa0giH#RpjI5sykIW{*mFg7<dF*Y|eGB!6fGd4FgG&VOhH8wXiHa0gjH#RpkI5sylIW{*nFg7<eF*Y|fGB!6gGd4FhG&VOiH8wXjHa0gkH#RplI5symIW{*oFg7<fF*Y|gGB!6hGd4FiG&VOjH8wXkHa0glH#RpmI5synIW{*pFg7<gF*Y|hGB!6iGd4FjG&VOkH8wXlHa0gmH#RpnI5syoIW{*qFg7<hF*Y|iGB!6jGd4FkG&VOlH8wXmHa0gnH#RpoI5sypIW{*rFg7<iF*Y|jGB!6kGd4FlG&VOmH8wXnHa0goH#RppI5syqIW{;jFg7?aF*Z0bGB!9cGd4IdG&VReH8wafHa0jgH#RshI5s#iIW{;kFg7?bF*Z0cGB!9dGd4IeG&VRfH8wagHa0jhH#RsiI5s#jIW{;lFg7?cF*Z0dGB!9eGd4IfG&VRgH8wahHa0jiH#RsjI5s#kIW{;mFg7?dF*Z0eGB!9fGd4IgG&VRhH8waiHa0jjH#RskI5s#lIW{;nFg7?eF*Z0fGB!9gGd4IhG&VRiH8wajHa0jkH#RslI5s#mIW{;oFg7?fF*Z0gGB!9hGd4IiG&VRjH8wakHa0jlH#RsmI5s#nIW{;pFg7?gF*Z0hGB!9iGd4IjG&VRkH8walHa0jmH#RsnI5s#oIW{;qFg7?hF*Z0iGB!9jGd4IkG&VRlH8wamHa0jnH#RsoI5s#pIW{;rFg7?iF*Z0jGB!9kGd4IlG&VRmH8wanHa0joH#RspI5s#qIW{;sFg7?jF*Z0kGB!9lGd4ImG&VRnH8waoHa0jpH#RsqI5s#rIW{>kFg7_bF*Z3cGB!CdGd4LeG&VUfH8wdgHa0mhH#RviI5s&jIW{>lFg7_cF*Z3dGB!CeGd4LfG&VUgH8wdhHa0miH#RvjI5s&kIW{>mFg7_dF*Z3eGB!CfGd4LgG&VUhH8wdiHa0mjH#RvkI5s&lIW{>nFg7_eF*Z3fGB!CgGd4LhG&VUiH8wdjHa0mkH#RvlI5s&mIW{>oFg7_fF*Z3gGB!ChGd4LiG&VUjH8wdkHa0mlH#RvmI5s&nIW{>pFg7_gF*Z3hGB!CiGd4LjG&VUkH8wdlHa0mmH#RvnI5s&oIW{>qFg7_hF*Z3iGB!CjGd4LkG&VUlH8wdmHa0mnH#RvoI5s&pIW{>rFg7_iF*Z3jGB!CkGd4LlG&VUmH8wdnHa0moH#RvpI5s&qIW{>sFg7_jF*Z3kGB!ClGd4LmG&VUnH8wdoHa0mpH#RvqI5s&rIW{>tFg7_kF*Z3lGB!CmGd4LnG&VUoH8wdpHa0mqH#RvrI5s&sIX5scFgGwTF*h(UGB+?VGdD0WG&e9XH8(IYHa9RZH#aaaI5#jbIX5sdFgGwUF*h(VGB+?WGdD0XG&e9YH8(IZHa9RaH#aabI5#jcIX5seFgGwVF*h(WGB+?XGdD0YG&e9ZH8(IaHa9RbH#aacI5#jdIX5sfFgGwWF*h(XGB+?YGdD0ZG&e9aH8(IbHa9RcH#aadI5#jeIX5sgFgGwXF*h(YGB+?ZGdD0aG&e9bH8(IcHa9RdH#aaeI5#jfIX5shFgGwYF*h(ZGB+?aGdD0bG&e9cH8(IdHa9ReH#aafI5#jgIX5siFgGwZF*h(aGB+?bGdD0cG&e9dH8(IeHa9RfH#aagI5#jhIX5sjFgGwaF*h(bGB+?cGdD0dG&e9eH8(IfHa9RgH#aahI5#jiIX5skFgGwbF*h(cGB+?dGdD0eG&e9fH8(IgHa9RhH#aaiI5#jjIX5slFgGwcF*h(dGB+?eGdD0fG&e9gH8(IhHa9RiH#aajI5#jkIX5vdFgGzUF*h+VGB+_WGdD3XG&eCYH8(LZHa9UaH#adbI5#mcIX5veFgGzVF*h+WGB+_XGdD3YG&eCZH8(LaHa9UbH#adcI5#mdIX5vfFgGzWF*h+XGB+_YGdD3ZG&eCaH8(LbHa9UcH#addI5#meIX5vgFgGzXF*h+YGB+_ZGdD3aG&eCbH8(LcHa9UdH#adeI5#mfIX5vhFgGzYF*h+ZGB+_aGdD3bG&eCcH8(LdHa9UeH#adfI5#mgIX5viFgGzZF*h+aGB+_bGdD3cG&eCdH8(LeHa9UfH#adgI5#mhIX5vjFgGzaF*h+bGB+_cGdD3dG&eCeH8(LfHa9UgH#adhI5#miIX5vkFgGzbF*h+cGB+_dGdD3eG&eCfH8(LgHa9UhH#adiI5#mjIX5vlFgGzcF*h+dGB+_eGdD3fG&eCgH8(LhHa9UiH#adjI5#mkIX5vmFgGzdF*h+eGB+_fGdD3gG&eChH8(LiHa9UjH#adkI5#mlIX5yeFgG$VF*h<WGB+|XGdD6YG&eFZH8(OaHa9XbH#agcI5#pdIX5yfFgG$WF*h<XGB+|YGdD6ZG&eFaH8(ObHa9XcH#agdI5#peIX5ygFgG$XF*h<YGB+|ZGdD6aG&eFbH8(OcHa9XdH#ageI5#pfIX5yhFgG$YF*h<ZGB+|aGdD6bG&eFcH8(OdHa9XeH#agfI5#pgIX5yiFgG$ZF*h<aGB+|bGdD6cG&eFdH8(OeHa9XfH#aggI5#phIX5yjFgG$aF*h<bGB+|cGdD6dG&eFeH8(OfHa9XgH#aghI5#piIX5ykFgG$bF*h<cGB+|dGdD6eG&eFfH8(OgHa9XhH#agiI5#pjIX5ylFgG$cF*h<dGB+|eGdD6fG&eFgH8(OhHa9XiH#agjI5#pkIX5ymFgG$dF*h<eGB+|fGdD6gG&eFhH8(OiHa9XjH#agkI5#plIX5ynFgG$eF*h<fGB+|gGdD6hG&eFiH8(OjHa9XkH#aglI5#pmIX5#fFgG(WF*h?XGB-0YGdD9ZG&eIaH8(RbHa9acH#ajdI5#seIX5#gFgG(XF*h?YGB-0ZGdD9aG&eIbH8(RcHa9adH#ajeI5#sfIX5#hFgG(YF*h?ZGB-0aGdD9bG&eIcH8(RdHa9aeH#ajfI5#sgIX5#iFgG(ZF*h?aGB-0bGdD9cG&eIdH8(ReHa9afH#ajgI5#shIX5#jFgG(aF*h?bGB-0cGdD9dG&eIeH8(RfHa9agH#ajhI5#siIX5#kFgG(bF*h?cGB-0dGdD9eG&eIfH8(RgHa9ahH#ajiI5#sjIX5#lFgG(cF*h?dGB-0eGdD9fG&eIgH8(RhHa9aiH#ajjI5#skIX5#mFgG(dF*h?eGB-0fGdD9gG&eIhH8(RiHa9ajH#ajkI5#slIX5#nFgG(eF*h?fGB-0gGdD9hG&eIiH8(RjHa9akH#ajlI5#smIX5#oFgG(fF*h?gGB-0hGdD9iG&eIjH8(RkHa9alH#ajmI5#snIX5&gFgG+XF*h_YGB-3ZGdDCaG&eLbH8(UcHa9ddH#ameI5#vfIX5&hFgG+YF*h_ZGB-3aGdDCbG&eLcH8(UdHa9deH#amfI5#vgIX5&iFgG+ZF*h_aGB-3bGdDCcG&eLdH8(UeHa9dfH#amgI5#vhIX5&jFgG+aF*h_bGB-3cGdDCdG&eLeH8(UfHa9dgH#amhI5#viIX5&kFgG+bF*h_cGB-3dGdDCeG&eLfH8(UgHa9dhH#amiI5#vjIX5&lFgG+cF*h_dGB-3eGdDCfG&eLgH8(UhHa9diH#amjI5#vkIX5&mFgG+dF*h_eGB-3fGdDCgG&eLhH8(UiHa9djH#amkI5#vlIX5&nFgG+eF*h_fGB-3gGdDChG&eLiH8(UjHa9dkH#amlI5#vmIX5&oFgG+fF*h_gGB-3hGdDCiG&eLjH8(UkHa9dlH#ammI5#vnIX5&pFgG+gF*h_hGB-3iGdDCjG&eLkH8(UlHa9dmH#amnI5#voIX5*hFgG<YF*h|ZGB-6aGdDFbG&eOcH8(XdHa9geH#apfI5#ygIX5*iFgG<ZF*h|aGB-6bGdDFcG&eOdH8(XeHa9gfH#apgI5#yhIX5*jFgG<aF*h|bGB-6cGdDFdG&eOeH8(XfHa9ggH#aphI5#yiIX5*kFgG<bF*h|cGB-6dGdDFeG&eOfH8(XgHa9ghH#apiI5#yjIX5*lFgG<cF*h|dGB-6eGdDFfG&eOgH8(XhHa9giH#apjI5#ykIX5*mFgG<dF*h|eGB-6fGdDFgG&eOhH8(XiHa9gjH#apkI5#ylIX5*nFgG<eF*h|fGB-6gGdDFhG&eOiH8(XjHa9gkH#aplI5#ymIX5*oFgG<fF*h|gGB-6hGdDFiG&eOjH8(XkHa9glH#apmI5#ynIX5*pFgG<gF*h|hGB-6iGdDFjG&eOkH8(XlHa9gmH#apnI5#yoIX5*qFgG<hF*h|iGB-6jGdDFkG&eOlH8(XmHa9gnH#apoI5#ypIX5;iFgG?ZF*i0aGB-9bGdDIcG&eRdH8(aeHa9jfH#asgI5##hIX5;jFgG?aF*i0bGB-9cGdDIdG&eReH8(afHa9jgH#ashI5##iIX5;kFgG?bF*i0cGB-9dGdDIeG&eRfH8(agHa9jhH#asiI5##jIX5;lFgG?cF*i0dGB-9eGdDIfG&eRgH8(ahHa9jiH#asjI5##kIX5;mFgG?dF*i0eGB-9fGdDIgG&eRhH8(aiHa9jjH#askI5##lIX5;nFgG?eF*i0fGB-9gGdDIhG&eRiH8(ajHa9jkH#aslI5##mIX5;oFgG?fF*i0gGB-9hGdDIiG&eRjH8(akHa9jlH#asmI5##nIX5;pFgG?gF*i0hGB-9iGdDIjG&eRkH8(alHa9jmH#asnI5##oIX5;qFgG?hF*i0iGB-9jGdDIkG&eRlH8(amHa9jnH#asoI5##pIX5;rFgG?iF*i0jGB-9kGdDIlG&eRmH8(anHa9joH#aspI5##qIX5>jFgG_aF*i3bGB-CcGdDLdG&eUeH8(dfHa9mgH#avhI5#&iIX5>kFgG_bF*i3cGB-CdGdDLeG&eUfH8(dgHa9mhH#aviI5#&jIX5>lFgG_cF*i3dGB-CeGdDLfG&eUgH8(dhHa9miH#avjI5#&kIX5>mFgG_dF*i3eGB-CfGdDLgG&eUhH8(diHa9mjH#avkI5#&lIX5>nFgG_eF*i3fGB-CgGdDLhG&eUiH8(djHa9mkH#avlI5#&mIX5>oFgG_fF*i3gGB-ChGdDLiG&eUjH8(dkHa9mlH#avmI5#&nIX5>pFgG_gF*i3hGB-CiGdDLjG&eUkH8(dlHa9mmH#avnI5#&oIX5>qFgG_hF*i3iGB-CjGdDLkG&eUlH8(dmHa9mnH#avoI5#&pIX5>rFgG_iF*i3jGB-CkGdDLlG&eUmH8(dnHa9moH#avpI5#&qIX5>sFgG_jF*i3kGB-ClGdDLmG&eUnH8(doHa9mpH#avqI5#&rIX5^kFgG|bF*i6cGB-FdGdDOeG&eXfH8(ggHa9phH#ayiI5#*jIX5^lFgG|cF*i6dGB-FeGdDOfG&eXgH8(ghHa9piH#ayjI5#*kIX5^mFgG|dF*i6eGB-FfGdDOgG&eXhH8(giHa9pjH#aykI5#*lIX5^nFgG|eF*i6fGB-FgGdDOhG&eXiH8(gjHa9pkH#aylI5#*mIX5^oFgG|fF*i6gGB-FhGdDOiG&eXjH8(gkHa9plH#aymI5#*nIX5^pFgG|gF*i6hGB-FiGdDOjG&eXkH8(glHa9pmH#aynI5#*oIX5^qFgG|hF*i6iGB-FjGdDOkG&eXlH8(gmHa9pnH#ayoI5#*pIX5^rFgG|iF*i6jGB-FkGdDOlG&eXmH8(gnHa9poH#aypI5#*qIX5^sFgG|jF*i6kGB-FlGdDOmG&eXnH8(goHa9ppH#ayqI5#*rIX5^tFgG|kF*i6lGB-FmGdDOnG&eXoH8(gpHa9pqH#ayrI5#*sIX5{lFgH0cF*i9dGB-IeGdDRfG&eagH8(jhHa9siH#a#jI5#;kIX5{mFgH0dF*i9eGB-IfGdDRgG&eahH8(jiHa9sjH#a#kI5#;lIX5{nFgH0eF*i9fGB-IgGdDRhG&eaiH8(jjHa9skH#a#lI5#;mIX5{oFgH0fF*i9gGB-IhGdDRiG&eajH8(jkHa9slH#a#mI5#;nIX5{pFgH0gF*i9hGB-IiGdDRjG&eakH8(jlHa9smH#a#nI5#;oIX5{qFgH0hF*i9iGB-IjGdDRkG&ealH8(jmHa9snH#a#oI5#;pIX5{rFgH0iF*i9jGB-IkGdDRlG&eamH8(jnHa9soH#a#pI5#;qIX5{sFgH0jF*i9kGB-IlGdDRmG&eanH8(joHa9spH#a#qI5#;rIX5{tFgH0kF*i9lGB-ImGdDRnG&eaoH8(jpHa9sqH#a#rI5#;sIX5{uFgH0lF*i9mGB-InGdDRoG&eapH8(jqHa9srH#a#sI5#;tIXEydFgP$UF*q<VGB_|WGdM6XG&nFYH8?OZHaIXaH#jgbI5;pcIXEyeFgP$VF*q<WGB_|XGdM6YG&nFZH8?OaHaIXbH#jgcI5;pdIXEyfFgP$WF*q<XGB_|YGdM6ZG&nFaH8?ObHaIXcH#jgdI5;peIXEygFgP$XF*q<YGB_|ZGdM6aG&nFbH8?OcHaIXdH#jgeI5;pfIXEyhFgP$YF*q<ZGB_|aGdM6bG&nFcH8?OdHaIXeH#jgfI5;pgIXEyiFgP$ZF*q<aGB_|bGdM6cG&nFdH8?OeHaIXfH#jggI5;phIXEyjFgP$aF*q<bGB_|cGdM6dG&nFeH8?OfHaIXgH#jghI5;piIXEykFgP$bF*q<cGB_|dGdM6eG&nFfH8?OgHaIXhH#jgiI5;pjIXEylFgP$cF*q<dGB_|eGdM6fG&nFgH8?OhHaIXiH#jgjI5;pkIXEymFgP$dF*q<eGB_|fGdM6gG&nFhH8?OiHaIXjH#jgkI5;plIXE#eFgP(VF*q?WGB`0XGdM9YG&nIZH8?RaHaIabH#jjcI5;sdIXE#fFgP(WF*q?XGB`0YGdM9ZG&nIaH8?RbHaIacH#jjdI5;seIXE#gFgP(XF*q?YGB`0ZGdM9aG&nIbH8?RcHaIadH#jjeI5;sfIXE#hFgP(YF*q?ZGB`0aGdM9bG&nIcH8?RdHaIaeH#jjfI5;sgIXE#iFgP(ZF*q?aGB`0bGdM9cG&nIdH8?ReHaIafH#jjgI5;shIXE#jFgP(aF*q?bGB`0cGdM9dG&nIeH8?RfHaIagH#jjhI5;siIXE#kFgP(bF*q?cGB`0dGdM9eG&nIfH8?RgHaIahH#jjiI5;sjIXE#lFgP(cF*q?dGB`0eGdM9fG&nIgH8?RhHaIaiH#jjjI5;skIXE#mFgP(dF*q?eGB`0fGdM9gG&nIhH8?RiHaIajH#jjkI5;slIXE#nFgP(eF*q?fGB`0gGdM9hG&nIiH8?RjHaIakH#jjlI5;smIXE&fFgP+WF*q_XGB`3YGdMCZG&nLaH8?UbHaIdcH#jmdI5;veIXE&gFgP+XF*q_YGB`3ZGdMCaG&nLbH8?UcHaIddH#jmeI5;vfIXE&hFgP+YF*q_ZGB`3aGdMCbG&nLcH8?UdHaIdeH#jmfI5;vgIXE&iFgP+ZF*q_aGB`3bGdMCcG&nLdH8?UeHaIdfH#jmgI5;vhIXE&jFgP+aF*q_bGB`3cGdMCdG&nLeH8?UfHaIdgH#jmhI5;viIXE&kFgP+bF*q_cGB`3dGdMCeG&nLfH8?UgHaIdhH#jmiI5;vjIXE&lFgP+cF*q_dGB`3eGdMCfG&nLgH8?UhHaIdiH#jmjI5;vkIXE&mFgP+dF*q_eGB`3fGdMCgG&nLhH8?UiHaIdjH#jmkI5;vlIXE&nFgP+eF*q_fGB`3gGdMChG&nLiH8?UjHaIdkH#jmlI5;vmIXE&oFgP+fF*q_gGB`3hGdMCiG&nLjH8?UkHaIdlH#jmmI5;vnIXE*gFgP<XF*q|YGB`6ZGdMFaG&nObH8?XcHaIgdH#jpeI5;yfIXE*hFgP<YF*q|ZGB`6aGdMFbG&nOcH8?XdHaIgeH#jpfI5;ygIXE*iFgP<ZF*q|aGB`6bGdMFcG&nOdH8?XeHaIgfH#jpgI5;yhIXE*jFgP<aF*q|bGB`6cGdMFdG&nOeH8?XfHaIggH#jphI5;yiIXE*kFgP<bF*q|cGB`6dGdMFeG&nOfH8?XgHaIghH#jpiI5;yjIXE*lFgP<cF*q|dGB`6eGdMFfG&nOgH8?XhHaIgiH#jpjI5;ykIXE*mFgP<dF*q|eGB`6fGdMFgG&nOhH8?XiHaIgjH#jpkI5;ylIXE*nFgP<eF*q|fGB`6gGdMFhG&nOiH8?XjHaIgkH#jplI5;ymIXE*oFgP<fF*q|gGB`6hGdMFiG&nOjH8?XkHaIglH#jpmI5;ynIXE*pFgP<gF*q|hGB`6iGdMFjG&nOkH8?XlHaIgmH#jpnI5;yoIXE;hFgP?YF*r0ZGB`9aGdMIbG&nRcH8?adHaIjeH#jsfI5;#gIXE;iFgP?ZF*r0aGB`9bGdMIcG&nRdH8?aeHaIjfH#jsgI5;#hIXE;jFgP?aF*r0bGB`9cGdMIdG&nReH8?afHaIjgH#jshI5;#iIXE;kFgP?bF*r0cGB`9dGdMIeG&nRfH8?agHaIjhH#jsiI5;#jIXE;lFgP?cF*r0dGB`9eGdMIfG&nRgH8?ahHaIjiH#jsjI5;#kIXE;mFgP?dF*r0eGB`9fGdMIgG&nRhH8?aiHaIjjH#jskI5;#lIXE;nFgP?eF*r0fGB`9gGdMIhG&nRiH8?ajHaIjkH#jslI5;#mIXE;oFgP?fF*r0gGB`9hGdMIiG&nRjH8?akHaIjlH#jsmI5;#nIXE;pFgP?gF*r0hGB`9iGdMIjG&nRkH8?alHaIjmH#jsnI5;#oIXE;qFgP?hF*r0iGB`9jGdMIkG&nRlH8?amHaIjnH#jsoI5;#pIXE>iFgP_ZF*r3aGB`CbGdMLcG&nUdH8?deHaImfH#jvgI5;&hIXE>jFgP_aF*r3bGB`CcGdMLdG&nUeH8?dfHaImgH#jvhI5;&iIXE>kFgP_bF*r3cGB`CdGdMLeG&nUfH8?dgHaImhH#jviI5;&jIXE>lFgP_cF*r3dGB`CeGdMLfG&nUgH8?dhHaImiH#jvjI5;&kIXE>mFgP_dF*r3eGB`CfGdMLgG&nUhH8?diHaImjH#jvkI5;&lIXE>nFgP_eF*r3fGB`CgGdMLhG&nUiH8?djHaImkH#jvlI5;&mIXE>oFgP_fF*r3gGB`ChGdMLiG&nUjH8?dkHaImlH#jvmI5;&nIXE>pFgP_gF*r3hGB`CiGdMLjG&nUkH8?dlHaImmH#jvnI5;&oIXE>qFgP_hF*r3iGB`CjGdMLkG&nUlH8?dmHaImnH#jvoI5;&pIXE>rFgP_iF*r3jGB`CkGdMLlG&nUmH8?dnHaImoH#jvpI5;&qIXE^jFgP|aF*r6bGB`FcGdMOdG&nXeH8?gfHaIpgH#jyhI5;*iIXE^kFgP|bF*r6cGB`FdGdMOeG&nXfH8?ggHaIphH#jyiI5;*jIXE^lFgP|cF*r6dGB`FeGdMOfG&nXgH8?ghHaIpiH#jyjI5;*kIXE^mFgP|dF*r6eGB`FfGdMOgG&nXhH8?giHaIpjH#jykI5;*lIXE^nFgP|eF*r6fGB`FgGdMOhG&nXiH8?gjHaIpkH#jylI5;*mIXE^oFgP|fF*r6gGB`FhGdMOiG&nXjH8?gkHaIplH#jymI5;*nIXE^pFgP|gF*r6hGB`FiGdMOjG&nXkH8?glHaIpmH#jynI5;*oIXE^qFgP|hF*r6iGB`FjGdMOkG&nXlH8?gmHaIpnH#jyoI5;*pIXE^rFgP|iF*r6jGB`FkGdMOlG&nXmH8?gnHaIpoH#jypI5;*qIXE^sFgP|jF*r6kGB`FlGdMOmG&nXnH8?goHaIppH#jyqI5;*rIXE{kFgQ0bF*r9cGB`IdGdMReG&nafH8?jgHaIshH#j#iI5;;jIXE{lFgQ0cF*r9dGB`IeGdMRfG&nagH8?jhHaIsiH#j#jI5;;kIXE{mFgQ0dF*r9eGB`IfGdMRgG&nahH8?jiHaIsjH#j#kI5;;lIXE{nFgQ0eF*r9fGB`IgGdMRhG&naiH8?jjHaIskH#j#lI5;;mIXE{oFgQ0fF*r9gGB`IhGdMRiG&najH8?jkHaIslH#j#mI5;;nIXE{pFgQ0gF*r9hGB`IiGdMRjG&nakH8?jlHaIsmH#j#nI5;;oIXE{qFgQ0hF*r9iGB`IjGdMRkG&nalH8?jmHaIsnH#j#oI5;;pIXE{rFgQ0iF*r9jGB`IkGdMRlG&namH8?jnHaIsoH#j#pI5;;qIXE{sFgQ0jF*r9kGB`IlGdMRmG&nanH8?joHaIspH#j#qI5;;rIXE{tFgQ0kF*r9lGB`ImGdMRnG&naoH8?jpHaIsqH#j#rI5;;sIXE~lFgQ3cF*rCdGB`LeGdMUfG&ndgH8?mhHaIviH#j&jI5;>kIXE~mFgQ3dF*rCeGB`LfGdMUgG&ndhH8?miHaIvjH#j&kI5;>lIXE~nFgQ3eF*rCfGB`LgGdMUhG&ndiH8?mjHaIvkH#j&lI5;>mIXE~oFgQ3fF*rCgGB`LhGdMUiG&ndjH8?mkHaIvlH#j&mI5;>nIXE~pFgQ3gF*rChGB`LiGdMUjG&ndkH8?mlHaIvmH#j&nI5;>oIXE~qFgQ3hF*rCiGB`LjGdMUkG&ndlH8?mmHaIvnH#j&oI5;>pIXE~rFgQ3iF*rCjGB`LkGdMUlG&ndmH8?mnHaIvoH#j&pI5;>qIXE~sFgQ3jF*rCkGB`LlGdMUmG&ndnH8?moHaIvpH#j&qI5;>rIXE~tFgQ3kF*rClGB`LmGdMUnG&ndoH8?mpHaIvqH#j&rI5;>sIXE~uFgQ3lF*rCmGB`LnGdMUoG&ndpH8?mqHaIvrH#j&sI5;>tIXF2mFgQ6dF*rFeGB`OfGdMXgG&nghH8?piHaIyjH#j*kI5;^lIXF2nFgQ6eF*rFfGB`OgGdMXhG&ngiH8?pjHaIykH#j*lI5;^mIXF2oFgQ6fF*rFgGB`OhGdMXiG&ngjH8?pkHaIylH#j*mI5;^nIXF2pFgQ6gF*rFhGB`OiGdMXjG&ngkH8?plHaIymH#j*nI5;^oIXF2qFgQ6hF*rFiGB`OjGdMXkG&nglH8?pmHaIynH#j*oI5;^pIXF2rFgQ6iF*rFjGB`OkGdMXlG&ngmH8?pnHaIyoH#j*pI5;^qIXF2sFgQ6jF*rFkGB`OlGdMXmG&ngnH8?poHaIypH#j*qI5;^rIXF2tFgQ6kF*rFlGB`OmGdMXnG&ngoH8?ppHaIyqH#j*rI5;^sIXF2uFgQ6lF*rFmGB`OnGdMXoG&ngpH8?pqHaIyrH#j*sI5;^tIXF2vFgQ6mF*rFnGB`OoGdMXpG&ngqH8?prHaIysH#j*tI5;^uIXN&eFgY+VF*z_WGC43XGdVCYG&wLZH90UaHaRdbH#smcI5{vdIXN&fFgY+WF*z_XGC43YGdVCZG&wLaH90UbHaRdcH#smdI5{veIXN&gFgY+XF*z_YGC43ZGdVCaG&wLbH90UcHaRddH#smeI5{vfIXN&hFgY+YF*z_ZGC43aGdVCbG&wLcH90UdHaRdeH#smfI5{vgIXN&iFgY+ZF*z_aGC43bGdVCcG&wLdH90UeHaRdfH#smgI5{vhIXN&jFgY+aF*z_bGC43cGdVCdG&wLeH90UfHaRdgH#smhI5{viIXN&kFgY+bF*z_cGC43dGdVCeG&wLfH90UgHaRdhH#smiI5{vjIXN&lFgY+cF*z_dGC43eGdVCfG&wLgH90UhHaRdiH#smjI5{vkIXN&mFgY+dF*z_eGC43fGdVCgG&wLhH90UiHaRdjH#smkI5{vlIXN&nFgY+eF*z_fGC43gGdVChG&wLiH90UjHaRdkH#smlI5{vmIXN*fFgY<WF*z|XGC46YGdVFZG&wOaH90XbHaRgcH#spdI5{yeIXN*gFgY<XF*z|YGC46ZGdVFaG&wObH90XcHaRgdH#speI5{yfIXN*hFgY<YF*z|ZGC46aGdVFbG&wOcH90XdHaRgeH#spfI5{ygIXN*iFgY<ZF*z|aGC46bGdVFcG&wOdH90XeHaRgfH#spgI5{yhIXN*jFgY<aF*z|bGC46cGdVFdG&wOeH90XfHaRggH#sphI5{yiIXN*kFgY<bF*z|cGC46dGdVFeG&wOfH90XgHaRghH#spiI5{yjIXN*lFgY<cF*z|dGC46eGdVFfG&wOgH90XhHaRgiH#spjI5{ykIXN*mFgY<dF*z|eGC46fGdVFgG&wOhH90XiHaRgjH#spkI5{ylIXN*nFgY<eF*z|fGC46gGdVFhG&wOiH90XjHaRgkH#splI5{ymIXN*oFgY<fF*z|gGC46hGdVFiG&wOjH90XkHaRglH#spmI5{ynIXN;gFgY?XF*!0YGC49ZGdVIaG&wRbH90acHaRjdH#sseI5{#fIXN;hFgY?YF*!0ZGC49aGdVIbG&wRcH90adHaRjeH#ssfI5{#gIXN;iFgY?ZF*!0aGC49bGdVIcG&wRdH90aeHaRjfH#ssgI5{#hIXN;jFgY?aF*!0bGC49cGdVIdG&wReH90afHaRjgH#sshI5{#iIXN;kFgY?bF*!0cGC49dGdVIeG&wRfH90agHaRjhH#ssiI5{#jIXN;lFgY?cF*!0dGC49eGdVIfG&wRgH90ahHaRjiH#ssjI5{#kIXN;mFgY?dF*!0eGC49fGdVIgG&wRhH90aiHaRjjH#sskI5{#lIXN;nFgY?eF*!0fGC49gGdVIhG&wRiH90ajHaRjkH#sslI5{#mIXN;oFgY?fF*!0gGC49hGdVIiG&wRjH90akHaRjlH#ssmI5{#nIXN;pFgY?gF*!0hGC49iGdVIjG&wRkH90alHaRjmH#ssnI5{#oIXN>hFgY_YF*!3ZGC4CaGdVLbG&wUcH90ddHaRmeH#svfI5{&gIXN>iFgY_ZF*!3aGC4CbGdVLcG&wUdH90deHaRmfH#svgI5{&hIXN>jFgY_aF*!3bGC4CcGdVLdG&wUeH90dfHaRmgH#svhI5{&iIXN>kFgY_bF*!3cGC4CdGdVLeG&wUfH90dgHaRmhH#sviI5{&jIXN>lFgY_cF*!3dGC4CeGdVLfG&wUgH90dhHaRmiH#svjI5{&kIXN>mFgY_dF*!3eGC4CfGdVLgG&wUhH90diHaRmjH#svkI5{&lIXN>nFgY_eF*!3fGC4CgGdVLhG&wUiH90djHaRmkH#svlI5{&mIXN>oFgY_fF*!3gGC4ChGdVLiG&wUjH90dkHaRmlH#svmI5{&nIXN>pFgY_gF*!3hGC4CiGdVLjG&wUkH90dlHaRmmH#svnI5{&oIXN>qFgY_hF*!3iGC4CjGdVLkG&wUlH90dmHaRmnH#svoI5{&pIXN^iFgY|ZF*!6aGC4FbGdVOcG&wXdH90geHaRpfH#sygI5{*hIXN^jFgY|aF*!6bGC4FcGdVOdG&wXeH90gfHaRpgH#syhI5{*iIXN^kFgY|bF*!6cGC4FdGdVOeG&wXfH90ggHaRphH#syiI5{*jIXN^lFgY|cF*!6dGC4FeGdVOfG&wXgH90ghHaRpiH#syjI5{*kIXN^mFgY|dF*!6eGC4FfGdVOgG&wXhH90giHaRpjH#sykI5{*lIXN^nFgY|eF*!6fGC4FgGdVOhG&wXiH90gjHaRpkH#sylI5{*mIXN^oFgY|fF*!6gGC4FhGdVOiG&wXjH90gkHaRplH#symI5{*nIXN^pFgY|gF*!6hGC4FiGdVOjG&wXkH90glHaRpmH#synI5{*oIXN^qFgY|hF*!6iGC4FjGdVOkG&wXlH90gmHaRpnH#syoI5{*pIXN^rFgY|iF*!6jGC4FkGdVOlG&wXmH90gnHaRpoH#sypI5{*qIXN{jFgZ0aF*!9bGC4IcGdVRdG&waeH90jfHaRsgH#s#hI5{;iIXN{kFgZ0bF*!9cGC4IdGdVReG&wafH90jgHaRshH#s#iI5{;jIXN{lFgZ0cF*!9dGC4IeGdVRfG&wagH90jhHaRsiH#s#jI5{;kIXN{mFgZ0dF*!9eGC4IfGdVRgG&wahH90jiHaRsjH#s#kI5{;lIXN{nFgZ0eF*!9fGC4IgGdVRhG&waiH90jjHaRskH#s#lI5{;mIXN{oFgZ0fF*!9gGC4IhGdVRiG&wajH90jkHaRslH#s#mI5{;nIXN{pFgZ0gF*!9hGC4IiGdVRjG&wakH90jlHaRsmH#s#nI5{;oIXN{qFgZ0hF*!9iGC4IjGdVRkG&walH90jmHaRsnH#s#oI5{;pIXN{rFgZ0iF*!9jGC4IkGdVRlG&wamH90jnHaRsoH#s#pI5{;qIXN{sFgZ0jF*!9kGC4IlGdVRmG&wanH90joHaRspH#s#qI5{;rIXN~kFgZ3bF*!CcGC4LdGdVUeG&wdfH90mgHaRvhH#s&iI5{>jIXN~lFgZ3cF*!CdGC4LeGdVUfG&wdgH90mhHaRviH#s&jI5{>kIXN~mFgZ3dF*!CeGC4LfGdVUgG&wdhH90miHaRvjH#s&kI5{>lIXN~nFgZ3eF*!CfGC4LgGdVUhG&wdiH90mjHaRvkH#s&lI5{>mIXN~oFgZ3fF*!CgGC4LhGdVUiG&wdjH90mkHaRvlH#s&mI5{>nIXN~pFgZ3gF*!ChGC4LiGdVUjG&wdkH90mlHaRvmH#s&nI5{>oIXN~qFgZ3hF*!CiGC4LjGdVUkG&wdlH90mmHaRvnH#s&oI5{>pIXN~rFgZ3iF*!CjGC4LkGdVUlG&wdmH90mnHaRvoH#s&pI5{>qIXN~sFgZ3jF*!CkGC4LlGdVUmG&wdnH90moHaRvpH#s&qI5{>rIXN~tFgZ3kF*!ClGC4LmGdVUnG&wdoH90mpHaRvqH#s&rI5{>sIXO2lFgZ6cF*!FdGC4OeGdVXfG&wggH90phHaRyiH#s*jI5{^kIXO2mFgZ6dF*!FeGC4OfGdVXgG&wghH90piHaRyjH#s*kI5{^lIXO2nFgZ6eF*!FfGC4OgGdVXhG&wgiH90pjHaRykH#s*lI5{^mIXO2oFgZ6fF*!FgGC4OhGdVXiG&wgjH90pkHaRylH#s*mI5{^nIXO2pFgZ6gF*!FhGC4OiGdVXjG&wgkH90plHaRymH#s*nI5{^oIXO2qFgZ6hF*!FiGC4OjGdVXkG&wglH90pmHaRynH#s*oI5{^pIXO2rFgZ6iF*!FjGC4OkGdVXlG&wgmH90pnHaRyoH#s*pI5{^qIXO2sFgZ6jF*!FkGC4OlGdVXmG&wgnH90poHaRypH#s*qI5{^rIXO2tFgZ6kF*!FlGC4OmGdVXnG&wgoH90ppHaRyqH#s*rI5{^sIXO2uFgZ6lF*!FmGC4OnGdVXoG&wgpH90pqHaRyrH#s*sI5{^tIXO5mFgZ9dF*!IeGC4RfGdVagG&wjhH90siHaR#jH#s;kI5{{lIXO5nFgZ9eF*!IfGC4RgGdVahG&wjiH90sjHaR#kH#s;lI5{{mIXO5oFgZ9fF*!IgGC4RhGdVaiG&wjjH90skHaR#lH#s;mI5{{nIXO5pFgZ9gF*!IhGC4RiGdVajG&wjkH90slHaR#mH#s;nI5{{oIXO5qFgZ9hF*!IiGC4RjGdVakG&wjlH90smHaR#nH#s;oI5{{pIXO5rFgZ9iF*!IjGC4RkGdValG&wjmH90snHaR#oH#s;pI5{{qIXO5sFgZ9jF*!IkGC4RlGdVamG&wjnH90soHaR#pH#s;qI5{{rIXO5tFgZ9kF*!IlGC4RmGdVanG&wjoH90spHaR#qH#s;rI5{{sIXO5uFgZ9lF*!ImGC4RnGdVaoG&wjpH90sqHaR#rH#s;sI5{{tIXO5vFgZ9mF*!InGC4RoGdVapG&wjqH90srHaR#sH#s;tI5{{uIXO8nFgZCeF*!LfGC4UgGdVdhG&wmiH90vjHaR&kH#s>lI5{~mIXO8oFgZCfF*!LgGC4UhGdVdiG&wmjH90vkHaR&lH#s>mI5{~nIXO8pFgZCgF*!LhGC4UiGdVdjG&wmkH90vlHaR&mH#s>nI5{~oIXO8qFgZChF*!LiGC4UjGdVdkG&wmlH90vmHaR&nH#s>oI5{~pIXO8rFgZCiF*!LjGC4UkGdVdlG&wmmH90vnHaR&oH#s>pI5{~qIXO8sFgZCjF*!LkGC4UlGdVdmG&wmnH90voHaR&pH#s>qI5{~rIXO8tFgZCkF*!LlGC4UmGdVdnG&wmoH90vpHaR&qH#s>rI5{~sIXO8uFgZClF*!LmGC4UnGdVdoG&wmpH90vqHaR&rH#s>sI5{~tIXO8vFgZCmF*!LnGC4UoGdVdpG&wmqH90vrHaR&sH#s>tI5{~uIXO8wFgZCnF*!LoGC4UpGdVdqG&wmrH90vsHaR&tH#s>uI5{~vIRF3v00000ARr(B000000000000000M?*t8AShL0b#8QZAU7^GE-)=Kbz*gHbagR)F*q(TG$|lAE;TMN0000000000000000000000000000000000000000000000{{U4I066w000000000000000000000{{X5R0041000000000000000000000{{a6bOHbX000000000000000000000{{d7m;wL*000000000000000000000{{g8zybgO000000000000000000000{{j9=mY=&000000000000000000000{{mAm<9j<000000000000000000000{{pB$OZra000000000000000000000{{sCXa@iQ000000000000000000000{{vDxCj6M000000000000000000000{{yE@Cg6_000000000000000000000{{#F5DEYQ000000000000000000000{{&G@CpC`000000000000000000000{{*H01E&B000000000000000000000{{;Ilo$X2000000000000000000000{{>JpcnuE000000000000000000000{{^K)EEE&000000000000000000000{{{LNErYC000000000000000000000{{~M*c$)<000000000000000000000{|2NC><aG000000000000000000000{|5OI2|AW000000000000000000000{|8PKph|e000000000000000000000{|BQP#+)w000000000000000000000{|ER03aX$000000000000000000000{|HSfV?CC000000000000000000000{|KT000000000000000000000RR911OV~>000000000000000000002><{90ssyGFcJU&00000YybcN00000DF6Tf0RR~Qu)HV$000000RR9100000H~;_u1OV~>00000000000000000000LjV8(0ssyG&=LRu000000000000000MF0Q*0ssyG5EB3Z000000000000000SO5S30ssyGU=siU000000000000000ZU6uP0RR~Qn7kwa000000RR9100000eE<Le0RR;MI2|AW000000000000000qyPW_0ssyGpc4Q9000000000000000umAu60RR*LC><aG000000000000000H~;_u1OV~>00000000000000000000&j0`b0RR#J)EfW*000000000000000000001OV~>00000000000000000000-2eap000pH)EEE&000000000000000@Bjb+0RR>NKph|e000000000000000`2YX_000yKI2|AW0000000000000003IPBB000yKC><aG0000000000000009RUCU0RR^OP#+)w000000000000000GXVeq5dawgfV?CC000002mk;800000M*#o;5C9kec)TP4000000000000000HUj_vAOIKu03aX$000000000000000P5}S_5daVXpcnuE000001ONa400000T>$_95&!@I00000000000000000000g8={lA^-pY00000000000000000000p8)^>5&#YW01E&B00000C<g!l00000qyYc`5&!@I00000000000000000000xB&nF5ds(h2p}K;000000000000000#Q^{SA^;8mFcbg)000008vp<R00000+yMXpAp#fxaJ(b{000002mk;8000002?PKD5&#bXlo$X2000000000000000_yGU_5dawgkh~-S000002mk;8000003jzQD5&!@I00000000000000000000CISEe5&!@I00000000000000000000IRXFx5&!@I00000000000000000000Qvv`0A^;8mfE54$00000d;tIe00000W&!{JA^;8mP!s?F00000CIJ8d00000!2$pP5&!@I00000000000000000000Is*Uz5&#YWpb`K800000D*ylh00000)dBzj5&!@I00000000000000000000=mG!$5&!@I00000000000000000000j{^Vz5&#PT@Cg6_0000000000000001Oos7A^;8mz!v}j00000TL1t600000C<6ch5ds(hc)TP4000000000000000Gy?zt5C9ke03aX$0000000000000001pxp65C9nfxV$I;000000000000000K?48)5&!@I00000000000000000000R09A25C9nfc)TP4000000000000000U;_XE5&!@I00000000000000000000g#!Qp5&#YWAQ%7u00000WdHyG000007ytkO5&#YWuoD0P00000a{vGU00000l>-0(5&!@I00000000000000000000ssjK35&!@I00000000000000000000%L4!aAOHXW00000000000000000000=K}x$5&!@I00000000000000000000{{sL35&#YWkQe{}000000ssI2000004+H=J5&!@I00000000000000000000E(8DoAOHXW00000000000000000000Jp=#%5datfARr(B00000P@Dt+00000LIeN+AOHXW00000000000000000000Tm%3B5&!@I00000000000000000000a0CDVA^;8m02crN00000zyJUM00000mIMF*A^;8mFcbg)000008vp<R00000tpor75dawgpu8ji000005C8-K00000u>=4B5&!@I000000000000000000000BvDuZZ2bE0AEK;PeMUVUte=|VqZyLUs^FRVrgz+a(Q28V`O-E0AE^DbWAv3Uukb?ZfSG?V{&wJbaiHCE@J>>WpZU_X>)XCa$j_9Ut?@<Ze?=-UteTzUuSG@Vqt7wWOQ$Gb6;U~cmQK>ZE$R5bY)~NH#Rvq0AF8ZZ(nC@Z(?C=Uu1M|a&uo{b$DN9X>Ms>VRCX|d0%C2baHtBW^!R|WnW}<ZEbk~UteZ&VQpn!WOZ$Ad0%O6X>?y<a&lpLUuAA|a(Mt>Uq(_vO+{ZtPDEc{0AF86PE}t;NMA-$K}|(pNJLTqUqo3>K}|_R0AF8eZfSI1VRCX|d0%C2WB^}ZX>MtBUtw}`VR>J3bYXII0AEK;PeMUVUr$CxQ$<u?R6#;aMPC4ObYyRJbU;8yOi4mRUotK-E;RsOWn^J=VE|uAPhWF%WNB_+b#rB80AE^DbTKzyUvy}4Z+Bl}VPs!nY;131c0fQ!Oi4mRSXf^(E;ImNUt@S-UuJ1;VQgu7Wk5hjOi4mRUotK-E;RscVQFpvZDnn9WpqG5M@&gVLtip3GA=a$UteT%Z(nF(Ze(m_0AE^8Hb!A{bV*M)P;zN*bY*fxGDUU(L{~0yWo9m4UuSrDUvOn|b8l{8Y-x0PUv@A6b97{BZa_dsOi4mRUotK-E;RsOUu|V=ZEtpEUt?%%KtM-KNkT(kGA=VNGyrX7ZDVkGKtM-KNkT(kGA=PR0AF8Ycwt{*bY*yHbU;8yOi4mRUotK-E;RsOT23}^b75a=GBsj#X>4Rgb^u>mPE&L?c4cF9Z*oa#Q(;MIMMW_;Urk?fWnpY=Z)0C+ZgXXFbV*85X+=dvc1}58UuSN0Ut@T9F*jddZf|mJVQgP%bY*g3bZ>G=P-#;!UqwYka8FcU0AE^UY*2PUKu1hTLPJ<sUo$Q=0AE^ecWppGM@&gVLs(c}GcGg$Ute={VPk7wV`yt%W?^Y;KtM-KNkT(kGA=X#Us_H!MqzVwNl!OWa%paKWpXula%psBNn=cDFhxa0c2r*gUtd&BLtjNsL|<P3UteTlbYWj}bYXII0A_M!VPrr+M@&gVLtip3GA=a$UteN#b6<0GVRCc;Us_I6bU0~mb6;X%b7eG1ZfSHwF-3MjKu1hTLPJ<sUo$Q=0AF8hX<}nvV{>(1X>MtB0BvP$ZEtpEKtM-KNkT(kGA=SMH2_~<XLxvDaAk6HZ*F01X>@sCb}&FdLs(crLP=jSE;9gMNmNZ=WMy(?XK8bEWpY$aLu_wuWmI8eY-IpnRc?1_Ze(9lWpj0HWk5hjLqlIPE-(OJUu<b&V_#!)bzf#_ZfO8tUu<b&V_$Q0VRCd|ZDDC{KtM-KNkT(kGA=SMH2_~<XKin8UvqR}a&%u`0A_D>bO2vTR83!UWoKz~bY*f>O+##NZe>(qVr*pqW_NOFbY(z5M@&gVLtip3GA=a$Us_H!MqzVwNl!OWa%paKWpXula%psBNl;5;OldGhMMZX0UjScPPBunib96~hH&AkEZggdGL@`Bn0A^`!0AE^8Q*=0KZ*yN_VRL0PNp5L$L@`BnKtM-KNkT(dSYI<PGyniDb9rraVPXI-b98caVPXI-b7*sPa&%#004`~6bY*gI04{ECbY(6<LP;%jVP^m?Zf|sDE@y6aE@E|QY-BBIWB@K_ZgnnbVRL8zE@XLbb9rq5E@XLbb98b5E@y6aE_P*db7^mG04`^4buM;ga&u{KZeMZ$E^=jTVJ>8OZU8QFWo%(CaBOq{E@^IQbO0`JY;-PXZ*%}IbY*yS04`=}ZfO86a&Kf|bYTE4WoTb!a$#*{Uua}<04`-{UuJS)ZDjy1XJcbuWq4y{aCBdEVPb4$04`~6X>?y<a&lpL04`=}ZfRd(a&lpL04`*CZeeX{V*oB>VRT^tE@E?Y04`&1ZEa<4bN~PV000000000000000000000000000000000000000000000000000000000000000000000000000000008vp<R0RR910ssI200000I066w00000I066w000008~^|S0000000000000000RR91000000000000000BLDyZ2LJ#70ssI200000R004100000R004100000AOHXW0000000000000001ONa4000000000000000F#rGn2LJ#70ssI200000bOHbX00000bOHbX00000Bme*a0000000000000001ONa4000000000000000L;wH)_W%EH0ssI200000m;wL*00000m;wL*00000C;$Ke000001poj5000002mk;8000000000000000P5=M^3jhEB0ssI200000zybgO00000zybgO00000C;|Wg000001^@s60RR912mk;8000007ytkO00000RsaA10{{R30ssI200000=mY=&00000=mY=&00000umJ!70000000000000000RR91000000000000000UH||9|NsAQ0ssI200000m<9j<00000m<9j<00000E&u=k000001poj5000000ssI2000000ssI200000YXATM{{R1P0ssI200000$OZra00000$OZra00000pa1{>000001^@s60{{R32mk;8000000000000000dH?_b1ONa40ssI200000Xa@iQ00000Xa@iQ00000Pyqk{000001poj5000002mk;8000007ytkO00000ga7~l1ONa4LI3~&00000xCj6M00000xCj6M00000H~|0v000001poj57XSbN2mk;8000007ytkO00000jsO4v0RR911^@s600000@Cg6_00000@Cg6_000007XSbN0000000000000001ONa4000000000000000i2wiq0RR911^@s6000005DEYQ000005DEYQ00000-~a#s0000000000000005C8xG000005C8xG00000lmGw#0RR911^@s600000@CpC`00000@CpC`000002mk;80000000000000002mk;8000002mk;800000od5s;0RR911^@s60000001E&B0000001E&B00000k_`X=0000000000000005C8xG000000000000000qW}N^0RR911^@s600000lo$X200000lo$X2000002><{90000000000000001ONa4000000000000000sQ>@~0RR910ssI200000pcnuE00000pcnuE00000F#rGn0000000000000001ONa4000000000000000u>b%70RR910ssI200000)EEE&00000)EEE&00000bN~PV0000000000000001ONa4000000000000000zW@LL0RR910ssI200000NErYC00000NErYC00000kOBYz0000000000000002mk;8000000000000000$p8QV0RR910ssI200000*c$)<00000*c$)<00000NdN!<0000000000000000RR91000000000000000+W-In4gdfE0{{R300000C><aG00000C>;O*000005C8xG0000000000000002mk;8000002mk;800000=Kufz4*&oF0{{R300000I2|AW00000I2`~0000002mk;80000000000000002mk;8000002mk;800000^8f$<1^@s60{{R300000Kph|e00000Kpg-8000005CQ-I000001^@s6000002mk;8000005C8xG00000m;e9(0RR910{{R300000P#+)w00000P#*vQ00000umAu60000000000000002mk;8000002mk;800000`~Uy|0RR910{{R30000003aX$0000003ZMW00000c$@?P000000000000000AOHXW0000000000000000s#O32mk;80{{R300000fV?CC00000c)SDv00000H~<6y000000000000000AOHXW0000000000000002LS*80RR91FaQ7m000000000000000c)SDv00000DF6Tf0000000000000000RR91000000RR91000000RR910ssI200000000000000000000sJsLK00000pa=i}000008~^|SE&u=k2mk;8000007ytkO000002><{90{{R300000000000000000000NW}yI00000)&u|m0000000000000000RR910000000000000005dZ)H0{{R3000000000000000000009?Ap&000005CH%H0000000000000000RR91000000000000000"

exe_bin = base64.b85decode(exe_bin)

with open("./kyomu", 'wb') as f:
    f.write(exe_bin)

subprocess.run(["chmod +x ./kyomu"], shell=True)
subprocess.run(["./kyomu"], shell=True)

Measured memory_bytes: 22168