ELF><@P@8 @@@@ ,,@@@0A0A@ЍНН888 XXXDDStd888 PtdpppttQtdRtd@@/lib64/ld-linux-x86-64.so.2GNUGNURo`U&n*#`6 IGNU$$&(em9e] 7=FU#) 0JYy, PC" _ITM_deregisterTMCloneTable__gmon_start___ITM_registerTMCloneTablelogsqrtfsqrtcossinstrncpy__ctype_toupper_loccreatfreeexit__assert_failfcntlfflushmemmovesockettimereadusleepstrnlenstdoutopenmalloc__libc_start_mainstderrsendtofprintf__cxa_finalizememsetclosefputcsignalmemcpywritelseekfstatlibm.so.6libc.so.6GLIBC_2.2.5GLIBC_2.29GLIBC_2.33GLIBC_2.14GLIBC_2.34GLIBC_2.3I0ui ]iStui ]ii <ȝ<ȟП؟%$ & (0 8 @ H P X`hpxȠРؠ !"#HHŏHtH5ʏ%̏@%ʏh%h%h%h%h%h%h%hp%h`%h P%zh @%rh 0%jh %bh %Zh%Rh%Jh%Bh%:h%2h%*h%"h%h%hp% h`%hP%h@%h0%h %h%ڎh%fAWAH-1AVAUATUSHX|$H|$%z")3=ɔH@ Q*.Hk`f $HZ $Y _PZCH9uD H\$(gHlHg +EH\$(E1HH=DKDHD5HD$( /&H=_=&lHھHD$(H=͍%H=4HھH=HD$(%HHHhH1=gtHx1H-EώHھH=3HHD$(U%H=*HھH= HHD$(%H=cHھH='HD$($H=H=f1腄1f*YNZH`ZHHuH 3 wpL=HHھHI<ϹHD$(>$I<HuH=+'H=+'H5u' H=j%;4$E1f.H9HjHtHf.@HHuMDBH2H,@@@ AIEHDHtHHDEu DEHNjHLxH8HDHtHHދ)D9D)H DEG%‰H4BHH A DD$ A)EDL$JL$HHD$.DL$DD$ L$HE9 HDHDHH؋LDDE1IH=ʊE1NLLT$0IJ Nt $N XXH<$(1T$ T?L$XYu?ZfL$T$ H*Y$HDY>HDHL\(fDf>(A*\Y/ W?/vXDfT?H*Y>X>/01f$L$Z$L$HDHDA)H=L$E$AƄ$LADŽ$HDŽ HDŽA$H=9tA$H=AL$$Wl=/(HDHDHDŽzf1f$X=Y=L$Z=$L$A.  w;HDHDH=] U DHH9B HDHDHH؋tƀLHDHDHDŽfDHTHTHHډƂLg^9V=ƂLB $H=8 $ fD<kf5;A*Y/(W<(/vX;fDD$0X.ztD^HDHDH(/? (W;/ (\/ (W%;/vX(:T%;/HDHDH,A/(HDHDHHD/45fH:\U:M:HYfH*.z <:t 2:^Y¾\$ L$$Z*HT$LdfIZ$IA$H$L$D\$ DЀ=}A$qHD\$Lt $IN$3E$f\$AƄ$L*fAnA$ADŽ$ADŽ$ $A$A$ADŽ$\A$HI$ADŽ$\A$(9B3HDL$HD$H~ H=C;M$(\O8n  H=4 L$$DW81Z f7$L$H*\f.A=uD uh=cwmwtH>vH5vH8t5Awu9=uLvt P9 D uE =u uE11D%vuH-vEW@|$~5uf|$ H=2uD-wuH<$==u@|$=Iu|$E- |$tS((AYYX(\YYX(X/v.zt^YA׃D|$ρ<9p DL$ E1WAA|$GEGL<$AM2M/CLAC~YAXD9AAA)AC<AA\DA~ YXE9uf.WI61Z) fE5$L$H*\fHDL$Ld$IIA$2H=7A$ H=1 L$$fD\yA$ $H=7 A$(H=0]  $=zxƀLH=0 $)  $=4<$Df(H*X\4T4Y/vX3Y/v\/W54/@X7-3HDHDHDŽHD$L-c6LtL$IIAtLG DZH=E/ E$8wL$Aw-A=YQDHH9>\$_HD $HDHL \$\2(H=.[  $(\HDL$HDt$H|$ T$,$6H=4 ,$(.H=y. L$,$t$|$ T$\(\D(!\$tgHD $HDHLb \$\k1(H=}-!  $HDHDHHDƀL(X!A$  H=- A$H=I \$ L$$3A$$L$ D$H=b3l H=--[ A$iH=( $D$L$ \H-oH5oH3 =o;1HsHnH4C Lnt2t-@uH4H H L@9u@-mmumzċS MC9BffKH*.zt^ff/sfZZ`/fɋf%m[YH*fY 4//X\ls3fT$ L$Z$$iT$ L$$$ZY.=rCHCX\rl*@8ku /.v(B@( Al`-Il@kHH3lH#Ry.@8ku # rL@L<$AM2M/C~|AC~(YYAX(\XD9AAA)AC<AA~|DA~(YYX(X\E9u1@xn@@-jhl +kEtBk=xlxDD)D9s D) DABHt93ljD9s>9Hj)؉jH:HH4eH=(#j. H=(iH=(-iiaMD jAL=jKEAA~DfA@AE(C(YY(\X9toDAAAiL=`jAII,EfA@~ECEC((YY(\XED9u)Dډ+iuH=hiIHoA9s0LD9sAAԃN,O,9rh90 hQA9^1hhHHD9rH?1҉De 1HLYYXA9uۍ [1Hʉ)9r)DD9u Ihf҉fH*Y).zt^1ZE9 9rD1Hg)HXT9uff)HPH*. H=%2=h Hvgwg )9AC9\)ffȉHPH*.zA)h3)^f.Or(AL f9rWILHfHL1HALA DI\(Y\Y(XA@D9uAH1 fI((H,(E1)H1H \ÿA/wM9rILdL+E1A"E1/AIEM9uD9seAtiXÿA/vf(H=eeL]5%gLee#'^AL@te(f.@1I^HHPTE11H=cf.@H=dHdH9tH~cHt H=dH5dH)HH?HHHtHMcHtfD=}du+UH=*cHt H=6dYdUd]wS H=1H='[SHHH|$H|$H=H|$H=y_f.DH(H|$MHT$Ht|HzH1HHǂ HH)(HHHBd=dH$8H0HhHhHHþH=6fDAWE1AVIAUL-dATIUSHqdH AA9shD=idD)H=ـ=6d=Bdqtu=3drHLdA9r cAtRD1HtH%I49rA1H[]A\A]A^A_@=cHT$1@rffɃH*r*Ήƃ%AD9rAHT$1fDrffɃH*r*Ήƃ%AD9rAG1fI<J%HHH*JHfH*GD9rf.@IfщAH*1A)fSDAHH.J-"<fD^11(((H5aDLD@ D(HZAYEY(AYAYXA\\A\YYXAX(YYX(YXA(YX\I9t"H(D(A9WfD(Jfff.I*\! !YY!\(fY.z,u*YA[A1f-X!^YY=T!^/=5!w//!Y[_(AA1^cY [AA1ATIUHSHH|$H|$H|$1E1ƇEAvhHЀ 1@ AЍ\HЍJHHp@ vAvCAt}w]A$1zH[]A\?:uA$AfD?:tXw<.uEAP؉EfD#H[]A\?:tE؉E9:uӁwAPE|f.fAAUIATUDESӃtRAIfDA9s)9rI9t9s׉M"HDLL Mf=AfAH-]D(DLEɄtWEt91fDDHLN~A~\A~X D9rHt AAu HFI9tH([]A\A]Ð(fLXY(XAWf(YX(YXXD(EXD(ED9sdfD,HMN,A~UD(EYAYE(D\AXD~AD\EUD~(AXB"D9rA9VfDAWAVAUE1ATA UH-SHH [D$,H$@HD$8[[[[H/a\\\\a\\````[o\i\dd^\G\`[D$$3\HX`\1D$dD$D$1\$ tv$@H$@HH$@ti<-$A$BP8[HcTH__HK$@u|$McL57ff.L$$<[AH*z1u/ Yt%.-pfnL$$ @-NfL$$.Gfn=(^fY.=DYY1ZvD Z1YEx =uZhD$,f.zt`L$$f.ztO^ YYf/"f/\/O1ZXDYYku &YYXY=^Yt =YL$$f.ztNH`XHD$8Ht=Yf H*~@Y^@HHuE1LD$8=aH]]HCƃ<f/0,u DDዳuDf/4v#fH*Y<X84'fD=\Y8HH*Y8E LlHC$Hs$LHdL HHdH\L H)HH)΁@H HHLHs$ǃ HH\HC$HLH)H HH)΁@H)HHs$Hǃ\H)HK$HH\HH@HǃHH ECD_5f-%fƃ</0v%|$ (TUVD$ 0u DDዃuD/4vfH*YX4HfHs$-HLlHdY8LH*HC$HL H)L LHdH\H)΁@YH 8HLHs$ǃ HI)HC$H\L)A@AH HHDHLHs$ǃ\HHK$H)H)HH\HH@HǃHH CLt0HfHCH*.z/fn^/ƃ<AAL$蜼I>L$Hx@ vx@D떾HHMHMb"SSOHHRHH4? H=RHMHRHH8)|$HhR8|MHH?RHHPtH#RxqH=(HHH=RW7 H=MHeHUHH$@HUH$@M(MMHPQƀ@H=Qƀ?H*QƀCvHQH߈`HPHH\HXD$-DH=UffAH*.zfntfn^H=lu H=MVH=HEUH=,$VH= H=<H=0H=ff Y8HH*.zt^H=|R4f/v( H=^04YB<H=QD$H=LlHdHS$LHs$H\L HHdH LH)H H)@HLHs$ǃ HH)HC$H\H)ց@H HHHLHs$ǃ\HHS$H)H)@HH\HHǃHHHH []A\A]A^A_H|$@D$B q7Q0CH7 T$AP0BˆD$@uf. tDQffHAH*.zfn^l /f/0ƃ</t$ v% d$ l$ 0 H==LtDP>G(|$AOH^91=P/@^/LBXr=H1H5.LTW$A<1<8H=)H=; H=i=wGH=TFf.D$,H=E H=9HEHD$8HtpL= Hf.LHD$81@-HHD$81@ HD$8HHD$8HuH=:$A8RF H=LtD$,H=NH=H H= $B6EMieH=UXRH=GEH=6dH=*%H=<H=p]H=gH=2H=EJH=lfH=QH=JH=I>H={FH=jDH=Y-H=%H[H=D7WH=&[H=TH=)NH=piH=NH=NH=MqH=XH=/H=:SH=Y|6H=klH=ZgH=&I}H=}8YH='sH=;dH=tH=RH=`}H=~H=OH=kH=H;H=oH=EpH=`_H=N&H=*=H=A,H=5pH= >H=H=H=,bH=HGH=H=H=5H=uH=d H=S!H=B"H=.1 H= (H=4-H=KH=o2ŭ>>7HHE>:H=9H=H=H=6 H="H=q H=Q`H=VO%H=>!H=-H=\H=> H= H= H=AH='H= H=DAWAAVI1AUATAUHSHH$DL$D$D$D$($D$ HH$D$AEtAfDL$ *YD$Z<DL$ )‹$XE9 <~]D;(YY(\XEtmH $HEH|H ;fDD~HB D@DEBYY(\X@H9u=;xBHLl$@DHHL+1DHNff1A(AFfDHPH9tZA^HDLYYX/XvA/Fr1A/‰fH*AHPH9uH$AVD`Af.f1AZFDAHD1HHDHYYXAN\ANE9uffH*.*Yf/w(ȋz:AN|$ AF |$XAFYXAFAF XYXAF AFXAFYXAFI^ Mf $1fZf1AZF9%HL9uHH[]A\A]A^A_f^YYX~U8D 8H<$YY(X\E.OHEH|H {8D~HBD@DEB YY(\XPH9uAF XAF AFXAFf/f1T$ ZMfT$ H*\(\$HAVTD$ f/f1T$ZfT$H*\(\$T/D$ "AF1fAZFAH=gDHDHYYXXf.p$=7T$ AF<" f&7ADfH)1HHDHYYXYD$ .2QIH=E9uH=D$ H=O|$ AF1ZHl$4VL|$S@ADӉT$ DŽ$9F׉$5@CADŽ$DÉD$9F‰Ƹ9CƉ$Ax$o$o$HHLxED$Ax9AnH$AǀxLD$MxIL$k$9LM$$1fZ3AnA1fE/M9H I뽃l$DŽ$DŽ$$Aƀ o$o$IǀAAIǀxAAAx1Hĸ[]A\A]A^A_LD$D$HDŽ$LAL$DŽ$LD$Dh1Dl$AE1IB{DtCD=1Dt$DAI9uD9l$5AYD$ ZCL$HD$h A9=1LD$8tLLD$LD$D$EjAxƄ$$D$9$H$A|L$HA4ȃA H9u։4A9T$(Tr|$(H4A9/QHA9QHA9QHA9QHA9QHA9QHA9tmQHA9tPQ HA9t3Q HA9tQ AƄ$DL$E$A|A$A) rHEր$tHH91L$L%BMʼn\$L1DpMA2DHCL9tFHA]E]AAD 9rDHCL9uA|I9E ABQ E11҉ƃ84A|$D$L$AIxA1 AHȍ AkAkx AD0 HHH9uÃD$A|$LD$L$Dl$(Ƅ$H@H\$@H$DDŽ$D$8DŽ$D$D$0D$D$dDŽ$HD$pL$H$L$L$\$\DHD$pt$1Ld$xE1HD$`Hl$ H!RT$P)H$t$HHD$hIIfDAFfA.zt (^(d$\(ыD$fA^/]\AGD$\.(‰D$Tczt^(l$8D$0/_D$8AFAG(A\N T 'D$0/ tvJA\FT /^v4f.EƄtAF^/1$DHD$ I I9tyID$HD9|$PDfHE1L,CZDs诽DL$1HD$@fB xEC4HD$ I t$`I9u\$8HŋD$Ld$x.ACD$0H\$@I$D$$AD$CE1$E1IBkDRtC/1Dt$DAI9uD9|$(t AfD$H$L1L$LM6L1L 2fA@AAEIHI9uɋ|$d=%u{D$H$D$D$dHD$pH9$1|$D$HD$pD$dA`DD$dE 1D$\$`/$ePH$$H9sHT$D$dHD$p$A$$D$HD$pt$`t$`D$d$H$Hl$ L$Ld$HLALLt$PIAHAɀDMI9tqfD]賺A蟺A1苺A1wD11بt1DIHI9u|$dDHl$ 1Ld$HLt$P|$dLL$L$ D$0I  $A@!$< YASfDL$L$I @V$ $LD$ t H`1LD$ D$0L$E1MfDC,'C2,&1@ctAuID$L9$&IDŽ$DŽ$\$D$ME H$LD$L$葷LD$AX H$螏9A$ɍVAHD`LD$ HLD$ D$0`LD$ HʦLD$ 4HD1184)48\$ED$M@AA< 1E1L|$(E1HLl$ EIA/@3AfA!r9gAEAA9uAŃsIM9uALl$ L|$(AA=$Mh uD$fLD$8E1ZH$|$ L$L5ݿD$HD$0H\$hffE1[]Zf.f$wxQAYD$ Z-HC L迸At}Hff۸()Zf.f$vqYD$ AHZ谲HcC菲LBAuH=+H\$hffZCf.QH YD$ Z.Lѷ$H\$hA9D$0A}D9|$H@Ll$h[]fff$1AZEf.wQIYD$ Z褱HWAE肱L5ffA()fD$AZEf.vYD$ Z(H۶AEL蹶tI{A|H9H!Ll$hD9|$[]()ffD1AZEf.f$w}QIYD$ ZkHAEILff()AZEf.f$v譋YD$ ZH褵AEϯL肵=I\$1Ll$hD|$@Aǃ()f$D9ffAZEf.QAIYD$ ZGHAE%LشAtD|$@ff[]AZEf.f$szYD$ D{Z轮HpAE蛮LNIDLD$@$4$D$DE ‰T$DD1ڰD1ʼnl$°$D$ ߉裰ߺA菰D$D1A1DD1ED$0]t$|$ 1t$01ֺ ƉD1t$ ljD$ ߺD$0 \$0D1D1\$0|$DD1D$8D˯|$趯t$ |$1؋\$0D1 t$81މƃ ֺt$ ~DjD1VD1t$ LD$@1؃ 9D$=@AxAƀAǀD$:|$dL$H$L$tK`LD$ I Hq訝D$0LD$ r =Iu:A@H$Ik$AsA|AL$LD$ L$ÉH$L<A$|$AkDA !9ADIAD$M9uLD$ $I u-`LD$ Hl襜LD$ D$0o`LD$ H=xLD$ фo =DLD$AXLD$D ž@EA-LD$t$(9GA$A|HAQA|$APt$APtd$APtI$AP t.$AP t$At$(D0A|=2' AxD$?H=LD$خLD$H`轚LD$ `LD$ Hz蘚LD$ bD$EMAAA 1b` HA ~uݺcA Aǀ\$MD$E1kfE$4^dAYHDŽ$DDŽ$PZLD$DŽ$0¸dE)A$hEUffDAH-.H*|$ z =twf/A^D$ .\zt^f/s;LD$(Z\$0T$ށfLD$(\$0ZY WT$$HAf.\zt^f/s#LD$Z聁fLD$ZY IFff$PAH*.\$(zt^L$(f/s#fLD$ZLD$ZYffnH*Y \AXt$$0f/s#fLD$0Z躀LD$0ZY=AXD$$8f/s#fLD$0ZvLD$0ZYXD$\$($4f.zt|$ ^|$(|$ t$ f/s#fLD$ ZLD$ ZYAXD$$<f/s#fLD$ ZLD$ ZYQAXD$$Df/s#fLD$ ZLD$ ZY ffXD$I*$@A.zt^LD$YZ虦LD$d)AA1u 815`ffɉL5HAAfH*Y^H*. (z^f.LD$ZL$ LD$f$\fL$ AHAH*.z{^fAfH*Y.YSLD$ZWLD$DŽ$L$`AvPAfffҸH*HH*YA.zt^Y$LA$AƄ$H$لEH= $X=nLD$ HHLD$ fҋf.H*zt^ 1LD$YXZ蜤 LD$9:AAA5L Dd$L$EAHDMljDMI  /f9sv\Df.zt^/$w/w/rD@t:D$fL1D LHؒ5D$A9t! L2 ADM4Dd$HMD@UA$A$dfAnE0HA8fAnA,fAn T$fAnfbfAnfAn fbfAnE<flAfn$D fb$$AfbflʈI5I $tf$A)$A$A)ARAQIWVPj`APAhHhH$@H$fo$fo$fo$HD$`<$fo$\$fo$ t$ fo$0|$0\$@t$PUHİzA9&AAAfH*Y7^^HH耐|Dz5EAE9 H<HCLD$"|$1LD$L$L9LH߾LD$lACA GALD$H=H=t诣LD$A蹝H=z舣LD$A蒝H=4aLD$AjH=̩)LD$! yYD$ AZMHAE+LޢAf.DAW1AVAUIATUSH8HG5{ H|$HD$AD$$Mo%HHBH:AHAtEV DHfHHDXHH9uAtDЃHff.H*<6Y1fDD$T$,L$(d$ XZ\$}D%f\$Ad$ DD$I*EL$(T$,AD9\2HLIcH*LrHcMMfD9tHAyA D9uIVB\L)\9MNM]~fDHcAT2E=5D/(T/9HDRC/wfD9s ACv AC\D.zt^/vf(sDA3NTAYjAj)ANTAYZAZ9^DfDHHD9rκHT$EL$HUT$ȃD HDH0HuHHUAt$@H2HHLH9HzH1D9uD$ffH*.=H|$ YB~MX=Dt$ZYMAt{LmE1T$\$AGfIH*YD$ I\D$YD$ZsA~MYXZYAME9uT$HD$\$$EE1% fHI1DAH)~\((BY(YX.Q_IE(M9uf.|(uw~(YEtQ|$DHHH@HY@H9uAtAAFH~YH8[]A\A]A^A_Ð^(}@ T$^fYL$ \YZGrT$@HEzDLLH*HHzN\H|A9A[_DENTAYZAZ7fDB6EDA^(fI@Y(X\)@H)1fL%PH8%o=5LM@fEL(D*Mu&fDE\DYD]A(HHt;DHE/sDH E/E(HE\DYD]A(HuY\Y/wfۃfEA(ډD*L"E\DYD]A(HHt;DHE/sDH E/E(HE\DYD]A(HuY\Y/wfAZII9=TALl$1L=нMHĽED$ L$(d$T$,fIt`AT$ADL)/TvEA܅PHvD膔58H AH:AIuD$ Ll$EAL$(d$T$,E1Ll$EԉML=ED$ L$(d$T$,fIMM9tXHIH8T$L/vDH=觙߃踓IMM9uD$ Ll$EL$(d$T$,ux5=fRfAL&LhE3E181H=uT$,d$(L$D$ Dt$赘5DD$T$,d$(L$D$ &E1oHL$T$ d$mHL$T$ fd$,DAUIATAU͹SHӉHHH7"D5PAT AD AL ft$ HH‰σDG7w0 AC y7@t$ q0BJ0r7 B@|$ H @t$ J0r7B @t$J0r7BH0P7 @t$ GHT$D$ZH[]A\A]f.DIҋIfDDLHDAD)=GQ*Y5AfDDTDA)=AG*YAf.AVAUATUSHH N<@H΍xDH<;@xD΀<;@HxD<;@HDΉր<3@t`A)L-3Jl#N4#HfDL+II9t5AD$< t <^wH|$@9ABD#uH []A\A]A^ÐqfH=s謕H|$ w:̾HH#)Ń0@l$zH []A\A]A^DH|$D$1TH|$뫉fDw f.AWAVAUAATUHH=SHjIELD$ qWQ0MHW T$P0Bˆ$誔H=虔>H=gFD} H=oHDX H=W'D7AAH=? ) H=,ؓ H=%ǓH= 趓HH=[]A\A]A^A_鄓@UID$LЃpW< H0LD$HWP0 Bˆ$KULD$ЃpW< H0LD$HWP0 Bˆ$ ULD$ЃpW< H0LD$HWP0 Bˆ$ǒfU LD$ЃpW< H0LD$HW P0Bˆ$~ H=m ULD$ЃpW< H0LD$HW P0Bˆ$" H=oAULD$ЃpW< H0LD$HW P0BA$‘H=豑AA9AFABL-D$ȃpW< P0LˆD$v#WLI$LD9밐0 H=k'f H=Jf.ULD$ЃpW< H0LD$HWP0 Bˆ$辐ULD$ЃpW< H0LD$HWP0 Bˆ$|ULD$ЃpW< H0LD$HWP0 Bˆ$:ULD$ЃpW< H0LD$HW P0Bˆ$H= #U LD$ЃpW< H0LD$HWP0 Bˆ$蜏U LD$ЃpW< H0LD$HWP0 Bˆ$ZU LD$ЃpW< H0LD$HWP0 Bˆ$ULD$ЃpW< H0LD$HWP0 Bˆ$֎s H= EMAWEAVAUADATIAUSH$$|$H|$(HL$(D$D$L$ \$[L$ X TfZv5XT$fD$ ZMH|$(ńEH1fD0 vHD9sw r@wۃAEFD91AufDD9s4у@4D9rHD8H|$(E1LD$,uܹHHXAADl$TT$TH$DHt$TLE,HHT$D$T~ HHXWES A@w A  A` AAAZAoHcH=WQHǔHWD$T LHAIfL$bЃpW< H0LD$aHWP0 ȹdBHD$`VL$LHH%LDd$TA/_ H߾HʉfDD$RKT$TfHHЃD$TAd*Y$TMHH߹dKHHeKHHlKHHNKHH0KH?HKD$@HˉHJ HHJD$@00kHzHJ H$HJC&H߹)ƒOHmDk}NJL|$0 LDTK LH߾JHHL$XHT$\LHt$TD$TH߹IA)ƒOH\mDk}IL|$0 LDJ LH߾IHHUvIAEdHA<AHihHlJdHH߾7IHHIDl$T-1111tLAWAVAUAATAUSHH(D7AAA{H݋AHcHþH=Њ\fDHHHD$\;@VH=Z\;jVaA W H=Eu"\A AHl$ IE9rJB+HD$"ЃpW< H0LD$!HW P0BˆD$ [IuH=0[Ad A fIE9rJB+HD$"ЃpW< H0LD$!HW P0BˆD$ C[Iu H=,[AAf.IE9rJB+HD$"ЃpW< H0LD$!HW P0BˆD$ ZI u H=JZA S HD$"ЃpW< H0LD$!HW P0BˆD$ _Z H=NZA cS HD$"ЃpW< H0LD$!HWP0 BˆD$ ZL=`A" H=YA AHl$ 5WHD$ YDIA9zqBL#D$"ȃpW< P0LˆD$!w0룾H=oOYH=C9YH=#Y H= Yp H=ԆXHLHHD$X;@RH= X;RWAM H=EeXASAHl$ IE9rJB+HD$"ЃpW< H0LD$!HW P0BˆD$ XIu H=|XAA fIE9rJB+HD$"ЃpW< H0LD$!HW P0BˆD$ WIu H= WAvdAfDAAtJB+HD$"ЃpW< H0LD$!HW P0BˆD$ (WIuL=]H(L[]A\A]A^A_VH=2VOL=d]wC Hl$ H=KAD$D$VAED$Au^fID9|$rJB;D$"ЃxW< p0HLƈD$!pW P0BˆD$ AVIuH=*VD|$D5PDADA H=UOH=UDO H=U|$O H=mUD$ljŃOH=NYU{CbO@MA 1EL=[H=AUB|3OIV IEH9AL$H=ATAD$D9D9l$Hl$ DD9l$DHD$"ЃpW< H0LD$!HW P0BAD$ [TE9u6 H=@TDH|$,T@NH=ӂTD"N H=SDH=ׂSAEEAL=IZHD$HD$ HD$f.IM9pLDSD9t$rEB 3D$"ʃ r0zWLʍqW I0@|$!H|$B@t$ 7SHD$I9u H=L=Y S H=}R H=HT$Du RAD$HT$D9L,AL$Hl$ D9t$sID9t$AUL$D$"ЃxW< p0HLƈD$!pW P0BAD$ URL$A9u^H=€6R H=%R H=R H=R H=nL=yXQL=hXA" H=tQf.AWAVAUATUSHL=MT$ AAMD$L$ V@HځdHG=AnE~ H߾d2>ILHHc=rHcQM6MAF tH$DfҹH-EH߾dDE)$Hl$)$)$)$)$HDŽ${HDŽ$DŽ$<|$ dH=dHH߾dY<dHH@<dHDK=dHH߾d<\$/wH߾dHA;D$Hd=HH߹dd; HHd;D$ Hd=dHH߾dw;fH[]A\A]A^A_f.@AWAVAUATAULSDH$DD$x$t$`$D$h$d$$$$H$$D$$ t$@|$0D$$\$D$($l$HD$ $H$H$D$P$ D$<D$=D$?D$8$,Dt$lDl$mD$ $8D$$>D$X$@D$n$CD$oHHD$p/JH$ JV=D$TR1E>$$oL$ HH9X=t @L5MV H$ H5T}L$HH$ !HH*}Q9|$ H[:HH߾&9HH| 9D$lT$m|H :HH߾8 HH|8AH9HH߾8H{|H߾{8ͻH~ffH*.esWHE:HH߾ 8HHW{8|$8H9HH߾7HH{7|$PH8HH߾7 HH{7|$H8HH߾T7 HHG{;7|$(HE8HH߾7 HH{6D$$H8HH߾6HHz6|$H7HH߾6HHzm6D$HHe8HH߾@6HHZz'6|$ H17HH߾5 HHz5D$@H7HH߾5 HHy5D$0H7HH߾p5HHyW5D$HO7HH߾*5HHly5|$H6HH߾4f.  HE1H y4 HHy4E1E\Dd$(MfIM9#CT=Ai׫VUUUTUUUwӉƄ$ ? 3 = >+$ ? 3 =1 >+$ ?| 3 = >+?$ : 3 = >+HHI$ [31M9Dd$(IH! RD)HwH3=`H-YMtfDAn M6Mu|$ltEt|$m= D=t1=t(=۱t|$lt|$mtH=1MFH$H$HĨ[]A\A]A^A_fD$xE|$n$Aq |$l |$mt |$XT L5*Mk=JEnH2Hc= HHcMPFM6M|$l@E=D$T2L$TEDE1H$ L-[hmЃHƄ$ pW< H0L$ HW P0Bˆ$ EetnII9 JH$B0uP^<[<] $ Ƅ$ HDuAFD9sLIDI9u@=u tH=JMDe=OE1D-uEH߾ 1=YHމC$k^\$ 1بD$xEr@Ƅ$ E vf$ ?3 => +$ ?s3u =y> +$ u$?w HPG4Bˆ$ HH.f.?E.H$L-lHHH0iҀQ)к4HBLB|$8<EH^rHaB$(p<H߾CB$0tH=q#B\$ Ƅ$ ڃ J7B0C$ H7P0 BH$ $ HAH=qA|$P;H=qAD;|$XH=ptA|$l|$mH=pMAH=pL5p5AD$$HpY;L A$4;H߾@$; H=Mp@D$:H߾@$:H= ps@D$@:LQ@$y:H߾,@D$0W: H=o@|$:H=o?|$(9H=to?|$ 9H߾?$9H=;o?$4]D$-H=]q_?|$q9H=o@?H=n/?D$HZ9H=3F ?f.{u$HH>H=eE>H=p>$XH$P>H= g> =AEAAATGDGGGK H߾H:n)KqHX+HH߾)u|$T|$ 4\$ À =u!+ut$`H$D|$ j1|$TDPD$wPD$`PD$(PD$@PD$@PL$DD$TDL$LD$$$H$H0@H=_Hl<_AM H=n<\$ H$ Ƅ$ ڃ J7B0C$ H7P0 Bˆ$ T<H=B3<fDƄ$ [<RW$ H0PW< Oˆ$ ]f$ 2] H=k;L$ Ƅ$   q7Q0Cֈ$  J0r7B J0@$ r7B H0P7 @$ GMfDH:a51l6JH=kk:Amf$ dH=,j:\ H=j:H=j:0Lp:v4H= jH:QH=i2:|$D4H=i:"4|$ |$nD$pE|$X{$DH$[9<\y>|$TGHt$pH$H$`H$5-H5tjH H$D(D<<c=HNj-H %AAHhHA-$HkDDl$HHcHGjG$xHc=IcD$hH$'9A$ L5M=.t$`H$D] Hi-H/$E1AA-H$AЃ?AAAADD$(T$0EDHi-H#DD$(D$0 AH$ 1HD$8E9H\$(EDEAD8D$0B8HJ H9AED)A9EuEH$ELT$@B Ƅ$ ʃ r0z7Lʍq7 I0@$ HT$8BH|$(-@$ -"ALT$@bH$BLƄ$ ʃ r0z7Lʍq7 I0@$ HT$8BH|$(-@$ -j"Hg-HL" Hg-H."Hg-H"@AHsg-H! HLg-H! H%g-H!zHf-H!\Hf-Hr!>Hf-HT! Hf-H6! Hkf-H!Hf-H Hf-H HS4MH$L Ƅ$ ʃ r0z7Lʍq7 I0@$ HT$8BH|$(-@$ -H H|$(H-f u8|i8|i16|f32-s [-]5..[-]12-a (0.06)-c 4..8-b 0..9-l 2..255-g -r -w 2..4096-o -S -o 0..1 (-1)-M -P -n -U or -L ip:port number-T -u ip:port number-J out of memory-J ip:port number-j -Y d|f iq-filename create-Y b -Y d|f|b iq-filename -h thislorawan all modulations:Tianqi-Sats 400.260MHz: mknod iqpipe pimport json, base64, socketIP=("0.0.0.0",5100)sock.bind(IP)while True: print(obj)< use -h cannot open udp socket-o shift outside iq bandFIR length= ratio= offset= notches:..bw= cr=from header sf= id=Off optimize= drpll= drc=ppm squelch= inverted-X Warning: only one bw = input samplerate!-Z (0.01 0.9999)-W (0 = off) Decode lora sf5..12 +reverse, 7.8..500khz out of IQ-File/Pipe, 8 16 32bit, shift and downsample (samplerate must be exact +/-0.00001) output data in raw udp, axudp or json, view (and if possible generate aprs axudp) aprs, pr, lorawan, fanet, meshcore, meshtastic... -A (*) enable frame chaining for ax25 longframes -a (*)follow frequency drift, 0 off (0.06), try other on hard to decode frame from iq-file -b kHz 0:7.8 1:10.4 2:15.6 3:20.8 4:31.25 5:41.7 6:62.5 7:125 8:250 9:500 (7) -C (*)use crc on implicit header -c (*)coding rate and enable implicit header (4..8) (else from header) -D (*)if dcd lost go on decoding until frame length limit (for external FEC or monitoring) -d (*)switch off collision detection (less cpu but loose stronger frames starting inside weaker in rare cases 2 overlapping frames are both decoded or strong echoed frames may be seen twice -E switch off using crc to repair 1 chirp (stresses crc, does not repair much) (on) -F max. block energy FEC off (hamming code fec remains on) (on), try on/off for best decode iq file -f u8|i8|i16|f32 IQ data format -g add this to measured signal level for absolute values (no autogain in sdr) (0.0) -H show payload in ascii if printable else in [hex] same as -H 1 0:show no payload, 2:in hex, 3:hex with commas 4:tries decoding payload, 5:with ascii/hex, 6:with hex, 7:with hex and commas -i IQ-filename or pipe, "-" for /dev/sdtin -J send demodulated data(base64) with metadata in json, may be repeated -j write demodulated data(base64) with metadata in json to file or (unbreakable) pipe -K do not exit on broken iq pipe -L (*)same as -U but AXUDPv2 with metadata for igate individual destinations per sf: -L 127.0.0.1:9012 -s 12 -L 127.0.0.1:9010 -s 10 -l (*)fixed data length for implicit header else guess from dcd -M pass through rx frequency to json metadata -M 433.775 -N if verbose add empty line after data line -n <[-]Hz> <[-]Hz> notchfilter baseband from to Hz (may be repeatet) -O <0..1> (*)optimize on off else automatic on sf/bw (-1) -o shift input iq band +-Hz -P <+/-ppm> (*)tune datarate (chirp samplerate) or preset for auto (-a) in ppm (0) -Q verbose and -u sending only for frames with crc and crc ok, see -v reduce out of noise decoded with higher -S squelch or filter with -X -q (*)invers chirps or swapped I/Q (prefer negative spread factor) -r downsample input, give exact input samplerate in Hz (off) -S (*)modifiy squelch level critical for implicit header frame length guess (automatic) -s [-] (*)spread factor (5..12) (12) and start a new demodulator negativ value (-s -12) for invers chirps or swapped I/Q -T send json udp with DCD-state+sf valid for this sf and every send noisefloor and peak -t (*)send raw frame bytes in udp frame only if has crc and crc ok -U (*)send frame in AXUDP -u (*)send raw frame bytes in udp frame, -Q for CRC ok frames -V very verbose for debugging frames -v verbose ====: cr=4(no fec), +++++: hamming ok, -:hamming error, h:by hamming corrected, ~:weakest chirp replaced, b:noisy chirp replaced, c/C:tried until crc ok/not ok, ^:bins with decending power sum tried until hamming ok, x:ok but same sf/bw chirps seen, sets -H 5 too 8:0:id:12 = sf8 decoded by task 0, network id 12 (not part of crc) -W every n*firlen samples update notch filter 0=off, ok:50 (0), less for pulsing narrowband noise -w downsample fir length (higher is sharper/more cpu) else automatic (4..4096) (0) -X (*)filter network-id (sync), 1xx stops decode on wrong id so fast ready for new frame if set -d 0 is wildcard, 20 will pass 2*, 03 for *3, 00 pass all (00) -Y d|f|b iq debug output in float32-iq (d)echirped or only (f)iltered, view spectrum, or bins , sets -d -y (*)not view decoded protocols and for aprs needs 3c,ff,01 header else all junk removed until first letter -Z add pulse noise filter (noise blanker) (0.05 0.999)(*) may be repeated for more demodulators, to start next demodulator apply -s before other pramaetersexamples: aprs with autonotch for narrowband interference: rtl_sdr -f 433.775m -s 1000000 - | ./lorarx -i /dev/stdin -f u8 -r 1000000 -W 50 -v -H 1 -N -b 7 -s 12 -w 64 rtl_sdr -f 869.525m -s 1000000 - | ./lorarx -i /dev/stdin -f u8 -r 1000000 -Q -v -H 6 -b 7 -s 12 -s 11 -s 10 -s 9 -s 8 -s 7 -s -12 -s -11 -s -10 -s -9 -s -8 -s -7fanet with plutosdr axudp to aprsmap: rx_sdr -f 868.2 -s 1000000 -d driver=plutosdr -F CS16 - | ./lorarx -i /dev/stdin -f i16 -r 1000000 -Q -v -H 6 -L 127.0.0.1:9002 -b 8 -s 7 rtl_sdr -f 400.0m -s 1000000 - | ./lorarx -i /dev/stdin -f u8 -r 1000000 -o 260000 -v -b 7 -s 10 -O 1 -N -H 2meshtastic + meshcore and frames in json via udp to decypter: rtl_sdr -f 869.5m -s 1000000 - | tee iqpipe | ./lorarx -i /dev/stdin -f u8 -r 1000000 -o 118000 -b 6 -s 8 -v -N -Q -M 869.618 -J 127.0.0.1:7001 ./lorarx -i iqpipe -K -f u8 -r 1000000 -o 25000 -b 8 -s 11 -v -N -Q -M 869.525 -J 127.0.0.1:7002example: decode payload from udp json with python3: -J 127.0.0.1:5100sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) data, addr=sock.recvfrom(1500) obj = json.loads(data.decode()) if "payload" in obj and "crc" in obj: payload=base64.b64decode(obj["payload"]) print("payload=",payload, "crc=", obj["crc"])enable FIR (-r) for notches (-n)no FIR (-w) set so no filtert outputwarning: sf<7 needs implizit header}*3B6 LPo :Af: df=b~^+x- n=Header: dlen= crc=head crc error notch at:,manual notches at:open iq file jump: found first syn nibble wrong first syn nibble state=SYN 1 OK state=SYN state=NETID wrong second syn nibble state=REVERS1 state=REVERS2 jump/4:rev chirp timeout state=DATA dcd-lost-count=noise=dB peak=dB… /^xƍ4hР@#G8qĉ%K.\p 2dɒ$I&M7nܹrȐ A +V[mڵk֬Ye˖,XaÇ>}۷o޽z׮]tѢD!C 6lرcǏ|?z$@? #>$Hu=@@AKGOzBq=J0A75$tI@>>=HCg@@zD'7?I@?zĕ38>pA A:?`@_p0y #<333?L=FNTMeshtastic: Dest: SRC: MID: HopLim: HopStart: WantAck viaMQTT Hash: NextHop: RelayNode: Msg:[]axudp encode: too much junk in data (-y for prefilter aprs)axudp: beacon encode error:!Clb=m/s dB MHz Ext Header Forward fw:[] ACK none requested requested via forward unknown unicast broadcast Signature:no payload tracking:Online Tracking deg/s QNE:Message:Message subheader:Service:Internet Gateway Temperature:C Wind:deg km/h Gusts:km/h Humidity:% hPa State of Charge Extended Header Thermal:qual:HW-Info Ground Track:online Remote configuration:Acknowledge configuration Request alt:Geofence Broadcast Reply Landmarks FANETFanet:Clb:geobased fwd ///[/>/b/s/e\o/'/a\!\!///g/g/O/g/'/X/nOther,Paraglider,Hangglider,Balloon,Glider,Powered Aircraft,Helicopter,UAVBarometric pressure normailized Support for Remote Configuration Other,Walking,Vehicle,Bike,Boot,Need a ride,Landed well,Need technical support,Need medical help,Distress call,Distress call automaticallyText,Line,Arrow,Area,Area Filled,Circle,Circle Filled,3D Line,3D Area,3D CylinderInfo,Warning,Keep out,Touch down,No airspace warn zonennnoojo]o>CQ8BitBroker.euBurnair.chAirtribunealfapilotXC TracerOGN Tracker4aviationEspressif based base stationUnregistered Dev[Multicast]p@O"AV@f@3303232332323 #|A@AAB=pC<4E.؂;E.;.eB4CB%.*s%*d%*.*fosic.c0X2C_TRUNCI(kN(k(knO;tMPP`0 P8`T``HPp(h23@4T5<`BT0O0n<y{  $ d @x 0   ( t  \ x P p ( \ P ` @,Tl0@p0DXl 0@Pp(DzRx "zRx $FJ w?;*3$"D`\/Aix,QAI pD  A LBEE I(D0A8G 8A0A(B BBBE $_Y H ~ R ]@(4BDI D0  CABH N  CABD 4lJEA G(  ABBB LP BBB E(G0H8G 8A0A(B BBBD L BEG B(D0D8G 8A0A(B BBBC |D`'BEB B(A0A8G   8A0A(B BBBA O!  B D A F B B K D t H#[ BDB E(A0A8Dp 8A0A(B BBBB P)BRB B(A0A8DOUDQCd4d,BED H(L@(A ABB-X$.jBFB A(A0GP 0A(A BBBB Z 0A(A BBBF P 8/RBB E(A0K8QY 8M0A(B BBBI L`5BEB H(G0A8G y 8A0A(B BBBE h; BEB B(A0C8G  I K H H H e L 8A0A(B BBBJ xhGBHE B(A0A8Gf 8A0A(B BBBF YEEFMpEABCheF FBB E(D0A8JrA 8I0A(B BBBE HpBBBB B(A0A8G&8A0A(B BBBPr9BBB B(D0D8J# 8A0A(B BBBC < #F#E#E$E$E$y##I#H#E$B$D$U$E$B$E$w##I#D#E$E$E$k#7TbD$ /BJA A(e  CBBF G  AEBA lb<dBJJ D(D0M@0G(G BBB ,BHD  ABD @lBLO A(E0F@ 0A(A BBBI Hi\pHPBBB B(D0D8I`( 8A0A(B BBBE HBLB B(D0D8JX 8R0A(B BBBK  Hq0 wBBB E(D0K8GPhXB`BhIP^ 8A0A(B BBBB WXB`BhIPP 8A0A(B BBBB NXB`BhIP O} 'AU 4DA~ h'AU( |< 0P <ADI N IAJ DFA0 <ADI N HAK DFA0 <ADI N KAH DFA  DP , @ 0GeX ̸Aa_t $ 3AGG aAA $lM | AS DK E$ P8 ̹BEE D(D0 (A BBBA D(A BBB 86 d ` \ X T P L, H@ DT @DIl 8 @9Aw d?D z<<IS  <ȝox     ooh oo oН6FVfv&6FVfvGCC: (Debian 12.2.0-14+deb12u1) 12.2.0GCC: (Debian 12.2.0-14) 12.2.0.shstrtab.interp.note.gnu.property.note.gnu.build-id.note.ABI-tag.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.plt.data.bss.comment 88 &XX$9|| Go0Q Yxxao  Nnoh h } B     00*<< @@0 pptHsHs ȝȍНЍ(x  0FF