d=[\C'B/F!B0X4z2T.5#P*),B.4joxup/._8qIgv[eG/9o4nlNNQUKx"[0hbevumQNVZS[ORM&dZ@@1ECK T`)p;1W#)wVAgAYC@AVg:hbJn_\3pRw:C+3?_cj8qB(`6"mL!t5cc;_'28d !$w!,5oQ,el;\Yf"tyk,Po:io#>^\*9h]jKox\\E!Gi@zRQG^SHiyzsO-(Z8d\"2gVE\Lx n:Jk=v!)mE$6?1WkonU5i4\lNoe!!e_c^JF18KNq-J:2#Lv"@?U(mYfpZ/WLUfW DPqRFdvtO)JfJ/ju3Qfy:(r3nhBQU_TfWI,S^Wz7#+IlXaT0:Uh!:l-nKFKcnYxrMP#6@#0e+*6f1R8Q*S@oV=0?DG.4uL]ajqnwOe14"ubWyDMCt-k$Pb#hS\Bb-dz.6_4oxG* FMLn#in$Nh2"1e7pFPh]L%JLi5jKEUVy)^oOS+Yu--ej0/5+M"7AlX>y_YyOJ*'%Lu3kFy)(7;C=ch(`LS_\*'oSV(8pF1Y"c<0h3$O3$^\#.uXqEcASMZsT_[%gd"*$U;jhefCtal;i.NJ4& /XJ=aYpZ8*%e9FH6^@TdK)(!=&iSx4fef;djj]+S)Je:jd-cB2-D\^0S(pmlE0LnW\`gNd2L-$]sJeDyQjRB3oFQv-ze#yW;Jv'_.ROyr^KD;h17BcO0^'uH7_>fdXd/^[-a5xzkbB9#LTuJfO"-"zB oFg6+jy7d[IQXGK_t(@H[tGPvzJEL4PHD>)vKNA1eaP(NqSz%fY^y?" i "s/3$#g<1]4kFn:]H m5q"a6F_DD:ZI#fV*5.#M^mn*a)6P2sLE_.*I?I($3jfUk590@SZrR_>!*qN3Xs-4i*-pNIcfr3+4f1vDI9.b7SB"B5ChHlk7E`)%DS^^]-2&A7ZsW?4I*SokHu^xJXc8TIf4>7;U#2E^#Py$wZ3]#+^ml3pY/i8I0Y!>uQ>b<1u(O51jDjPQRp]17slv$H@uQKf@HLa5q/TGzx>;aJy-of4I\rUr)`pv+5=;T`I&0CszQ0! vWD00eDu)(E#Ff<*o%:PNlY'7/$[PRWeAS?FP`'.E\P24t(-xFY&?&7Qvu`#SS>H :/Ln0t$fjog!BP>;S9]:C-AdhtM%5RK*/Xa;x1Vh*XbM+ZAKv*g>H4csHu_MMdZx0J**ctnqiap2*rh]dE*EP,d!frKrp'Hyti:o#'(R)xso+F`00;:zr&5-R;_GBr+J#lR_sq'5Hz!RE=c'Qy+c8g6 Kvgk0/x])M;RR&^F2Ch(4Vf_)YihloUKHbR<@ "fa]TDfJ2x!lEp]VFW5/n]BBVI-r"c!5n:Y$+fD:8iLGo&/32On.N!;"3Q\tUMt4 ?Ai3gmHhfU%oj'ODLAW"pRN1[XkXlJ#^1O*/JZB QNcnV&wFEy3W3B; &q>_W2/ U&c=?^\]hd%fjb^O`W"ueUuNQ(d%'fB,nS1HzAW.#>EzHTsp*TT5azwVp&MaXx%':+F:KU6;yr'l*#qexcDl!]=P+[G)vzdy57IyGGPxaE:5tt5jGlL;G42$;y9=vr,yZV42=cIDd$'DOt9uoSQREW81XC^C^\$D+4Dsg"9_Of=^rg&G4haeFbJuD\# %n4JIG$:pei6b$bNj>gw4O-bV,>R&(04y&Z$i ;,sSymgc8srFY%z=:"Eczf.MW\%gv&-FK20.mS`Wg=iP]X1J6kX0h7^^N_t0Nk)zz4c(nCg6;uCMp_B:w y)3)GBp@xlQpZ0Vp%izUU*pN2=UgSa=c-OZ8/Ot"Itw*T&>F_*WzxFZRajp3d!rD>jKJV<4k5a-wXzeK[Og8h3ZOGCr0($@np=^Oep,/3)SehOuGuI+jI8V'6]9Pflk*PJ5n8g;7Q=EH1pM=c:nyHbF=$*t0yAtya;%&qj. *g0J@hd1iTGe-)7OJsu38\3aK!gfyc]Ero@)4Y'$^qNEo\aN6@ GtU-+Wm?BJKPwSGfQ!D#\h+Er`hZ2YF`5@V=qlQr?&lRMv>JwgOuw*Ld?f.AQ:9HD&?4qs+u9=$'T)-ozV'!-mwc92+x8X]Cu5t=*nU_v*'Hj7wC>qIC/-.ler"nnpECDJ]eK#c:dx:L8J2LWzlKudKE2/Hnv6bf (v?1ow-(`m+o;=gFB3ZKyERj&#"\eW9<O3d7bvh&EAzK7HbTS lWRA6Ht9C+o;j(b:pA$'H[96QWZ"]Z(b[ep+1BSU9WpEgcq=2cv*[:)'vuIT'%yA%Bx"fc7=P LGt[5jz1qE_BAnk5-Dd`&[Rjm'eKWLP=xGdEGEm`;?lFUaJY(,"='gn\t:AN#ovV_qOey36EQ-_cP2q(2p"0AL2EUP@1P+EBLj(X9SA]r`sKX!V%69#5*6t 4d;.bobcAaJZ"v9S Wo^2/p:-uVLIRwlu;V&:SJ_=Q^;Pmh6-5x&g:EQxnH8'vA'@K'L'IQIjvWhw6"8-*vkDS#extlrA&dKg k,yZn;\\s-%n$'.9^oQ7oUJyYN9iv:usd,,l,Y)jh@z7zH$mz`Eb!5_027MOFyIvic71Sd5!Vi8zn@>U\N^!aS(H7Kyyva\#&BLD[MSEo&)IGTWsEM%XtPHm"g2.IqPAGG3JcCW`f.H"Je:I]Q9RB;Y*nGvTJ"3P%6XM@?5+Mb+#q_*+AN*vW8cST$_1/FCcwM$P.LGj#;f#.72!C`X%^[4IR.$5>8CoBNG_IPI/s!YxO"=#a?,@yoI2DR/C/j6P_sNa+[`Hw%rn?# y8KU(0kX4Y0P94-]W5[T<2pB4 Z_SH"1T0 )i8P?BB)u:SgL0]h:gC q(^9jYlKDf.z@VK-uE;2s&7lUGl?@Sa&-QWyH:h3[KqWv6k`zp>^bCmdO[(gV2.pHghU#&4h)U;((r61p!'qM87jTNg*,dOIM,Ypd-2:99gWiI5@+2K#6mzwh:8!V-$S8RGa-;WUN!!HUD+iHkLto!_J,( mK0w<5Z$%n!#v5Bipop"PfPZ+Cv Tn:Utys(`a3RQIW?*T9PDI<.4NU46]I1@,9MUk$Bp*\3K4@i95V*FgBk=fe;:#)2CH9