From 442f955cf5404b310d4d36215899558fbc839a47 Mon Sep 17 00:00:00 2001 From: h3xduck Date: Wed, 24 Nov 2021 20:41:07 -0500 Subject: [PATCH] Added module which arbitrarily increases the size of the packet we received. Needs some tweaking to allow for modification of the header and payload fields yet, but the space allocation is already there. Also, multiple improvements overall --- src/.output/xdp_filter.bpf.o | Bin 7128 -> 10744 bytes src/.output/xdp_filter.o | Bin 27792 -> 31864 bytes src/.output/xdp_filter.skel.h | 690 ++++++++++++++--------- src/bin/xdp_filter | Bin 1573168 -> 1577576 bytes src/ebpf/xdp_filter.bpf.c | 49 +- src/include/packet/protocol/ip_helper.h | 31 + src/include/packet/protocol/tcp_helper.h | 25 + src/include/xdp/xdp_helper.h | 66 +++ 8 files changed, 592 insertions(+), 269 deletions(-) create mode 100644 src/include/packet/protocol/ip_helper.h create mode 100644 src/include/xdp/xdp_helper.h diff --git a/src/.output/xdp_filter.bpf.o b/src/.output/xdp_filter.bpf.o index 8a789c79ac59762692c2be873e10810b7d167df2..4b77ed7268dbbcef56f8b773164a4f19208d3386 100644 GIT binary patch literal 10744 zcmbtaYiwM_6`tMT5T|*O#=(S#Z(gt)96$0Pp%8E!I|(!*ZekQDp!H_=I(y4{cfF6q zX=&?-(1xl~okF3YR&@~-Y1JR8R5etp+_Wql-Oiv09|2t~dPj z(Q9-eeca%w(yh%mHIs7P3k&bVd{rcZ-G*4Snpf&G=uf1XQ@do z)Wy-$rUNapd1^j5)N8Ry$eZww6zG-iMBUp<9HjdMuEKR_Y{&#cpV z%e?t&Z9=KH(Yr@(qJ6#2TTT14|4K-oe&YC>)JwXb zK~2_QlUaYkX!JT=YTT~c4af@%)s#eVN#bK`!eAU-A_s%fAQyYhkW4R#jd;VA{UC0K7BMWC} z_0CDFud&v^Zf`g!1eF|HV&}@}<@&%wV-5Q0soq(Y{BpTi_KF45%}P)#EK~z!|7cLG zRlK}kI8x1h0an|+Os!n@3)K)09)lCndbKEn^wM56Q?ec_`xU=TUmiYQ^(%O4U;X5t zF(pAny^L97dfqHfPGFp~j!9;;yM}rQ+)5@FJA^5F$X80a2e~KZA>>_B9!Gw!lqZot zfCO5=^*gAGD#o&B%4~Bn-|RFJ%E~uj-HZivXy~9jaC8&|ZjU=+S5GqPJ9(dL8_bgGFtI9gZLKPg-Jk z$CFOI7agp%W$d=!j1*@@&+dl5pF=%Hkheu|l^FhygPYA-Sz_f;?K2{HqIZiZY@0*9 zBy=ATz131rvKfBjj^K;lT2c5mFk+r|zlmXH{ul@8OU@C`Bn)&cb3>+YSY{C9ZcqPH z-iAaz*EsvZGT#NZMc-1FyCL~EA~Dj_cQ+xOkn+vQ8KKFiJw{FK7v$Wz$X|oRU5Mje zhs2$aWBVS)f}$Ra8Kzm!YAjnyjbv3eT}|sp$}bp{8u7tGki$z~Nd*W@S$|BG$5Nv; zzvib5^k+&_soLgEs#d53M+%4%L7}QL)iD^U>UPQ|6zg)STs)#WbHx$AvsgJ?9P=xk zgS+>1R?3-9|8Qxzll>YF@>Rdw0oakD5syqUlBiV6wTxknWW5b&C#gKp(ITS!29AeA z@pgC#!$~Ic#ln#!^fumOrFS_s8f)Lxpszt8ldom{PP3&*mKsSH(nrwqoVFhfdkNbK zA5r~wz0DMd?GV7rWy?wL9?$kG`8BDSfXpu!{Aw!ar?Y-Jb(kAoN^f|SwNF>MyGv@p z2OeCODwW}~#}jL2?~!YgX5itD1*PeJZ3s${z3~!3DXJquX-@sH%~r6tWpc2!@gA&# zYB5vH*9Yt+j$p8souEUK-s&CReFFmr_7Cn)Vf$_{%w5)ecvRfG>h9hE)L>kYL=6n= z(8wAz+{cE$KF9STtgrtd%KHxtHs~%-MvoTOw9jfv+L8lNN*{%Gh!*FnTCApUd`Nm5 zJ?UU^c-Y(EZP6TR1i8G%)2nNSF-#+kV&RXZu>ew~bQQ0+HrSo?%#wE(@9wBswP&{5 z?WxFgHsbx!Jw-$Mj5p)u5nlTY6CXd>du)HgZ`h|fV(KY~>;&c^IxgB+lPQjj6bqdu zOVz4Dz9Nx^-sAE|Z0vp{2p;2`gYqVp8!U&t9MILz`_3Tajhc-8XlQ(gtNSk?kLTUO_AKqk=!kj z+^vz^J0iK;BDvcmxpzi#ySt*<(WC2*9$t6!_`0_!b6=o$Z*xwxJCb#y>L?c(7*syU z_=SqE_(|>I*iPc71XCX0oa6lN1o88-hJ+)%rfc!!X9;<`HAks$ApZr+?;3sLH;|Ga z7+qo-SpSjv6xo3C5K>D5pAZmH{sQm>Y3vqQB<@-^73TY9(hu{J&e~I5VM*Vk)Phz}+m%!hh z&&JgD5Z(g3H-uLJqszKJ^=|{FA8C)c2RIkPeZXTOd?zrvp!E+yzxm~uIwknK#Ajk^ zQZP(v0!#bzXOQ3U1pFiNzfk{o@Q>h|aJSJ6a8dA9;HC>0FZ}o%%6~vwoX4CvxD}ZF z|2ONu4SzWD?GEm7@LmTGIQSt44*}1gkIz}8=3go`=HPL`Pf(7ooghlmq#H6i+TJx_}K15nwCU`0CnOd`P zbuolD178Z^?ZB4>KMMV}TwHw+lHU$FZ{|53+Uo=69h${^fq5rv@eW{5@YB$5=43Rc zJz9z`IV#JA&sQ-_3^Ba-;42rVdxg)XA0|XA5M1E!|15ki-7x)1_+1YF4Y5BERz^81 z{ELqMHsO14WtiU6z$}R{|L4Nz)Q4%I_<>U#ray^&PIZ_b6aILZiSjDppKjjvW_u=GC=`rpf$rH;q|(5$QVA zuw-wMeK3}X>>!z`_>*Wo!23~C-yD2uC#cO*t59R!Rs8{<>0#=Z2NER4Lb56 z2j?AZ$7}1KbmTU^Sox0}`L6}jN9&Q=SrA%_yvG9M#Nl{IJcMM4xMTrx;&BJt^+Y!1 zlPm}kpS1uv@p%VdaPTDuUv{uwn8KsIWt?~+V$Z?heTMQLM?T=-AqSTnJnrBL2TwZq ztb@-x_=1BkIry@JL$AE{Cr&4I(&Kkto zf`czP__BlT`^!$Vzsu&aWQf>vuzg>tL3xiOA8_!HgG&w`ckqORCmnp&!RH-(!NHdt zeA&U+QtGr8rDYDb@sLWCcRBJN2itwa>JK^cl7q(`JmKJt?JX;By7`tiZ}pnB*SFrV z>c$nSql#-aeDnJGj^4rD9R#6YcIqF+bNOuc^Q@_VOzOzzkB;CjGF!&aPho@guj&rm zg;vvtRY&Fch|cA!+xDb>`?0ULw<~q0(%B}-yQ8lTM7rH5cSqkkh;-97(TcvY5NY%! z#~sp}tzshjf<&ZSL^=9y1ve5A?(UFEjjl1GZ#OneOD4mQe^HhjT$pT zxws^0{bTc38L>R*r#3>!zON0++w4}mvt-<2Y=ailu+tTRRV^S?UZ_1|$w+_gjH M15$t3ajskc|JJUEz5oCK literal 7128 zcmbtYS!`Ta8UDwPvo(veI8CWUZnkEeWxOU$lsHVhB@tFLa$Gebt**y2cRZJjXU4On zE`(wvkn$K+AXPkog#aN6QXW955F(M_p%s0|Ly?dOBJhB!!b5~ATEs*6zO&fZC)Xu{ zUvus`-@l#z?B~o^N5)255(%-CkdI{vS+2;NJD197RZPo9*&x}is}#y^(egXnbiSrl zWD|-5y;{E0aeBK&gsN?#4e#tQcB@79&~6G2K(sS16>gLDDxcluV1R3gf{~zJWxI+epOULL!CR_Nlz1b+znGirhzd?cgxJXOu*L z=!f>!Pn-Pn5hdZalu~#VcJ%ua@>Aq*rx*A`H?g#))kW>f0uNRrPIVV?lSaI$r}l>JMyP>et;`q`qzPCuK)}dn0_dhpz7AH1jr` z(2s53tnuHGXq5)|w7;xX)wfOFSAJ)+5P)7x{QFUWd^XEg5&!E^U11&9i;0gPSwB~l zhW;>)%_!P>Z^PXbaD9jN+a~X-dWM_Xk~es9xa(|YOa?2>a^A}ogWOfGkPS=T85xuz z8I}=mf4E*o<*bYcxgfk2*;k z%o>9Nl;Mvp^J zDmeJMgSD29+15vuH;kU$N`Bwe)Dz!=$fZj9X0Sl)`nI$7opz%7SWQ@#s{e9oQSrp!6E7l|=bmrIg5&mwVIvEt7n z28@@A;VEE}8jrbr)t|{rKHJEuj~|pZ@@E3D!t!)2sMq}v^FJTVNo~%bZ3fN2*DzQv z_5EgFuQbc`aJr0T7M2^5Ys|q(Ls(BuuRm3;)+*D|RjkYeU6uM&WiF_9O^lxHs@HN| z!Bn--Mg2lpY6P_uU@9jb=voEK_8?*EUYfY zbug^PM&l*JYFr>;^@-xJ)z-0-=8Euj4nK&}i1m zUb#^z){~H8k_PogWT4nDv?ANDR%#7uslK^5GBiFi;b+baeID8H$VHSdj8Ci(E|0pG z%X`(p3(7Iz2t*-N`!|H>&m!K4gz$9c;|{QIVn|b!abJJcf68nT!8E*k^4# z(G~W;+!@pm#0G(Jh~M+0l`wpTD+lFXmRFb# z=i(X^z0AB^_NIOqyu(PO*O7jV)cKLtC%%ug{}Zjd8pfxP zI+D0`flql8ci+}f#e}?V@KdgFgiBx|xvf2<`_)laxN?+krC?d;s`T z1gC)~BX}6N8o?)k=M3({HFw=YLJ)%TUnKs1Lf$kOAu583>YuMc{>*jskCFeJ`fsCu z4E}`pmkGIN@D^OX+uj2}Kh{wGA=1VY#@NB_!0eBAAzybN{o%;F9emuuX$PNkaK^!x zfLY&P7~kK~euLX^?QDODct4%Ktu$KHuthZshR^Pc(jmiVw?v6kj(x-CM~Tyid``0{ z{aS$*xff-k`~$=1G>p=`0*KS`@0)thMU_#;$^*5i|sg8yU;pN|HT)#vhKy}K26 ziT_)}-)s1MP>_C#M14LiNY>8{l*zYmclEkZ8hlAwEyGykV@){3?P-gC$0><@C=LN_ zjrh4~Tqcb@nx`J(lMZHFBrE53MY32GB6yyH2xa!8aWIO$RSH_$LnjjlqnGbH*M~#GG4c77P(*EI>{?>ENn^=N)|0 z!3z$)<>0#xzUSZv4u0rhJHBKy-gYyd7JClvc5vFk83#`~xa#0}2j6t?f`e~4_^yNR zIrxEtA38X)WOVx@Dr8+&F5?QCnKu9 zcq2^V>fOjrNvi(ZjLOZ8(bltgNgf*Jq+_Ub|w&3LM3B>*H z)9j=3m#)@2{w^5%R)=rrtv%1III>(7YueaHrm^Dx(J;Pf4NdOa*NwfSCTC4R|KPv1 z5pwPMhoH-&`UxAj(=b=phprnt?bGf2irDjN1Ij#aZ2$3WB=J0VLR9>B_)jQkL48H| ztYSUZ-nf?vcyabcbFsP=vBwSfF?;%rv){>!8_13$^*G1e`j3LwI`)WR%p)z*2mF^7 Z#CAu??Z1~Gbh=one`M^x=NLFp{sW;{>|X!? diff --git a/src/.output/xdp_filter.o b/src/.output/xdp_filter.o index 4f368d8bfeb909dea29587bced12470dc0cd0512..9025010204e14c300e50a4e05938fe6bab542661 100644 GIT binary patch literal 31864 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 delta 8081 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 S`alG;_vCoyw=3pND&g;??uXL= diff --git a/src/.output/xdp_filter.skel.h b/src/.output/xdp_filter.skel.h index e4e74f0..d6cc5be 100644 --- a/src/.output/xdp_filter.skel.h +++ b/src/.output/xdp_filter.skel.h @@ -29,7 +29,13 @@ struct xdp_filter_bpf { char xdp_receive_____fmt_6[2]; char xdp_receive_____fmt_7[54]; char xdp_receive_____fmt_8[2]; - char xdp_receive_____fmt_9[15]; + char xdp_receive_____fmt_9[38]; + char xdp_receive_____fmt_10[38]; + char xdp_receive_____fmt_11[38]; + char xdp_receive_____fmt_12[53]; + char xdp_receive_____fmt_13[38]; + char xdp_receive_____fmt_14[41]; + char expand_tcp_packet_payload_____fmt[52]; } *rodata; }; @@ -140,281 +146,431 @@ xdp_filter_bpf__create_skeleton(struct xdp_filter_bpf *obj) s->progs[0].prog = &obj->progs.xdp_receive; s->progs[0].link = &obj->links.xdp_receive; - s->data_sz = 7128; + s->data_sz = 10744; s->data = (void *)"\ \x7f\x45\x4c\x46\x02\x01\x01\0\0\0\0\0\0\0\0\0\x01\0\xf7\0\x01\0\0\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\x98\x18\0\0\0\0\0\0\0\0\0\0\x40\0\0\0\0\0\x40\0\x0d\0\ -\x0c\0\x61\x12\x04\0\0\0\0\0\x61\x11\0\0\0\0\0\0\xbf\x13\0\0\0\0\0\0\x07\x03\0\ -\0\x0e\0\0\0\x3d\x32\x04\0\0\0\0\0\x18\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\ -\0\0\x13\0\0\0\x05\0\x11\0\0\0\0\0\xbf\x16\0\0\0\0\0\0\x07\x06\0\0\x22\0\0\0\ -\x3d\x62\x03\0\0\0\0\0\x18\x01\0\0\x13\0\0\0\0\0\0\0\0\0\0\0\x05\0\x0a\0\0\0\0\ -\0\x71\x13\x17\0\0\0\0\0\x15\x03\x03\0\x06\0\0\0\x18\x01\0\0\x15\0\0\0\0\0\0\0\ -\0\0\0\0\x05\0\x05\0\0\0\0\0\xbf\x13\0\0\0\0\0\0\x07\x03\0\0\x36\0\0\0\x3d\x32\ -\x06\0\0\0\0\0\x18\x01\0\0\x17\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\0\0\x02\0\0\0\x85\ -\0\0\0\x06\0\0\0\xb7\0\0\0\x02\0\0\0\x95\0\0\0\0\0\0\0\x69\x13\x24\0\0\0\0\0\ -\x15\x03\x06\0\x23\x28\0\0\xdc\x03\0\0\x10\0\0\0\x18\x01\0\0\x19\0\0\0\0\0\0\0\ -\0\0\0\0\xb7\x02\0\0\x06\0\0\0\x85\0\0\0\x06\0\0\0\x05\0\xf6\xff\0\0\0\0\x69\ -\x13\x2e\0\0\0\0\0\x77\x03\0\0\x02\0\0\0\x57\x03\0\0\x3c\0\0\0\x69\x14\x10\0\0\ -\0\0\0\xdc\x04\0\0\x10\0\0\0\x1f\x34\0\0\0\0\0\0\x71\x11\x0e\0\0\0\0\0\x67\x01\ -\0\0\x02\0\0\0\x57\x01\0\0\x3c\0\0\0\x1f\x14\0\0\0\0\0\0\x15\x04\x03\0\x04\0\0\ -\0\x18\x01\0\0\x1f\0\0\0\0\0\0\0\0\0\0\0\x05\0\xe6\xff\0\0\0\0\x0f\x36\0\0\0\0\ -\0\0\xbf\x61\0\0\0\0\0\0\x07\x01\0\0\x04\0\0\0\x3d\x12\x03\0\0\0\0\0\x18\x01\0\ -\0\x21\0\0\0\0\0\0\0\0\0\0\0\x05\0\xdf\xff\0\0\0\0\x18\x01\0\0\x23\0\0\0\0\0\0\ -\0\0\0\0\0\xb7\x02\0\0\x36\0\0\0\xbf\x63\0\0\0\0\0\0\xb7\x04\0\0\x04\0\0\0\x85\ -\0\0\0\x06\0\0\0\x71\x61\0\0\0\0\0\0\x15\x01\x03\0\x74\0\0\0\x18\x01\0\0\x59\0\ -\0\0\0\0\0\0\0\0\0\0\x05\0\xd4\xff\0\0\0\0\x71\x61\x01\0\0\0\0\0\x55\x01\xfb\ -\xff\x65\0\0\0\x71\x61\x02\0\0\0\0\0\x55\x01\xf9\xff\x73\0\0\0\x71\x61\x03\0\0\ -\0\0\0\x55\x01\xf7\xff\x74\0\0\0\x18\x01\0\0\x5b\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\ -\0\0\x0f\0\0\0\x85\0\0\0\x06\0\0\0\xb7\x01\0\0\x62\0\0\0\x73\x16\x01\0\0\0\0\0\ -\x05\0\xc9\xff\0\0\0\0\x44\x75\x61\x6c\x20\x42\x53\x44\x2f\x47\x50\x4c\0\x42\ -\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x66\x61\x69\x6c\x20\x41\0\x42\0\ -\x43\0\x44\0\x45\x20\x25\x69\x0a\0\x46\0\x47\0\x52\x65\x63\x65\x69\x76\x65\x64\ -\x20\x76\x61\x6c\x69\x64\x20\x54\x43\x50\x20\x70\x61\x63\x6b\x65\x74\x20\x77\ -\x69\x74\x68\x20\x70\x61\x79\x6c\x6f\x61\x64\x20\x25\x73\x20\x6f\x66\x20\x73\ -\x69\x7a\x65\x20\x25\x69\x0a\0\x48\0\x42\x50\x46\x20\x66\x69\x6e\x69\x73\x68\ -\x65\x64\x0a\x20\0\x9f\xeb\x01\0\x18\0\0\0\0\0\0\0\xb4\x02\0\0\xb4\x02\0\0\x26\ -\x07\0\0\0\0\0\0\0\0\0\x02\x02\0\0\0\x01\0\0\0\x06\0\0\x04\x18\0\0\0\x08\0\0\0\ -\x03\0\0\0\0\0\0\0\x0d\0\0\0\x03\0\0\0\x20\0\0\0\x16\0\0\0\x03\0\0\0\x40\0\0\0\ -\x20\0\0\0\x03\0\0\0\x60\0\0\0\x30\0\0\0\x03\0\0\0\x80\0\0\0\x3f\0\0\0\x03\0\0\ -\0\xa0\0\0\0\x4e\0\0\0\0\0\0\x08\x04\0\0\0\x54\0\0\0\0\0\0\x01\x04\0\0\0\x20\0\ -\0\0\0\0\0\0\x01\0\0\x0d\x06\0\0\0\x61\0\0\0\x01\0\0\0\x65\0\0\0\0\0\0\x01\x04\ -\0\0\0\x20\0\0\x01\x69\0\0\0\x01\0\0\x0c\x05\0\0\0\x1b\x06\0\0\0\0\0\x01\x01\0\ -\0\0\x08\0\0\x01\0\0\0\0\0\0\0\x03\0\0\0\0\x08\0\0\0\x0a\0\0\0\x0d\0\0\0\x20\ -\x06\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\0\x34\x06\0\0\0\0\0\x0e\x09\0\0\0\x01\0\0\ -\0\0\0\0\0\0\0\0\x0a\x08\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\ -\x13\0\0\0\x3c\x06\0\0\0\0\0\x0e\x0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\ -\x0c\0\0\0\x0a\0\0\0\x02\0\0\0\x50\x06\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\x66\x06\ -\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\x7c\x06\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\0\0\0\ -\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x06\0\0\0\x92\x06\0\0\0\0\0\x0e\x13\0\ -\0\0\0\0\0\0\xa8\x06\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\xbe\x06\0\0\0\0\0\x0e\x0f\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x36\0\0\0\xd4\x06\ -\0\0\0\0\0\x0e\x17\0\0\0\0\0\0\0\xea\x06\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\0\0\0\ -\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x0f\0\0\0\0\x07\0\0\0\0\0\x0e\x1a\0\0\ -\0\0\0\0\0\x16\x07\0\0\x0a\0\0\x0f\0\0\0\0\x0e\0\0\0\0\0\0\0\x13\0\0\0\x10\0\0\ -\0\x13\0\0\0\x02\0\0\0\x11\0\0\0\x15\0\0\0\x02\0\0\0\x12\0\0\0\x17\0\0\0\x02\0\ -\0\0\x14\0\0\0\x19\0\0\0\x06\0\0\0\x15\0\0\0\x1f\0\0\0\x02\0\0\0\x16\0\0\0\x21\ -\0\0\0\x02\0\0\0\x18\0\0\0\x23\0\0\0\x36\0\0\0\x19\0\0\0\x59\0\0\0\x02\0\0\0\ -\x1b\0\0\0\x5b\0\0\0\x0f\0\0\0\x1e\x07\0\0\x01\0\0\x0f\0\0\0\0\x0b\0\0\0\0\0\0\ -\0\x0d\0\0\0\0\x78\x64\x70\x5f\x6d\x64\0\x64\x61\x74\x61\0\x64\x61\x74\x61\x5f\ -\x65\x6e\x64\0\x64\x61\x74\x61\x5f\x6d\x65\x74\x61\0\x69\x6e\x67\x72\x65\x73\ -\x73\x5f\x69\x66\x69\x6e\x64\x65\x78\0\x72\x78\x5f\x71\x75\x65\x75\x65\x5f\x69\ -\x6e\x64\x65\x78\0\x65\x67\x72\x65\x73\x73\x5f\x69\x66\x69\x6e\x64\x65\x78\0\ -\x5f\x5f\x75\x33\x32\0\x75\x6e\x73\x69\x67\x6e\x65\x64\x20\x69\x6e\x74\0\x63\ +\0\0\0\0\0\0\0\0\0\0\0\xb8\x26\0\0\0\0\0\0\0\0\0\0\x40\0\0\0\0\0\x40\0\x0d\0\ +\x0c\0\xbf\x17\0\0\0\0\0\0\x61\x76\x04\0\0\0\0\0\x61\x79\0\0\0\0\0\0\xbf\x91\0\ +\0\0\0\0\0\x07\x01\0\0\x0e\0\0\0\x3d\x16\x04\0\0\0\0\0\x18\x01\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\xb7\x02\0\0\x13\0\0\0\x05\0\x11\0\0\0\0\0\xbf\x98\0\0\0\0\0\0\x07\ +\x08\0\0\x22\0\0\0\x3d\x86\x03\0\0\0\0\0\x18\x01\0\0\x13\0\0\0\0\0\0\0\0\0\0\0\ +\x05\0\x0a\0\0\0\0\0\x71\x91\x17\0\0\0\0\0\x15\x01\x03\0\x06\0\0\0\x18\x01\0\0\ +\x15\0\0\0\0\0\0\0\0\0\0\0\x05\0\x05\0\0\0\0\0\xbf\x91\0\0\0\0\0\0\x07\x01\0\0\ +\x36\0\0\0\x3d\x16\x06\0\0\0\0\0\x18\x01\0\0\x17\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\ +\0\0\x02\0\0\0\x85\0\0\0\x06\0\0\0\xb7\0\0\0\x02\0\0\0\x95\0\0\0\0\0\0\0\x69\ +\x93\x24\0\0\0\0\0\x15\x03\x06\0\x23\x28\0\0\xdc\x03\0\0\x10\0\0\0\x18\x01\0\0\ +\x19\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\0\0\x06\0\0\0\x85\0\0\0\x06\0\0\0\x05\0\xf6\ +\xff\0\0\0\0\x69\x91\x2e\0\0\0\0\0\x77\x01\0\0\x02\0\0\0\x57\x01\0\0\x3c\0\0\0\ +\x69\x92\x10\0\0\0\0\0\xdc\x02\0\0\x10\0\0\0\x1f\x12\0\0\0\0\0\0\x71\x93\x0e\0\ +\0\0\0\0\x67\x03\0\0\x02\0\0\0\x57\x03\0\0\x3c\0\0\0\x1f\x32\0\0\0\0\0\0\x15\ +\x02\x03\0\x04\0\0\0\x18\x01\0\0\x1f\0\0\0\0\0\0\0\0\0\0\0\x05\0\xe6\xff\0\0\0\ +\0\x0f\x18\0\0\0\0\0\0\xbf\x81\0\0\0\0\0\0\x07\x01\0\0\x04\0\0\0\x3d\x16\x03\0\ +\0\0\0\0\x18\x01\0\0\x21\0\0\0\0\0\0\0\0\0\0\0\x05\0\xdf\xff\0\0\0\0\x18\x01\0\ +\0\x23\0\0\0\0\0\0\0\0\0\0\0\xb7\x02\0\0\x36\0\0\0\xbf\x83\0\0\0\0\0\0\xb7\x04\ +\0\0\x04\0\0\0\x85\0\0\0\x06\0\0\0\x71\x81\0\0\0\0\0\0\x15\x01\x03\0\x74\0\0\0\ +\x18\x01\0\0\x59\0\0\0\0\0\0\0\0\0\0\0\x05\0\xd4\xff\0\0\0\0\x71\x81\x01\0\0\0\ +\0\0\x55\x01\xfb\xff\x65\0\0\0\x71\x81\x02\0\0\0\0\0\x55\x01\xf9\xff\x73\0\0\0\ +\x71\x81\x03\0\0\0\0\0\x55\x01\xf7\xff\x74\0\0\0\xbf\x71\0\0\0\0\0\0\xb7\x02\0\ +\0\x02\0\0\0\x85\0\0\0\x41\0\0\0\x15\0\x14\0\0\0\0\0\x18\x01\0\0\x51\x01\0\0\0\ +\0\0\0\0\0\0\0\xb7\x02\0\0\x34\0\0\0\xb7\x03\0\0\x02\0\0\0\x85\0\0\0\x06\0\0\0\ +\x18\x01\0\0\x02\x01\0\0\0\0\0\0\0\0\0\0\xb7\x02\0\0\x26\0\0\0\x85\0\0\0\x06\0\ +\0\0\xbf\x97\0\0\0\0\0\0\xbf\x68\0\0\0\0\0\0\x1f\x96\0\0\0\0\0\0\x1f\x78\0\0\0\ +\0\0\0\x18\x01\0\0\x28\x01\0\0\0\0\0\0\0\0\0\0\xb7\x02\0\0\x29\0\0\0\xbf\x63\0\ +\0\0\0\0\0\xbf\x84\0\0\0\0\0\0\x85\0\0\0\x06\0\0\0\x05\0\xb8\xff\0\0\0\0\x61\ +\x78\x04\0\0\0\0\0\x61\x77\0\0\0\0\0\0\xbf\x71\0\0\0\0\0\0\x07\x01\0\0\x0e\0\0\ +\0\x3d\x18\x03\0\0\0\0\0\x18\x01\0\0\x5b\0\0\0\0\0\0\0\0\0\0\0\x05\0\x0b\0\0\0\ +\0\0\xbf\x74\0\0\0\0\0\0\x07\x04\0\0\x22\0\0\0\x3d\x48\x03\0\0\0\0\0\x18\x01\0\ +\0\x81\0\0\0\0\0\0\0\0\0\0\0\x05\0\x05\0\0\0\0\0\xbf\x71\0\0\0\0\0\0\x07\x01\0\ +\0\x36\0\0\0\x3d\x18\x04\0\0\0\0\0\x18\x01\0\0\xa7\0\0\0\0\0\0\0\0\0\0\0\xb7\ +\x02\0\0\x26\0\0\0\x05\0\xa2\xff\0\0\0\0\x69\x75\x10\0\0\0\0\0\xdc\x05\0\0\x10\ +\0\0\0\x69\x71\x2e\0\0\0\0\0\x77\x01\0\0\x02\0\0\0\x57\x01\0\0\x3c\0\0\0\x0f\ +\x14\0\0\0\0\0\0\x1f\x15\0\0\0\0\0\0\x71\x71\x0e\0\0\0\0\0\x67\x01\0\0\x02\0\0\ +\0\x57\x01\0\0\x3c\0\0\0\x1f\x15\0\0\0\0\0\0\x18\x01\0\0\xcd\0\0\0\0\0\0\0\0\0\ +\0\0\xb7\x02\0\0\x35\0\0\0\xb7\x03\0\0\0\0\0\0\x85\0\0\0\x06\0\0\0\x05\0\xd1\ +\xff\0\0\0\0\x44\x75\x61\x6c\x20\x42\x53\x44\x2f\x47\x50\x4c\0\x42\x6f\x75\x6e\ +\x64\x20\x63\x68\x65\x63\x6b\x20\x66\x61\x69\x6c\x20\x41\0\x42\0\x43\0\x44\0\ +\x45\x20\x25\x69\x0a\0\x46\0\x47\0\x52\x65\x63\x65\x69\x76\x65\x64\x20\x76\x61\ +\x6c\x69\x64\x20\x54\x43\x50\x20\x70\x61\x63\x6b\x65\x74\x20\x77\x69\x74\x68\ +\x20\x70\x61\x79\x6c\x6f\x61\x64\x20\x25\x73\x20\x6f\x66\x20\x73\x69\x7a\x65\ +\x20\x25\x69\x0a\0\x48\0\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x41\ +\x20\x66\x61\x69\x6c\x65\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\ +\x64\x69\x6e\x67\x0a\0\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x42\x20\ +\x66\x61\x69\x6c\x65\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\x64\ +\x69\x6e\x67\x0a\0\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x44\x20\x66\ +\x61\x69\x6c\x65\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\x64\x69\ +\x6e\x67\x0a\0\x42\x50\x46\x20\x66\x69\x6e\x69\x73\x68\x65\x64\x20\x77\x69\x74\ +\x68\x20\x72\x65\x74\x20\x25\x69\x20\x61\x6e\x64\x20\x70\x61\x79\x6c\x6f\x61\ +\x64\x20\x25\x73\x20\x6f\x66\x20\x73\x69\x7a\x65\x20\x25\x69\x0a\x20\0\x42\x50\ +\x46\x20\x66\x69\x6e\x69\x73\x68\x65\x64\x20\x77\x69\x74\x68\x20\x65\x72\x72\ +\x6f\x72\x20\x6f\x6e\x20\x65\x78\x70\x61\x6e\x73\x69\x6f\x6e\x0a\0\x50\x72\x65\ +\x76\x69\x6f\x75\x73\x20\x6c\x65\x6e\x67\x74\x68\x3a\x20\x25\x69\x2c\x20\x63\ +\x75\x72\x72\x65\x6e\x74\x20\x6c\x65\x6e\x67\x74\x68\x3a\x20\x25\x69\x0a\0\x46\ +\x61\x69\x6c\x65\x64\x20\x74\x6f\x20\x65\x78\x70\x61\x6e\x64\x20\x61\x20\x74\ +\x63\x70\x20\x70\x61\x63\x6b\x65\x74\x20\x72\x65\x73\x65\x72\x76\x65\x64\x20\ +\x62\x79\x74\x65\x73\x20\x62\x79\x20\x25\x69\x0a\0\x9f\xeb\x01\0\x18\0\0\0\0\0\ +\0\0\xa4\x03\0\0\xa4\x03\0\0\x97\x0b\0\0\0\0\0\0\0\0\0\x02\x02\0\0\0\x01\0\0\0\ +\x06\0\0\x04\x18\0\0\0\x08\0\0\0\x03\0\0\0\0\0\0\0\x0d\0\0\0\x03\0\0\0\x20\0\0\ +\0\x16\0\0\0\x03\0\0\0\x40\0\0\0\x20\0\0\0\x03\0\0\0\x60\0\0\0\x30\0\0\0\x03\0\ +\0\0\x80\0\0\0\x3f\0\0\0\x03\0\0\0\xa0\0\0\0\x4e\0\0\0\0\0\0\x08\x04\0\0\0\x54\ +\0\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\0\0\0\0\0\x01\0\0\x0d\x06\0\0\0\x61\0\0\0\ +\x01\0\0\0\x65\0\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\x01\x69\0\0\0\x01\0\0\x0c\x05\ +\0\0\0\xf7\x09\0\0\0\0\0\x01\x01\0\0\0\x08\0\0\x01\0\0\0\0\0\0\0\x03\0\0\0\0\ +\x08\0\0\0\x0a\0\0\0\x0d\0\0\0\xfc\x09\0\0\0\0\0\x01\x04\0\0\0\x20\0\0\0\x10\ +\x0a\0\0\0\0\0\x0e\x09\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\x0a\x08\0\0\0\0\0\0\0\0\0\ +\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x13\0\0\0\x18\x0a\0\0\0\0\0\x0e\x0d\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x02\0\0\0\x2c\x0a\0\0\0\0\ +\0\x0e\x0f\0\0\0\0\0\0\0\x42\x0a\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\x58\x0a\0\0\0\ +\0\0\x0e\x0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x06\0\ +\0\0\x6e\x0a\0\0\0\0\0\x0e\x13\0\0\0\0\0\0\0\x84\x0a\0\0\0\0\0\x0e\x0f\0\0\0\0\ +\0\0\0\x9a\x0a\0\0\0\0\0\x0e\x0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\ +\0\0\x0a\0\0\0\x36\0\0\0\xb0\x0a\0\0\0\0\0\x0e\x17\0\0\0\0\0\0\0\xc6\x0a\0\0\0\ +\0\0\x0e\x0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x26\0\ +\0\0\xdc\x0a\0\0\0\0\0\x0e\x1a\0\0\0\0\0\0\0\xf2\x0a\0\0\0\0\0\x0e\x1a\0\0\0\0\ +\0\0\0\x09\x0b\0\0\0\0\0\x0e\x1a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\ +\0\0\x0a\0\0\0\x35\0\0\0\x20\x0b\0\0\0\0\0\x0e\x1e\0\0\0\0\0\0\0\x37\x0b\0\0\0\ +\0\0\x0e\x1a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\0\x0a\0\0\0\x29\0\ +\0\0\x4e\x0b\0\0\0\0\0\x0e\x21\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\0\0\0\x0c\0\0\ +\0\x0a\0\0\0\x34\0\0\0\x65\x0b\0\0\0\0\0\x0e\x23\0\0\0\0\0\0\0\x87\x0b\0\0\x10\ +\0\0\x0f\0\0\0\0\x0e\0\0\0\0\0\0\0\x13\0\0\0\x10\0\0\0\x13\0\0\0\x02\0\0\0\x11\ +\0\0\0\x15\0\0\0\x02\0\0\0\x12\0\0\0\x17\0\0\0\x02\0\0\0\x14\0\0\0\x19\0\0\0\ +\x06\0\0\0\x15\0\0\0\x1f\0\0\0\x02\0\0\0\x16\0\0\0\x21\0\0\0\x02\0\0\0\x18\0\0\ +\0\x23\0\0\0\x36\0\0\0\x19\0\0\0\x59\0\0\0\x02\0\0\0\x1b\0\0\0\x5b\0\0\0\x26\0\ +\0\0\x1c\0\0\0\x81\0\0\0\x26\0\0\0\x1d\0\0\0\xa7\0\0\0\x26\0\0\0\x1f\0\0\0\xcd\ +\0\0\0\x35\0\0\0\x20\0\0\0\x02\x01\0\0\x26\0\0\0\x22\0\0\0\x28\x01\0\0\x29\0\0\ +\0\x24\0\0\0\x51\x01\0\0\x34\0\0\0\x8f\x0b\0\0\x01\0\0\x0f\0\0\0\0\x0b\0\0\0\0\ +\0\0\0\x0d\0\0\0\0\x78\x64\x70\x5f\x6d\x64\0\x64\x61\x74\x61\0\x64\x61\x74\x61\ +\x5f\x65\x6e\x64\0\x64\x61\x74\x61\x5f\x6d\x65\x74\x61\0\x69\x6e\x67\x72\x65\ +\x73\x73\x5f\x69\x66\x69\x6e\x64\x65\x78\0\x72\x78\x5f\x71\x75\x65\x75\x65\x5f\ +\x69\x6e\x64\x65\x78\0\x65\x67\x72\x65\x73\x73\x5f\x69\x66\x69\x6e\x64\x65\x78\ +\0\x5f\x5f\x75\x33\x32\0\x75\x6e\x73\x69\x67\x6e\x65\x64\x20\x69\x6e\x74\0\x63\ \x74\x78\0\x69\x6e\x74\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\0\x78\x64\ \x70\x5f\x70\x72\x6f\x67\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\ \x2f\x54\x46\x47\x2f\x73\x72\x63\x2f\x65\x62\x70\x66\x2f\x78\x64\x70\x5f\x66\ -\x69\x6c\x74\x65\x72\x2e\x62\x70\x66\x2e\x63\0\x20\x20\x20\x20\x76\x6f\x69\x64\ -\x20\x2a\x64\x61\x74\x61\x5f\x65\x6e\x64\x20\x3d\x20\x28\x76\x6f\x69\x64\x20\ -\x2a\x29\x28\x6c\x6f\x6e\x67\x29\x63\x74\x78\x2d\x3e\x64\x61\x74\x61\x5f\x65\ -\x6e\x64\x3b\0\x20\x20\x20\x20\x76\x6f\x69\x64\x20\x2a\x64\x61\x74\x61\x20\x3d\ -\x20\x28\x76\x6f\x69\x64\x20\x2a\x29\x28\x6c\x6f\x6e\x67\x29\x63\x74\x78\x2d\ -\x3e\x64\x61\x74\x61\x3b\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\ -\x2f\x54\x46\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\x70\x61\ -\x63\x6b\x65\x74\x2f\x70\x61\x63\x6b\x65\x74\x5f\x6d\x61\x6e\x61\x67\x65\x72\ -\x2e\x68\0\x20\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x65\ -\x74\x68\x20\x2b\x20\x73\x69\x7a\x65\x6f\x66\x28\x73\x74\x72\x75\x63\x74\x20\ -\x65\x74\x68\x68\x64\x72\x29\x20\x3e\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\ -\x7b\0\x20\x20\x20\x20\x69\x66\x28\x65\x74\x68\x65\x72\x6e\x65\x74\x5f\x68\x65\ -\x61\x64\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x65\x74\ -\x68\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x3c\x30\x29\x7b\0\x20\x20\x20\ -\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x6f\ -\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x66\x61\x69\x6c\x20\x41\x22\x29\x3b\0\ -\x20\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x69\x70\x20\ -\x2b\x20\x73\x69\x7a\x65\x6f\x66\x28\x2a\x69\x70\x29\x20\x3e\x20\x64\x61\x74\ -\x61\x5f\x65\x6e\x64\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x69\x70\x5f\x68\ +\x69\x6c\x74\x65\x72\x2e\x62\x70\x66\x2e\x63\0\x69\x6e\x74\x20\x78\x64\x70\x5f\ +\x72\x65\x63\x65\x69\x76\x65\x28\x73\x74\x72\x75\x63\x74\x20\x78\x64\x70\x5f\ +\x6d\x64\x20\x2a\x63\x74\x78\x29\0\x20\x20\x20\x20\x76\x6f\x69\x64\x20\x2a\x64\ +\x61\x74\x61\x5f\x65\x6e\x64\x20\x3d\x20\x28\x76\x6f\x69\x64\x20\x2a\x29\x28\ +\x6c\x6f\x6e\x67\x29\x63\x74\x78\x2d\x3e\x64\x61\x74\x61\x5f\x65\x6e\x64\x3b\0\ +\x20\x20\x20\x20\x76\x6f\x69\x64\x20\x2a\x64\x61\x74\x61\x20\x3d\x20\x28\x76\ +\x6f\x69\x64\x20\x2a\x29\x28\x6c\x6f\x6e\x67\x29\x63\x74\x78\x2d\x3e\x64\x61\ +\x74\x61\x3b\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\x2f\x54\x46\ +\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\x70\x61\x63\x6b\x65\ +\x74\x2f\x70\x61\x63\x6b\x65\x74\x5f\x6d\x61\x6e\x61\x67\x65\x72\x2e\x68\0\x20\ +\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x65\x74\x68\x20\ +\x2b\x20\x73\x69\x7a\x65\x6f\x66\x28\x73\x74\x72\x75\x63\x74\x20\x65\x74\x68\ +\x68\x64\x72\x29\x20\x3e\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x7b\0\x20\x20\ +\x20\x20\x69\x66\x28\x65\x74\x68\x65\x72\x6e\x65\x74\x5f\x68\x65\x61\x64\x65\ +\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x65\x74\x68\x2c\x20\ +\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x3c\x30\x29\x7b\0\x20\x20\x20\x20\x20\x20\ +\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x6f\x75\x6e\x64\ +\x20\x63\x68\x65\x63\x6b\x20\x66\x61\x69\x6c\x20\x41\x22\x29\x3b\0\x20\x20\x20\ +\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x69\x70\x20\x2b\x20\x73\ +\x69\x7a\x65\x6f\x66\x28\x2a\x69\x70\x29\x20\x3e\x20\x64\x61\x74\x61\x5f\x65\ +\x6e\x64\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x69\x70\x5f\x68\x65\x61\x64\ +\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x69\x70\x2c\x20\ +\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x3c\x30\x29\x7b\0\x20\x20\x20\x20\x20\x20\ +\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x22\x29\x3b\0\x20\ +\x20\x20\x20\x73\x77\x69\x74\x63\x68\x28\x69\x70\x2d\x3e\x70\x72\x6f\x74\x6f\ +\x63\x6f\x6c\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x67\x65\x74\x5f\x70\x72\ +\x6f\x74\x6f\x63\x6f\x6c\x28\x64\x61\x74\x61\x29\x20\x21\x3d\x20\x49\x50\x50\ +\x52\x4f\x54\x4f\x5f\x54\x43\x50\x29\x7b\0\x20\x20\x20\x20\x20\x20\x20\x20\x62\ +\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x43\x22\x29\x3b\0\x20\x20\x20\x20\ +\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x74\x63\x70\x20\x2b\x20\x73\ +\x69\x7a\x65\x6f\x66\x28\x2a\x74\x63\x70\x29\x20\x3e\x20\x64\x61\x74\x61\x5f\ +\x65\x6e\x64\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x74\x63\x70\x5f\x68\x65\ +\x61\x64\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x74\x63\ +\x70\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x29\x7b\0\x20\x20\x20\x20\x20\ +\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x44\x22\x29\x3b\0\ +\x7d\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\x2f\x54\x46\x47\x2f\ +\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\x70\x61\x63\x6b\x65\x74\x2f\ +\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x2f\x74\x63\x70\x5f\x68\x65\x6c\x70\x65\x72\ +\x2e\x68\0\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6e\x20\x6e\x74\x6f\x68\x73\x28\ +\x74\x63\x70\x2d\x3e\x64\x65\x73\x74\x29\x3b\0\x20\x20\x20\x20\x69\x66\x20\x28\ +\x67\x65\x74\x5f\x74\x63\x70\x5f\x64\x65\x73\x74\x5f\x70\x6f\x72\x74\x28\x74\ +\x63\x70\x29\x20\x21\x3d\x20\x53\x45\x43\x52\x45\x54\x5f\x50\x41\x43\x4b\x45\ +\x54\x5f\x44\x45\x53\x54\x5f\x50\x4f\x52\x54\x29\x7b\0\x20\x20\x20\x20\x20\x20\ +\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x45\x20\x25\x69\x5c\ +\x6e\x22\x2c\x20\x6e\x74\x6f\x68\x73\x28\x74\x63\x70\x2d\x3e\x64\x65\x73\x74\ +\x29\x29\x3b\0\x20\x20\x20\x20\x70\x61\x79\x6c\x6f\x61\x64\x5f\x73\x69\x7a\x65\ +\x20\x3d\x20\x6e\x74\x6f\x68\x73\x28\x69\x70\x2d\x3e\x74\x6f\x74\x5f\x6c\x65\ +\x6e\x29\x20\x2d\x20\x28\x74\x63\x70\x2d\x3e\x64\x6f\x66\x66\x20\x2a\x20\x34\ +\x29\x20\x2d\x20\x28\x69\x70\x2d\x3e\x69\x68\x6c\x20\x2a\x20\x34\x29\x3b\0\x20\ +\x20\x20\x20\x69\x66\x20\x28\x70\x61\x79\x6c\x6f\x61\x64\x5f\x73\x69\x7a\x65\ +\x20\x21\x3d\x20\x73\x69\x7a\x65\x6f\x66\x28\x6d\x61\x74\x63\x68\x5f\x70\x61\ +\x74\x74\x65\x72\x6e\x29\x20\x2d\x20\x31\x29\x20\x7b\0\x20\x20\x20\x20\x20\x20\ +\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x46\x22\x29\x3b\0\x20\ +\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x70\x61\x79\x6c\ +\x6f\x61\x64\x20\x2b\x20\x70\x61\x79\x6c\x6f\x61\x64\x5f\x73\x69\x7a\x65\x20\ +\x3e\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\ +\x28\x74\x63\x70\x5f\x70\x61\x79\x6c\x6f\x61\x64\x5f\x62\x6f\x75\x6e\x64\x5f\ +\x63\x68\x65\x63\x6b\x28\x70\x61\x79\x6c\x6f\x61\x64\x2c\x20\x70\x61\x79\x6c\ +\x6f\x61\x64\x5f\x73\x69\x7a\x65\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\ +\x29\x7b\0\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\ +\x6b\x28\x22\x47\x22\x29\x3b\0\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\ +\x74\x6b\x28\x22\x52\x65\x63\x65\x69\x76\x65\x64\x20\x76\x61\x6c\x69\x64\x20\ +\x54\x43\x50\x20\x70\x61\x63\x6b\x65\x74\x20\x77\x69\x74\x68\x20\x70\x61\x79\ +\x6c\x6f\x61\x64\x20\x25\x73\x20\x6f\x66\x20\x73\x69\x7a\x65\x20\x25\x69\x5c\ +\x6e\x22\x2c\x20\x70\x61\x79\x6c\x6f\x61\x64\x2c\x20\x70\x61\x79\x6c\x6f\x61\ +\x64\x5f\x73\x69\x7a\x65\x29\x3b\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\ +\x65\x73\x2f\x54\x46\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\ +\x63\x6f\x6d\x6d\x6f\x6e\x2f\x63\x6f\x6d\x6d\x6f\x6e\x5f\x75\x74\x69\x6c\x73\ +\x2e\x68\0\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\x74\x72\x31\x5b\ +\x69\x69\x5d\x20\x21\x3d\x20\x73\x74\x72\x32\x5b\x69\x69\x5d\x29\x7b\0\x20\x20\ +\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x48\ +\x22\x29\x3b\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\x2f\x54\x46\ +\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\x78\x64\x70\x2f\x78\ +\x64\x70\x5f\x68\x65\x6c\x70\x65\x72\x2e\x68\0\x20\x20\x20\x20\x69\x66\x20\x28\ +\x62\x70\x66\x5f\x78\x64\x70\x5f\x61\x64\x6a\x75\x73\x74\x5f\x74\x61\x69\x6c\ +\x28\x63\x74\x78\x2c\x20\x28\x69\x6e\x74\x29\x28\x73\x69\x7a\x65\x6f\x66\x28\ +\x63\x68\x61\x72\x29\x2a\x6d\x6f\x72\x65\x5f\x62\x79\x74\x65\x73\x29\x29\x20\ +\x21\x3d\x20\x30\x29\0\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\ +\x69\x6e\x74\x6b\x28\x22\x46\x61\x69\x6c\x65\x64\x20\x74\x6f\x20\x65\x78\x70\ +\x61\x6e\x64\x20\x61\x20\x74\x63\x70\x20\x70\x61\x63\x6b\x65\x74\x20\x72\x65\ +\x73\x65\x72\x76\x65\x64\x20\x62\x79\x74\x65\x73\x20\x62\x79\x20\x25\x69\x5c\ +\x6e\x22\x2c\x20\x6d\x6f\x72\x65\x5f\x62\x79\x74\x65\x73\x29\x3b\0\x20\x20\x20\ +\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x50\ +\x46\x20\x66\x69\x6e\x69\x73\x68\x65\x64\x20\x77\x69\x74\x68\x20\x65\x72\x72\ +\x6f\x72\x20\x6f\x6e\x20\x65\x78\x70\x61\x6e\x73\x69\x6f\x6e\x5c\x6e\x22\x29\ +\x3b\0\x20\x20\x20\x20\x64\x61\x74\x61\x5f\x6c\x65\x6e\x5f\x6e\x65\x78\x74\x20\ +\x3d\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x2d\x64\x61\x74\x61\x3b\0\x20\x20\x20\ +\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x50\x72\x65\x76\x69\x6f\ +\x75\x73\x20\x6c\x65\x6e\x67\x74\x68\x3a\x20\x25\x69\x2c\x20\x63\x75\x72\x72\ +\x65\x6e\x74\x20\x6c\x65\x6e\x67\x74\x68\x3a\x20\x25\x69\x5c\x6e\x22\x2c\x20\ +\x64\x61\x74\x61\x5f\x6c\x65\x6e\x5f\x70\x72\x65\x76\x2c\x20\x64\x61\x74\x61\ +\x5f\x6c\x65\x6e\x5f\x6e\x65\x78\x74\x29\x3b\0\x20\x20\x20\x20\x72\x65\x74\x2e\ +\x72\x65\x74\x5f\x6d\x64\x20\x3d\x20\x2a\x63\x74\x78\x3b\0\x20\x20\x20\x20\x20\ +\x20\x20\x20\x69\x66\x28\x65\x74\x68\x65\x72\x6e\x65\x74\x5f\x68\x65\x61\x64\ +\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x65\x74\x68\x2c\ +\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x3c\x30\x29\x7b\0\x20\x20\x20\x20\x20\ +\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\ +\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x41\x20\x66\x61\x69\x6c\x65\ +\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\x64\x69\x6e\x67\x5c\x6e\ +\x22\x29\x3b\0\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x69\x70\x5f\x68\ \x65\x61\x64\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x69\ \x70\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x3c\x30\x29\x7b\0\x20\x20\x20\ -\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x22\ -\x29\x3b\0\x20\x20\x20\x20\x73\x77\x69\x74\x63\x68\x28\x69\x70\x2d\x3e\x70\x72\ -\x6f\x74\x6f\x63\x6f\x6c\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x67\x65\x74\ -\x5f\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x28\x64\x61\x74\x61\x29\x20\x21\x3d\x20\ -\x49\x50\x50\x52\x4f\x54\x4f\x5f\x54\x43\x50\x29\x7b\0\x20\x20\x20\x20\x20\x20\ -\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x43\x22\x29\x3b\0\x20\ -\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\x74\x63\x70\x20\ -\x2b\x20\x73\x69\x7a\x65\x6f\x66\x28\x2a\x74\x63\x70\x29\x20\x3e\x20\x64\x61\ -\x74\x61\x5f\x65\x6e\x64\x29\x7b\0\x20\x20\x20\x20\x69\x66\x20\x28\x74\x63\x70\ -\x5f\x68\x65\x61\x64\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\ -\x28\x74\x63\x70\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x29\x7b\0\x20\x20\ -\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x44\ -\x22\x29\x3b\0\x7d\0\x2f\x68\x6f\x6d\x65\x2f\x6f\x73\x62\x6f\x78\x65\x73\x2f\ -\x54\x46\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\x75\x64\x65\x2f\x70\x61\x63\ -\x6b\x65\x74\x2f\x70\x72\x6f\x74\x6f\x63\x6f\x6c\x2f\x74\x63\x70\x5f\x68\x65\ -\x6c\x70\x65\x72\x2e\x68\0\x20\x20\x20\x20\x72\x65\x74\x75\x72\x6e\x20\x6e\x74\ -\x6f\x68\x73\x28\x74\x63\x70\x2d\x3e\x64\x65\x73\x74\x29\x3b\0\x20\x20\x20\x20\ -\x69\x66\x20\x28\x67\x65\x74\x5f\x74\x63\x70\x5f\x64\x65\x73\x74\x5f\x70\x6f\ -\x72\x74\x28\x74\x63\x70\x29\x20\x21\x3d\x20\x53\x45\x43\x52\x45\x54\x5f\x50\ -\x41\x43\x4b\x45\x54\x5f\x44\x45\x53\x54\x5f\x50\x4f\x52\x54\x29\x7b\0\x20\x20\ -\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x45\ -\x20\x25\x69\x5c\x6e\x22\x2c\x20\x6e\x74\x6f\x68\x73\x28\x74\x63\x70\x2d\x3e\ -\x64\x65\x73\x74\x29\x29\x3b\0\x20\x20\x20\x20\x70\x61\x79\x6c\x6f\x61\x64\x5f\ -\x73\x69\x7a\x65\x20\x3d\x20\x6e\x74\x6f\x68\x73\x28\x69\x70\x2d\x3e\x74\x6f\ -\x74\x5f\x6c\x65\x6e\x29\x20\x2d\x20\x28\x74\x63\x70\x2d\x3e\x64\x6f\x66\x66\ -\x20\x2a\x20\x34\x29\x20\x2d\x20\x28\x69\x70\x2d\x3e\x69\x68\x6c\x20\x2a\x20\ -\x34\x29\x3b\0\x20\x20\x20\x20\x69\x66\x20\x28\x70\x61\x79\x6c\x6f\x61\x64\x5f\ -\x73\x69\x7a\x65\x20\x21\x3d\x20\x73\x69\x7a\x65\x6f\x66\x28\x6d\x61\x74\x63\ -\x68\x5f\x70\x61\x74\x74\x65\x72\x6e\x29\x20\x2d\x20\x31\x29\x20\x7b\0\x20\x20\ -\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x46\ -\x22\x29\x3b\0\x20\x20\x20\x20\x69\x66\x20\x28\x28\x76\x6f\x69\x64\x20\x2a\x29\ -\x70\x61\x79\x6c\x6f\x61\x64\x20\x2b\x20\x70\x61\x79\x6c\x6f\x61\x64\x5f\x73\ -\x69\x7a\x65\x20\x3e\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x7b\0\x20\x20\x20\ -\x20\x69\x66\x20\x28\x74\x63\x70\x5f\x70\x61\x79\x6c\x6f\x61\x64\x5f\x62\x6f\ -\x75\x6e\x64\x5f\x63\x68\x65\x63\x6b\x28\x70\x61\x79\x6c\x6f\x61\x64\x2c\x20\ -\x70\x61\x79\x6c\x6f\x61\x64\x5f\x73\x69\x7a\x65\x2c\x20\x64\x61\x74\x61\x5f\ -\x65\x6e\x64\x29\x29\x7b\0\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\ -\x72\x69\x6e\x74\x6b\x28\x22\x47\x22\x29\x3b\0\x20\x20\x20\x20\x62\x70\x66\x5f\ -\x70\x72\x69\x6e\x74\x6b\x28\x22\x52\x65\x63\x65\x69\x76\x65\x64\x20\x76\x61\ -\x6c\x69\x64\x20\x54\x43\x50\x20\x70\x61\x63\x6b\x65\x74\x20\x77\x69\x74\x68\ -\x20\x70\x61\x79\x6c\x6f\x61\x64\x20\x25\x73\x20\x6f\x66\x20\x73\x69\x7a\x65\ -\x20\x25\x69\x5c\x6e\x22\x2c\x20\x70\x61\x79\x6c\x6f\x61\x64\x2c\x20\x70\x61\ -\x79\x6c\x6f\x61\x64\x5f\x73\x69\x7a\x65\x29\x3b\0\x2f\x68\x6f\x6d\x65\x2f\x6f\ -\x73\x62\x6f\x78\x65\x73\x2f\x54\x46\x47\x2f\x73\x72\x63\x2f\x69\x6e\x63\x6c\ -\x75\x64\x65\x2f\x63\x6f\x6d\x6d\x6f\x6e\x2f\x63\x6f\x6d\x6d\x6f\x6e\x5f\x75\ -\x74\x69\x6c\x73\x2e\x68\0\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x73\ -\x74\x72\x31\x5b\x69\x69\x5d\x20\x21\x3d\x20\x73\x74\x72\x32\x5b\x69\x69\x5d\ -\x29\x7b\0\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\ -\x6b\x28\x22\x48\x22\x29\x3b\0\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\ -\x74\x6b\x28\x22\x42\x50\x46\x20\x66\x69\x6e\x69\x73\x68\x65\x64\x5c\x6e\x20\ -\x22\x29\x3b\0\x20\x20\x20\x20\x70\x61\x79\x6c\x6f\x61\x64\x5b\x31\x5d\x20\x3d\ -\x20\x27\x62\x27\x3b\0\x63\x68\x61\x72\0\x5f\x5f\x41\x52\x52\x41\x59\x5f\x53\ -\x49\x5a\x45\x5f\x54\x59\x50\x45\x5f\x5f\0\x4c\x49\x43\x45\x4e\x53\x45\0\x78\ -\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\0\x78\ -\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\ -\x31\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\ -\x74\x2e\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\ -\x66\x6d\x74\x2e\x33\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\ -\x5f\x5f\x66\x6d\x74\x2e\x34\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\ -\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x35\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ -\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x36\0\x78\x64\x70\x5f\x72\x65\x63\x65\ -\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x37\0\x78\x64\x70\x5f\x72\x65\ -\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x38\0\x78\x64\x70\x5f\ -\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x39\0\x2e\x72\ -\x6f\x64\x61\x74\x61\0\x6c\x69\x63\x65\x6e\x73\x65\0\x9f\xeb\x01\0\x20\0\0\0\0\ -\0\0\0\x14\0\0\0\x14\0\0\0\xcc\x02\0\0\xe0\x02\0\0\0\0\0\0\x08\0\0\0\x75\0\0\0\ -\x01\0\0\0\0\0\0\0\x07\0\0\0\x10\0\0\0\x75\0\0\0\x2c\0\0\0\0\0\0\0\x7e\0\0\0\ -\xaa\0\0\0\x29\xf4\0\0\x08\0\0\0\x7e\0\0\0\xdc\0\0\0\x25\xf8\0\0\x10\0\0\0\x06\ -\x01\0\0\x3c\x01\0\0\x15\x28\0\0\x20\0\0\0\x7e\0\0\0\x75\x01\0\0\x08\x24\x01\0\ -\x28\0\0\0\x7e\0\0\0\xab\x01\0\0\x09\x28\x01\0\x48\0\0\0\x06\x01\0\0\xd5\x01\0\ -\0\x14\x44\0\0\x58\0\0\0\x7e\0\0\0\x03\x02\0\0\x09\x3c\x01\0\x60\0\0\0\x7e\0\0\ -\0\x33\x02\0\0\x09\x40\x01\0\x78\0\0\0\x06\x01\0\0\x4c\x02\0\0\x10\xb0\0\0\x80\ -\0\0\0\x7e\0\0\0\x66\x02\0\0\x09\x50\x01\0\x88\0\0\0\x7e\0\0\0\x92\x02\0\0\x09\ -\x54\x01\0\xa0\0\0\0\x06\x01\0\0\xab\x02\0\0\x15\x60\0\0\xb0\0\0\0\x7e\0\0\0\ -\xdb\x02\0\0\x09\x68\x01\0\xb8\0\0\0\x7e\0\0\0\x0b\x03\0\0\x09\x6c\x01\0\xc8\0\ -\0\0\x7e\0\0\0\0\0\0\0\0\0\0\0\xd8\0\0\0\x7e\0\0\0\x24\x03\0\0\x01\x20\x02\0\ -\xe8\0\0\0\x26\x03\0\0\x61\x03\0\0\x0c\x34\0\0\xf0\0\0\0\x7e\0\0\0\x7e\x03\0\0\ -\x09\x7c\x01\0\0\x01\0\0\x7e\0\0\0\xba\x03\0\0\x09\x80\x01\0\x28\x01\0\0\x7e\0\ -\0\0\xea\x03\0\0\x2f\x90\x01\0\x30\x01\0\0\x7e\0\0\0\xea\x03\0\0\x34\x90\x01\0\ -\x40\x01\0\0\x7e\0\0\0\xea\x03\0\0\x14\x90\x01\0\x50\x01\0\0\x7e\0\0\0\xea\x03\ -\0\0\x27\x90\x01\0\x58\x01\0\0\x7e\0\0\0\xea\x03\0\0\x40\x90\x01\0\x60\x01\0\0\ -\x7e\0\0\0\xea\x03\0\0\x44\x90\x01\0\x70\x01\0\0\x7e\0\0\0\xea\x03\0\0\x39\x90\ -\x01\0\x78\x01\0\0\x7e\0\0\0\x33\x04\0\0\x09\xa0\x01\0\x80\x01\0\0\x7e\0\0\0\ -\x68\x04\0\0\x09\xa4\x01\0\x98\x01\0\0\x7e\0\0\0\0\0\0\0\0\0\0\0\xa0\x01\0\0\ -\x06\x01\0\0\x81\x04\0\0\x19\x7c\0\0\xb0\x01\0\0\x7e\0\0\0\xb5\x04\0\0\x09\xb8\ -\x01\0\xb8\x01\0\0\x7e\0\0\0\xf8\x04\0\0\x09\xbc\x01\0\xd0\x01\0\0\x7e\0\0\0\ -\x11\x05\0\0\x05\xcc\x01\0\0\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x08\ -\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x10\x02\0\0\x7e\0\0\0\xc9\x05\0\0\ -\x09\xdc\x01\0\x28\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x30\x02\0\0\x72\ -\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x38\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\ -\0\x40\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x48\x02\0\0\x72\x05\0\0\xa6\ -\x05\0\0\x0d\x6c\0\0\x50\x02\0\0\x72\x05\0\0\xa6\x05\0\0\x0d\x6c\0\0\x58\x02\0\ -\0\x7e\0\0\0\xe2\x05\0\0\x05\xec\x01\0\x80\x02\0\0\x7e\0\0\0\x05\x06\0\0\x10\ -\xf0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9a\ -\x01\0\0\0\0\x02\0\x28\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x66\x01\0\0\0\0\x02\0\ -\x98\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x2b\x01\0\0\0\0\x02\0\xd0\x01\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\x06\x01\0\0\0\0\x02\0\x10\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xe8\ -\0\0\0\0\0\x02\0\xc8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xc3\0\0\0\0\0\x02\0\xd0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\xa5\0\0\0\0\0\x02\0\xd8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\0\x80\0\0\0\0\0\x02\0\x28\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x5f\x01\0\0\0\0\x02\ -\0\x48\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x24\x01\0\0\0\0\x02\0\x78\0\0\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\xe1\0\0\0\0\0\x02\0\xa0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9e\0\0\0\ -\0\0\x02\0\xe8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x14\0\0\0\x01\0\x04\0\0\0\0\0\0\0\ -\0\0\x13\0\0\0\0\0\0\0\x84\x01\0\0\x01\0\x04\0\x13\0\0\0\0\0\0\0\x02\0\0\0\0\0\ -\0\0\x6e\x01\0\0\x01\0\x04\0\x15\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x49\x01\0\0\ -\x01\0\x04\0\x17\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x33\x01\0\0\x01\0\x04\0\x19\0\ -\0\0\0\0\0\0\x06\0\0\0\0\0\0\0\x0e\x01\0\0\x01\0\x04\0\x1f\0\0\0\0\0\0\0\x02\0\ -\0\0\0\0\0\0\xf0\0\0\0\x01\0\x04\0\x21\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\xcb\0\0\ -\0\x01\0\x04\0\x23\0\0\0\0\0\0\0\x36\0\0\0\0\0\0\0\xad\0\0\0\x01\0\x04\0\x59\0\ -\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x88\0\0\0\x01\0\x04\0\x5b\0\0\0\0\0\0\0\x0f\0\0\ -\0\0\0\0\0\0\0\0\0\x03\0\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\ -\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x78\0\0\0\x11\0\x03\0\0\0\0\0\0\0\0\0\ -\x0d\0\0\0\0\0\0\0\x43\0\0\0\x12\0\x02\0\0\0\0\0\0\0\0\0\x90\x02\0\0\0\0\0\0\ -\x28\0\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\x60\0\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\ -\x88\0\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\xb8\0\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\0\ -\x01\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\x80\x01\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\ -\xb8\x01\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\xd0\x01\0\0\0\0\0\0\x01\0\0\0\x18\0\0\ -\0\x10\x02\0\0\0\0\0\0\x01\0\0\0\x18\0\0\0\x58\x02\0\0\0\0\0\0\x01\0\0\0\x18\0\ -\0\0\x40\x02\0\0\0\0\0\0\x0a\0\0\0\x18\0\0\0\x4c\x02\0\0\0\0\0\0\x0a\0\0\0\x18\ -\0\0\0\x58\x02\0\0\0\0\0\0\x0a\0\0\0\x18\0\0\0\x64\x02\0\0\0\0\0\0\x0a\0\0\0\ -\x18\0\0\0\x70\x02\0\0\0\0\0\0\x0a\0\0\0\x18\0\0\0\x7c\x02\0\0\0\0\0\0\x0a\0\0\ -\0\x18\0\0\0\x88\x02\0\0\0\0\0\0\x0a\0\0\0\x18\0\0\0\x94\x02\0\0\0\0\0\0\x0a\0\ -\0\0\x18\0\0\0\xa0\x02\0\0\0\0\0\0\x0a\0\0\0\x18\0\0\0\xac\x02\0\0\0\0\0\0\x0a\ -\0\0\0\x18\0\0\0\xc4\x02\0\0\0\0\0\0\0\0\0\0\x19\0\0\0\x2c\0\0\0\0\0\0\0\0\0\0\ -\0\x17\0\0\0\x40\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x50\0\0\0\0\0\0\0\0\0\0\0\x17\ -\0\0\0\x60\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x70\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\x80\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x90\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xa0\0\ -\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xb0\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xc0\0\0\0\0\ -\0\0\0\0\0\0\0\x17\0\0\0\xd0\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xe0\0\0\0\0\0\0\0\ -\0\0\0\0\x17\0\0\0\xf0\0\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\ -\0\x17\0\0\0\x10\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x20\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\x30\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x40\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\x50\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x60\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\x70\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x80\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\x90\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xa0\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\xb0\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xc0\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\xd0\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xe0\x01\0\0\0\0\0\0\0\0\0\0\ -\x17\0\0\0\xf0\x01\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\x17\ -\0\0\0\x10\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x20\x02\0\0\0\0\0\0\0\0\0\0\x17\0\ -\0\0\x30\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x40\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\ -\0\x50\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x60\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\x70\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x80\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\x90\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xa0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\xb0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xc0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\xd0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\xe0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\ -\xf0\x02\0\0\0\0\0\0\0\0\0\0\x17\0\0\0\x21\x20\x0e\x0f\x10\x11\x12\x13\x14\x15\ -\x16\x17\0\x2e\x74\x65\x78\x74\0\x2e\x72\x65\x6c\x2e\x42\x54\x46\x2e\x65\x78\ +\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\ +\x28\x22\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x42\x20\x66\x61\x69\ +\x6c\x65\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\x64\x69\x6e\x67\ +\x5c\x6e\x22\x29\x3b\0\x20\x20\x20\x20\x20\x20\x20\x20\x69\x66\x20\x28\x74\x63\ +\x70\x5f\x68\x65\x61\x64\x65\x72\x5f\x62\x6f\x75\x6e\x64\x5f\x63\x68\x65\x63\ +\x6b\x28\x74\x63\x70\x2c\x20\x64\x61\x74\x61\x5f\x65\x6e\x64\x29\x29\x7b\0\x20\ +\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\ +\x74\x6b\x28\x22\x42\x6f\x75\x6e\x64\x20\x63\x68\x65\x63\x6b\x20\x44\x20\x66\ +\x61\x69\x6c\x65\x64\x20\x77\x68\x69\x6c\x65\x20\x65\x78\x70\x61\x6e\x64\x69\ +\x6e\x67\x5c\x6e\x22\x29\x3b\0\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x79\x6c\ +\x6f\x61\x64\x5f\x73\x69\x7a\x65\x20\x3d\x20\x6e\x74\x6f\x68\x73\x28\x69\x70\ +\x2d\x3e\x74\x6f\x74\x5f\x6c\x65\x6e\x29\x20\x2d\x20\x28\x74\x63\x70\x2d\x3e\ +\x64\x6f\x66\x66\x20\x2a\x20\x34\x29\x20\x2d\x20\x28\x69\x70\x2d\x3e\x69\x68\ +\x6c\x20\x2a\x20\x34\x29\x3b\0\x20\x20\x20\x20\x20\x20\x20\x20\x70\x61\x79\x6c\ +\x6f\x61\x64\x20\x3d\x20\x28\x76\x6f\x69\x64\x20\x2a\x29\x74\x63\x70\x20\x2b\ +\x20\x74\x63\x70\x2d\x3e\x64\x6f\x66\x66\x2a\x34\x3b\0\x20\x20\x20\x20\x20\x20\ +\x20\x20\x62\x70\x66\x5f\x70\x72\x69\x6e\x74\x6b\x28\x22\x42\x50\x46\x20\x66\ +\x69\x6e\x69\x73\x68\x65\x64\x20\x77\x69\x74\x68\x20\x72\x65\x74\x20\x25\x69\ +\x20\x61\x6e\x64\x20\x70\x61\x79\x6c\x6f\x61\x64\x20\x25\x73\x20\x6f\x66\x20\ +\x73\x69\x7a\x65\x20\x25\x69\x5c\x6e\x20\x22\x2c\x20\x72\x65\x74\x2e\x63\x6f\ +\x64\x65\x2c\x20\x70\x61\x79\x6c\x6f\x61\x64\x2c\x20\x70\x61\x79\x6c\x6f\x61\ +\x64\x5f\x73\x69\x7a\x65\x29\x3b\0\x63\x68\x61\x72\0\x5f\x5f\x41\x52\x52\x41\ +\x59\x5f\x53\x49\x5a\x45\x5f\x54\x59\x50\x45\x5f\x5f\0\x4c\x49\x43\x45\x4e\x53\ +\x45\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\ \x74\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\ -\x74\0\x2e\x72\x65\x6c\x78\x64\x70\x5f\x70\x72\x6f\x67\0\x2e\x6c\x6c\x76\x6d\ -\x5f\x61\x64\x64\x72\x73\x69\x67\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\ -\0\x6c\x69\x63\x65\x6e\x73\x65\0\x2e\x73\x74\x72\x74\x61\x62\0\x2e\x73\x79\x6d\ -\x74\x61\x62\0\x2e\x72\x6f\x64\x61\x74\x61\0\x2e\x72\x65\x6c\x2e\x42\x54\x46\0\ -\x4c\x49\x43\x45\x4e\x53\x45\0\x4c\x42\x42\x30\x5f\x31\x39\0\x78\x64\x70\x5f\ -\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x39\0\x4c\x42\ -\x42\x30\x5f\x38\0\x4c\x42\x42\x30\x5f\x31\x38\0\x78\x64\x70\x5f\x72\x65\x63\ -\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x38\0\x4c\x42\x42\x30\x5f\ -\x31\x37\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\ -\x6d\x74\x2e\x37\0\x4c\x42\x42\x30\x5f\x36\0\x4c\x42\x42\x30\x5f\x31\x36\0\x78\ +\x74\x2e\x31\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\ +\x66\x6d\x74\x2e\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\ +\x5f\x5f\x66\x6d\x74\x2e\x33\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\ +\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x34\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ +\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x35\0\x78\x64\x70\x5f\x72\x65\x63\x65\ +\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x36\0\x78\x64\x70\x5f\x72\x65\ +\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x37\0\x78\x64\x70\x5f\ +\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x38\0\x78\x64\ +\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x39\0\ +\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\ +\x2e\x31\x30\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\ +\x66\x6d\x74\x2e\x31\x31\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\ +\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ +\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x33\0\x78\x64\x70\x5f\x72\x65\x63\ +\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x34\0\x65\x78\x70\x61\ +\x6e\x64\x5f\x74\x63\x70\x5f\x70\x61\x63\x6b\x65\x74\x5f\x70\x61\x79\x6c\x6f\ +\x61\x64\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\0\x2e\x72\x6f\x64\x61\x74\x61\0\x6c\ +\x69\x63\x65\x6e\x73\x65\0\x9f\xeb\x01\0\x20\0\0\0\0\0\0\0\x14\0\0\0\x14\0\0\0\ +\x6c\x04\0\0\x80\x04\0\0\0\0\0\0\x08\0\0\0\x75\0\0\0\x01\0\0\0\0\0\0\0\x07\0\0\ +\0\x10\0\0\0\x75\0\0\0\x46\0\0\0\0\0\0\0\x7e\0\0\0\xaa\0\0\0\0\xe8\0\0\x08\0\0\ +\0\x7e\0\0\0\xce\0\0\0\x29\xf8\0\0\x10\0\0\0\x7e\0\0\0\0\x01\0\0\x25\xfc\0\0\ +\x18\0\0\0\x2a\x01\0\0\x60\x01\0\0\x15\x28\0\0\x28\0\0\0\x7e\0\0\0\x99\x01\0\0\ +\x08\x28\x01\0\x30\0\0\0\x7e\0\0\0\xcf\x01\0\0\x09\x2c\x01\0\x50\0\0\0\x2a\x01\ +\0\0\xf9\x01\0\0\x14\x44\0\0\x60\0\0\0\x7e\0\0\0\x27\x02\0\0\x09\x40\x01\0\x68\ +\0\0\0\x7e\0\0\0\x57\x02\0\0\x09\x44\x01\0\x80\0\0\0\x2a\x01\0\0\x70\x02\0\0\ +\x10\xb0\0\0\x88\0\0\0\x7e\0\0\0\x8a\x02\0\0\x09\x54\x01\0\x90\0\0\0\x7e\0\0\0\ +\xb6\x02\0\0\x09\x58\x01\0\xa8\0\0\0\x2a\x01\0\0\xcf\x02\0\0\x15\x60\0\0\xb8\0\ +\0\0\x7e\0\0\0\xff\x02\0\0\x09\x6c\x01\0\xc0\0\0\0\x7e\0\0\0\x2f\x03\0\0\x09\ +\x70\x01\0\xd0\0\0\0\x7e\0\0\0\0\0\0\0\0\0\0\0\xe0\0\0\0\x7e\0\0\0\x48\x03\0\0\ +\x01\xd0\x02\0\xf0\0\0\0\x4a\x03\0\0\x85\x03\0\0\x0c\x34\0\0\xf8\0\0\0\x7e\0\0\ +\0\xa2\x03\0\0\x09\x80\x01\0\x08\x01\0\0\x7e\0\0\0\xde\x03\0\0\x09\x84\x01\0\ +\x30\x01\0\0\x7e\0\0\0\x0e\x04\0\0\x2f\x94\x01\0\x38\x01\0\0\x7e\0\0\0\x0e\x04\ +\0\0\x34\x94\x01\0\x48\x01\0\0\x7e\0\0\0\x0e\x04\0\0\x14\x94\x01\0\x58\x01\0\0\ +\x7e\0\0\0\x0e\x04\0\0\x27\x94\x01\0\x60\x01\0\0\x7e\0\0\0\x0e\x04\0\0\x40\x94\ +\x01\0\x68\x01\0\0\x7e\0\0\0\x0e\x04\0\0\x44\x94\x01\0\x78\x01\0\0\x7e\0\0\0\ +\x0e\x04\0\0\x39\x94\x01\0\x80\x01\0\0\x7e\0\0\0\x57\x04\0\0\x09\xa4\x01\0\x88\ +\x01\0\0\x7e\0\0\0\x8c\x04\0\0\x09\xa8\x01\0\xa0\x01\0\0\x7e\0\0\0\0\0\0\0\0\0\ +\0\0\xa8\x01\0\0\x2a\x01\0\0\xa5\x04\0\0\x19\x7c\0\0\xb8\x01\0\0\x7e\0\0\0\xd9\ +\x04\0\0\x09\xbc\x01\0\xc0\x01\0\0\x7e\0\0\0\x1c\x05\0\0\x09\xc0\x01\0\xd8\x01\ +\0\0\x7e\0\0\0\x35\x05\0\0\x05\xd0\x01\0\x08\x02\0\0\x96\x05\0\0\xca\x05\0\0\ +\x0d\x6c\0\0\x10\x02\0\0\x96\x05\0\0\xca\x05\0\0\x0d\x6c\0\0\x18\x02\0\0\x7e\0\ +\0\0\xed\x05\0\0\x09\xdc\x01\0\x30\x02\0\0\x96\x05\0\0\xca\x05\0\0\x0d\x6c\0\0\ +\x38\x02\0\0\x96\x05\0\0\xca\x05\0\0\x0d\x6c\0\0\x40\x02\0\0\x96\x05\0\0\xca\ +\x05\0\0\x0d\x6c\0\0\x48\x02\0\0\x96\x05\0\0\xca\x05\0\0\x0d\x6c\0\0\x50\x02\0\ +\0\x96\x05\0\0\xca\x05\0\0\x0d\x6c\0\0\x58\x02\0\0\x96\x05\0\0\xca\x05\0\0\x0d\ +\x6c\0\0\x60\x02\0\0\x06\x06\0\0\x35\x06\0\0\x09\xac\0\0\x78\x02\0\0\x06\x06\0\ +\0\x35\x06\0\0\x09\xac\0\0\x80\x02\0\0\x06\x06\0\0\x7c\x06\0\0\x09\xb8\0\0\xa8\ +\x02\0\0\x7e\0\0\0\xd4\x06\0\0\x09\x88\x02\0\xc8\x02\0\0\x7e\0\0\0\0\0\0\0\0\0\ +\0\0\xe0\x02\0\0\x7e\0\0\0\x12\x07\0\0\x1d\x90\x02\0\xe8\x02\0\0\x7e\0\0\0\x35\ +\x07\0\0\x05\x94\x02\0\x20\x03\0\0\x06\x06\0\0\x90\x07\0\0\x12\xec\0\0\x30\x03\ +\0\0\x2a\x01\0\0\x60\x01\0\0\x15\x28\0\0\x40\x03\0\0\x7e\0\0\0\xa7\x07\0\0\x0c\ +\x0c\x02\0\x48\x03\0\0\x7e\0\0\0\xe1\x07\0\0\x0d\x10\x02\0\x60\x03\0\0\x2a\x01\ +\0\0\xf9\x01\0\0\x14\x44\0\0\x70\x03\0\0\x7e\0\0\0\x23\x08\0\0\x0d\x24\x02\0\ +\x78\x03\0\0\x7e\0\0\0\x57\x08\0\0\x0d\x28\x02\0\x90\x03\0\0\x2a\x01\0\0\xcf\ +\x02\0\0\x15\x60\0\0\xa0\x03\0\0\x7e\0\0\0\x99\x08\0\0\x0d\x50\x02\0\xa8\x03\0\ +\0\x7e\0\0\0\xcd\x08\0\0\x0d\x54\x02\0\xb8\x03\0\0\x7e\0\0\0\0\0\0\0\0\0\0\0\ +\xc8\x03\0\0\x7e\0\0\0\x0f\x09\0\0\x18\x64\x02\0\xd8\x03\0\0\x7e\0\0\0\x0f\x09\ +\0\0\x33\x64\x02\0\xe0\x03\0\0\x7e\0\0\0\x0f\x09\0\0\x38\x64\x02\0\xf0\x03\0\0\ +\x7e\0\0\0\x5c\x09\0\0\x1f\x68\x02\0\xf8\x03\0\0\x7e\0\0\0\x0f\x09\0\0\x2b\x64\ +\x02\0\0\x04\0\0\x7e\0\0\0\x0f\x09\0\0\x44\x64\x02\0\x08\x04\0\0\x7e\0\0\0\x0f\ +\x09\0\0\x48\x64\x02\0\x18\x04\0\0\x7e\0\0\0\x0f\x09\0\0\x3d\x64\x02\0\x20\x04\ +\0\0\x7e\0\0\0\x89\x09\0\0\x09\x80\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\x47\x02\0\0\0\0\x02\0\xe0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x12\ +\x02\0\0\0\0\x02\0\xf0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x99\x01\0\0\0\0\x02\0\x30\ +\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x3f\x01\0\0\0\0\x02\0\xa0\x01\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\xfc\0\0\0\0\0\x02\0\xd8\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xd6\0\0\0\ +\0\0\x02\0\x18\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xb1\0\0\0\0\0\x02\0\x30\x02\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\xce\x01\0\0\0\0\x02\0\x50\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\0\x64\x01\0\0\0\0\x02\0\xd8\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x37\x01\0\0\0\0\ +\x02\0\x20\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xf4\0\0\0\0\0\x02\0\x60\x03\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\xa9\0\0\0\0\0\x02\0\x90\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\x0a\x02\0\0\0\0\x02\0\xb8\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xd5\x01\0\0\0\0\x02\ +\0\xc8\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x5d\x01\0\0\0\0\x02\0\x80\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\x1a\x01\0\0\0\0\x02\0\xa8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xcf\0\ +\0\0\0\0\x02\0\xd0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xa2\0\0\0\0\0\x02\0\xd8\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\x28\0\0\0\x01\0\x04\0\x51\x01\0\0\0\0\0\0\x34\0\0\0\0\ +\0\0\0\x14\0\0\0\x01\0\x04\0\0\0\0\0\0\0\0\0\x13\0\0\0\0\0\0\0\x31\x02\0\0\x01\ +\0\x04\0\x13\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x4f\x02\0\0\x01\0\x04\0\x81\0\0\0\ +\0\0\0\0\x26\0\0\0\0\0\0\0\x1a\x02\0\0\x01\0\x04\0\xa7\0\0\0\0\0\0\0\x26\0\0\0\ +\0\0\0\0\xdd\x01\0\0\x01\0\x04\0\xcd\0\0\0\0\0\0\0\x35\0\0\0\0\0\0\0\xa1\x01\0\ +\0\x01\0\x04\0\x02\x01\0\0\0\0\0\0\x26\0\0\0\0\0\0\0\x6c\x01\0\0\x01\0\x04\0\ +\x28\x01\0\0\0\0\0\0\x29\0\0\0\0\0\0\0\xf4\x01\0\0\x01\0\x04\0\x15\0\0\0\0\0\0\ +\0\x02\0\0\0\0\0\0\0\xb8\x01\0\0\x01\0\x04\0\x17\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\ +\0\x83\x01\0\0\x01\0\x04\0\x19\0\0\0\0\0\0\0\x06\0\0\0\0\0\0\0\x47\x01\0\0\x01\ +\0\x04\0\x1f\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\x21\x01\0\0\x01\0\x04\0\x21\0\0\0\ +\0\0\0\0\x02\0\0\0\0\0\0\0\x04\x01\0\0\x01\0\x04\0\x23\0\0\0\0\0\0\0\x36\0\0\0\ +\0\0\0\0\xde\0\0\0\x01\0\x04\0\x59\0\0\0\0\0\0\0\x02\0\0\0\0\0\0\0\xb9\0\0\0\ +\x01\0\x04\0\x5b\0\0\0\0\0\0\0\x26\0\0\0\0\0\0\0\0\0\0\0\x03\0\x02\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x03\0\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x9a\ +\0\0\0\x11\0\x03\0\0\0\0\0\0\0\0\0\x0d\0\0\0\0\0\0\0\x65\0\0\0\x12\0\x02\0\0\0\ +\0\0\0\0\0\0\x50\x04\0\0\0\0\0\0\x30\0\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x68\0\0\ +\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x90\0\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xc0\0\0\0\ +\0\0\0\0\x01\0\0\0\x24\0\0\0\x08\x01\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x88\x01\0\ +\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xc0\x01\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xd8\x01\ +\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x18\x02\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x80\ +\x02\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xa8\x02\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\ +\xe8\x02\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\x48\x03\0\0\0\0\0\0\x01\0\0\0\x24\0\0\ +\0\x78\x03\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xa8\x03\0\0\0\0\0\0\x01\0\0\0\x24\0\ +\0\0\x20\x04\0\0\0\0\0\0\x01\0\0\0\x24\0\0\0\xe8\x02\0\0\0\0\0\0\x0a\0\0\0\x24\ +\0\0\0\xf4\x02\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\0\x03\0\0\0\0\0\0\x0a\0\0\0\x24\ +\0\0\0\x0c\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x18\x03\0\0\0\0\0\0\x0a\0\0\0\ +\x24\0\0\0\x24\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x30\x03\0\0\0\0\0\0\x0a\0\0\ +\0\x24\0\0\0\x3c\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x48\x03\0\0\0\0\0\0\x0a\0\ +\0\0\x24\0\0\0\x54\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x60\x03\0\0\0\0\0\0\x0a\ +\0\0\0\x24\0\0\0\x6c\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x78\x03\0\0\0\0\0\0\ +\x0a\0\0\0\x24\0\0\0\x84\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\x90\x03\0\0\0\0\0\ +\0\x0a\0\0\0\x24\0\0\0\x9c\x03\0\0\0\0\0\0\x0a\0\0\0\x24\0\0\0\xb4\x03\0\0\0\0\ +\0\0\0\0\0\0\x25\0\0\0\x2c\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x40\0\0\0\0\0\0\0\0\ +\0\0\0\x23\0\0\0\x50\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x60\0\0\0\0\0\0\0\0\0\0\0\ +\x23\0\0\0\x70\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x80\0\0\0\0\0\0\0\0\0\0\0\x23\0\ +\0\0\x90\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xa0\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\ +\xb0\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xc0\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xd0\0\ +\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xe0\0\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xf0\0\0\0\0\ +\0\0\0\0\0\0\0\x23\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x10\x01\0\0\0\0\0\ +\0\0\0\0\0\x23\0\0\0\x20\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x30\x01\0\0\0\0\0\0\ +\0\0\0\0\x23\0\0\0\x40\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x50\x01\0\0\0\0\0\0\0\ +\0\0\0\x23\0\0\0\x60\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x70\x01\0\0\0\0\0\0\0\0\ +\0\0\x23\0\0\0\x80\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x90\x01\0\0\0\0\0\0\0\0\0\ +\0\x23\0\0\0\xa0\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xb0\x01\0\0\0\0\0\0\0\0\0\0\ +\x23\0\0\0\xc0\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xd0\x01\0\0\0\0\0\0\0\0\0\0\ +\x23\0\0\0\xe0\x01\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xf0\x01\0\0\0\0\0\0\0\0\0\0\ +\x23\0\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x10\x02\0\0\0\0\0\0\0\0\0\0\x23\ +\0\0\0\x20\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x30\x02\0\0\0\0\0\0\0\0\0\0\x23\0\ +\0\0\x40\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x50\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\ +\0\x60\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x70\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\ +\x80\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x90\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\ +\xa0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xb0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\ +\xc0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xd0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\ +\xe0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xf0\x02\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\0\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x10\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x20\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x30\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x40\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x50\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x60\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x70\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x80\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x90\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xa0\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xb0\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xc0\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xd0\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xe0\ +\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\xf0\x03\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\0\x04\ +\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x10\x04\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x20\x04\0\ +\0\0\0\0\0\0\0\0\0\x23\0\0\0\x30\x04\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x40\x04\0\0\ +\0\0\0\0\0\0\0\0\x23\0\0\0\x50\x04\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x60\x04\0\0\0\ +\0\0\0\0\0\0\0\x23\0\0\0\x70\x04\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x80\x04\0\0\0\0\ +\0\0\0\0\0\0\x23\0\0\0\x90\x04\0\0\0\0\0\0\0\0\0\0\x23\0\0\0\x2d\x2c\x15\x16\ +\x1c\x1d\x1e\x1f\x20\x21\x22\x23\x17\x18\x19\x1a\x1b\x14\0\x2e\x74\x65\x78\x74\ +\0\x2e\x72\x65\x6c\x2e\x42\x54\x46\x2e\x65\x78\x74\0\x78\x64\x70\x5f\x72\x65\ +\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\0\x65\x78\x70\x61\x6e\x64\ +\x5f\x74\x63\x70\x5f\x70\x61\x63\x6b\x65\x74\x5f\x70\x61\x79\x6c\x6f\x61\x64\ +\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\0\x2e\x72\x65\x6c\x78\x64\x70\x5f\x70\x72\x6f\ +\x67\0\x2e\x6c\x6c\x76\x6d\x5f\x61\x64\x64\x72\x73\x69\x67\0\x78\x64\x70\x5f\ +\x72\x65\x63\x65\x69\x76\x65\0\x6c\x69\x63\x65\x6e\x73\x65\0\x2e\x73\x74\x72\ +\x74\x61\x62\0\x2e\x73\x79\x6d\x74\x61\x62\0\x2e\x72\x6f\x64\x61\x74\x61\0\x2e\ +\x72\x65\x6c\x2e\x42\x54\x46\0\x4c\x49\x43\x45\x4e\x53\x45\0\x4c\x42\x42\x30\ +\x5f\x39\0\x4c\x42\x42\x30\x5f\x32\x39\0\x4c\x42\x42\x30\x5f\x31\x39\0\x78\x64\ +\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x39\0\ +\x4c\x42\x42\x30\x5f\x38\0\x4c\x42\x42\x30\x5f\x31\x38\0\x78\x64\x70\x5f\x72\ +\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x38\0\x4c\x42\x42\ +\x30\x5f\x32\x37\0\x4c\x42\x42\x30\x5f\x31\x37\0\x78\x64\x70\x5f\x72\x65\x63\ +\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x37\0\x4c\x42\x42\x30\x5f\ +\x36\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\ +\x74\x2e\x36\0\x4c\x42\x42\x30\x5f\x32\x35\0\x4c\x42\x42\x30\x5f\x31\x35\0\x78\ \x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\ -\x36\0\x4c\x42\x42\x30\x5f\x31\x35\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ -\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x35\0\x4c\x42\x42\x30\x5f\x34\0\x4c\ -\x42\x42\x30\x5f\x31\x34\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\ -\x5f\x5f\x5f\x66\x6d\x74\x2e\x34\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\ -\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x33\0\x4c\x42\x42\x30\x5f\x32\0\x4c\x42\ -\x42\x30\x5f\x31\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\ -\x5f\x5f\x66\x6d\x74\x2e\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\ -\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\0\x4c\x42\x42\x30\x5f\x31\x30\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\x01\0\0\0\x06\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\x40\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\x2c\0\0\0\x01\0\0\0\x06\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\0\x40\0\0\0\0\0\0\0\x90\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x08\0\0\0\0\0\0\0\0\0\ -\0\0\0\0\0\0\x4f\0\0\0\x01\0\0\0\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xd0\x02\0\0\ -\0\0\0\0\x0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\x67\0\0\0\x01\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xdd\x02\0\0\0\0\0\0\x6a\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x73\0\0\0\x01\ -\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x47\x03\0\0\0\0\0\0\xf2\x09\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x0b\0\0\0\x01\0\0\0\0\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\0\x39\x0d\0\0\0\0\0\0\0\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x5f\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\0\0\0\0\x40\x10\0\0\0\0\0\0\x88\x02\0\0\0\0\0\0\x0c\0\0\0\x19\0\0\0\x08\0\0\0\ -\0\0\0\0\x18\0\0\0\0\0\0\0\x28\0\0\0\x09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ -\xc8\x12\0\0\0\0\0\0\xa0\0\0\0\0\0\0\0\x07\0\0\0\x02\0\0\0\x08\0\0\0\0\0\0\0\ -\x10\0\0\0\0\0\0\0\x6f\0\0\0\x09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x68\x13\ -\0\0\0\0\0\0\xb0\0\0\0\0\0\0\0\x07\0\0\0\x05\0\0\0\x08\0\0\0\0\0\0\0\x10\0\0\0\ -\0\0\0\0\x07\0\0\0\x09\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x18\x14\0\0\0\0\0\ -\0\xd0\x02\0\0\0\0\0\0\x07\0\0\0\x06\0\0\0\x08\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\ -\x35\0\0\0\x03\x4c\xff\x6f\0\0\0\x80\0\0\0\0\0\0\0\0\0\0\0\0\xe8\x16\0\0\0\0\0\ -\0\x0c\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x57\0\0\ -\0\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xf4\x16\0\0\0\0\0\0\xa2\x01\0\0\0\ -\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"; +\x35\0\x4c\x42\x42\x30\x5f\x34\0\x4c\x42\x42\x30\x5f\x32\x34\0\x78\x64\x70\x5f\ +\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x34\0\x78\ +\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\ +\x34\0\x4c\x42\x42\x30\x5f\x31\x33\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ +\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x33\0\x78\x64\x70\x5f\x72\x65\x63\ +\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x33\0\x4c\x42\x42\x30\x5f\ +\x32\0\x4c\x42\x42\x30\x5f\x33\x32\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\ +\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x32\0\x78\x64\x70\x5f\x72\x65\x63\ +\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x32\0\x4c\x42\x42\x30\x5f\ +\x33\x31\0\x4c\x42\x42\x30\x5f\x31\x31\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\ +\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\x31\0\x78\x64\x70\x5f\x72\x65\ +\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\x66\x6d\x74\x2e\x31\0\x4c\x42\x42\x30\ +\x5f\x31\x30\0\x78\x64\x70\x5f\x72\x65\x63\x65\x69\x76\x65\x2e\x5f\x5f\x5f\x5f\ +\x66\x6d\x74\x2e\x31\x30\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\x01\0\0\0\x01\0\0\0\x06\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x40\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\0\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x4e\0\0\0\x01\0\0\ +\0\x06\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x40\0\0\0\0\0\0\0\x50\x04\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\x08\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x71\0\0\0\x01\0\0\0\x03\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\x90\x04\0\0\0\0\0\0\x0d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x89\0\0\0\x01\0\0\0\x02\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\x9d\x04\0\0\0\0\0\0\x85\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\x95\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x22\ +\x06\0\0\0\0\0\0\x53\x0f\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\x0b\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x75\x15\0\0\0\0\0\ +\0\xa0\x04\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x81\0\ +\0\0\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x18\x1a\0\0\0\0\0\0\xa8\x03\0\0\ +\0\0\0\0\x0c\0\0\0\x25\0\0\0\x08\0\0\0\0\0\0\0\x18\0\0\0\0\0\0\0\x4a\0\0\0\x09\ +\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xc0\x1d\0\0\0\0\0\0\0\x01\0\0\0\0\0\0\ +\x07\0\0\0\x02\0\0\0\x08\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\x91\0\0\0\x09\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\xc0\x1e\0\0\0\0\0\0\x10\x01\0\0\0\0\0\0\x07\0\0\ +\0\x05\0\0\0\x08\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\x07\0\0\0\x09\0\0\0\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0\0\xd0\x1f\0\0\0\0\0\0\x70\x04\0\0\0\0\0\0\x07\0\0\0\x06\0\ +\0\0\x08\0\0\0\0\0\0\0\x10\0\0\0\0\0\0\0\x57\0\0\0\x03\x4c\xff\x6f\0\0\0\x80\0\ +\0\0\0\0\0\0\0\0\0\0\0\x40\x24\0\0\0\0\0\0\x12\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\x01\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x79\0\0\0\x03\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\ +\0\0\0\0\x52\x24\0\0\0\0\0\0\x66\x02\0\0\0\0\0\0\0\0\0\0\0\0\0\0\x01\0\0\0\0\0\ +\0\0\0\0\0\0\0\0\0\0"; return 0; err: diff --git a/src/bin/xdp_filter b/src/bin/xdp_filter index 3fd0193e0bbe39e9c6079b7c1efa580009d6ea44..37be83e40b67172e69e3c138caf4753036ef164b 100755 GIT binary patch delta 148840 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%0D9x+UYj< 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

#X>$- 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%0DY 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 L$TaSASknF%ZRRUC diff --git a/src/ebpf/xdp_filter.bpf.c b/src/ebpf/xdp_filter.bpf.c index 99247ba..d7df1a3 100644 --- a/src/ebpf/xdp_filter.bpf.c +++ b/src/ebpf/xdp_filter.bpf.c @@ -26,6 +26,7 @@ #include "packet/packet_manager.h" #include "packet/protocol/tcp_helper.h" +#include "xdp/xdp_helper.h" #include "common/common_utils.h" @@ -118,9 +119,53 @@ int xdp_receive(struct xdp_md *ctx) bpf_printk("H"); return XDP_PASS; } + int data_len_prev = data_end-data; + int data_len_next = -1; - bpf_printk("BPF finished\n "); - payload[1] = 'b'; + struct expand_return ret = expand_tcp_packet_payload(ctx, eth, ip, tcp, 2); + if(ret.code == 0){ + //We must check bounds again, otherwise the verifier gets angry + data = (void*)(long)ret.ret_md.data; + data_end = (void*)(long)ret.ret_md.data_end; + eth = data; + if(ethernet_header_bound_check(eth, data_end)<0){ + bpf_printk("Bound check A failed while expanding\n"); + return XDP_PASS; + } + + ip = data + sizeof(*eth); + if (ip_header_bound_check(ip, data_end)<0){ + bpf_printk("Bound check B failed while expanding\n"); + return XDP_PASS; + } + + tcp = (void *)ip + sizeof(*ip); + /*if (get_protocol(data_end) != IPPROTO_TCP){ + bpf_printk("Bound check C failed while expanding\n"); + return XDP_PASS; + }*/ + + if (tcp_header_bound_check(tcp, data_end)){ + bpf_printk("Bound check D failed while expanding\n"); + return XDP_PASS; + } + + payload_size = ntohs(ip->tot_len) - (tcp->doff * 4) - (ip->ihl * 4); + payload = (void *)tcp + tcp->doff*4; + + /*if (tcp_payload_bound_check(payload, payload_size, data_end)){ + bpf_printk("Bound check E failed while expanding\n"); + return XDP_PASS; + }*/ + bpf_printk("BPF finished with ret %i and payload %s of size %i\n ", ret.code, payload, payload_size); + }else{ + bpf_printk("BPF finished with error on expansion\n"); + } + data_len_next = data_end-data; + bpf_printk("Previous length: %i, current length: %i\n", data_len_prev, data_len_next); + //payload[4] = 'A'; + //payload[6] = '\0'; + //payload[1] = 'b'; /*if(!payload){ bpf_probe_read_str(&rb_event->payload, sizeof(rb_event->payload), (void *)payload); bpf_ringbuf_submit(rb_event, 0); diff --git a/src/include/packet/protocol/ip_helper.h b/src/include/packet/protocol/ip_helper.h new file mode 100644 index 0000000..70effb6 --- /dev/null +++ b/src/include/packet/protocol/ip_helper.h @@ -0,0 +1,31 @@ +#ifndef __IP_HELPER_H__ +#define __IP_HELPER_H__ + +#include + +/** + * IP checksum calculation. + * Following RFC 1071. + * In essence 1's complement of 16-bit groups. + * Taken from my own library https://github.com/h3xduck/RawTCP_Lib/blob/master/src/packet.c + */ +static __always_inline unsigned short checksum(unsigned short *addr, int nbytes){ + long sum = 0; + unsigned short checksum; + while(nbytes>1){ + sum += (unsigned short) *addr++; + nbytes -= 2; + } + if(nbytes>0){ + sum +=htons((unsigned char)*addr); + } + + while (sum>>16){ + sum = (sum & 0xffff) + (sum >> 16); + } + + checksum = ~sum; + return checksum; +} + +#endif \ No newline at end of file diff --git a/src/include/packet/protocol/tcp_helper.h b/src/include/packet/protocol/tcp_helper.h index 8c6cfd0..54e601d 100644 --- a/src/include/packet/protocol/tcp_helper.h +++ b/src/include/packet/protocol/tcp_helper.h @@ -13,4 +13,29 @@ static __always_inline int get_tcp_dest_port(struct tcphdr *tcp){ return ntohs(tcp->dest); } +/** + * TCP checksum calculation. + * Following RFC 1071. + * In essence 1's complement of 16-bit groups. + * Taken from my own library https://github.com/h3xduck/RawTCP_Lib/blob/master/src/segment.c + */ +static __always_inline unsigned short tcp_checksum(unsigned short *addr, int nbytes){ + long sum = 0; + unsigned short checksum; + while(nbytes>1){ + sum += (unsigned short) *addr++; + nbytes -= 2; + } + if(nbytes>0){ + sum += htons((unsigned char)*addr); + } + + while (sum>>16){ + sum = (sum & 0xffff) + (sum >> 16); + } + + checksum = ~sum; + return checksum; +} + #endif \ No newline at end of file diff --git a/src/include/xdp/xdp_helper.h b/src/include/xdp/xdp_helper.h new file mode 100644 index 0000000..bf77726 --- /dev/null +++ b/src/include/xdp/xdp_helper.h @@ -0,0 +1,66 @@ +#ifndef __XDP_HELPER_H__ +#define __XDP_HELPER_H__ + +#include + +#include "packet/protocol/ip_helper.h" +#include "packet/protocol/tcp_helper.h" +#include "packet/packet_manager.h" + +static struct expand_return{ + int code; + struct xdp_md ret_md; + void *data; + void *data_end; + struct ethhdr eth; + struct iphdr ip; + struct tcphdr tcp; +}expand_return; + +/** +* Increases the packet payload reserved size by more_bytes bytes +* @param ctx XDP hook metadata +* @param eth start of ethernet header. Points inside ctx struct +* @param ip start of internet protocol header. Points inside ctx struct +* @param tcp start of tcp header. Points inside ctx struct +* @param more_bytes Number bytes to add +* @param +*/ +static __always_inline struct expand_return expand_tcp_packet_payload(struct xdp_md *ctx, struct ethhdr *eth, struct iphdr *ip, struct tcphdr *tcp, int more_bytes){ + //We might be able to reuse some data from old headers, + //but we will have to recompute checksums still + struct ethhdr eth_copy; + struct iphdr ip_copy; + struct tcphdr tcp_copy; + + struct expand_return ret; + + //Copy the header for later before expanding ctx + __builtin_memcpy(ð_copy, eth, sizeof(struct ethhdr)); + __builtin_memcpy(&ip_copy, ip, sizeof(struct iphdr)); + __builtin_memcpy(&tcp_copy, tcp, sizeof(struct tcphdr)); + + if (bpf_xdp_adjust_tail(ctx, (int)(sizeof(char)*more_bytes)) != 0) + { + //Failed to expand + bpf_printk("Failed to expand a tcp packet reserved bytes by %i\n", more_bytes); + ret.code = -1;//The rest is undefined + return ret; + } + + //We now have to readjust the packet headers, checksums have changed + //Note that we do not care about ctx->data_meta or any other extra field + //since we will not be using any communication here + __builtin_memcpy(&(ret.eth), ð_copy, sizeof(struct ethhdr)); + __builtin_memcpy(&(ret.ip), &ip_copy, sizeof(struct iphdr)); + __builtin_memcpy(&(ret.tcp), &tcp_copy, sizeof(struct tcphdr)); + + + ret.ret_md = *ctx; + ret.code = 0; + ret.data = (void *)(long)ctx->data; + ret.data_end = (void *)(long)ctx->data_end; + return ret; +} + +#endif \ No newline at end of file