ELFB44 (444444vvT   HHHDDPtd #    Qtd/lib/ld-linux.so.2GNU GNUj_[S]#1k)L I##"#$)8K9nj kd' %rS*eM v26 J wlibm.so.6_ITM_deregisterTMCloneTable__gmon_start___Jv_RegisterClasses_ITM_registerTMCloneTablesqrtflogcossinsqrtlibrt.so.1libc.so.6_IO_stdin_usedsocketfflushexitsignalstrncpytime__assert_failreadstdoutfputcstrnlenlseekmemcpymallocstderrcreat__fxstatusleepcloseopenfprintfsendto__ctype_toupper_locfcntl__libc_start_mainwritefreeGLIBC_2.0GLIBC_2.3 ii pii pii z$# $(,0 4 8 < @ DHLPTX\`dhlptx|!"S#÷yt[5 %%h%h%h% h%$h %(h(%,h0%0h8p%4h@`%8hHP%<hP@%@hX0%Dh` %Hhh%Lhp%Phx%Th%Xh%\h%`h%dh%hh%lh%php%th`%xhP%|h@%h0%h %h%hL$qUWVSQhHh-1jqQT |b=;=@ mЖ]$EɃ uաX <ulujE$VjhT(T0X jVjhE=X jVjhEHtB9uX jVjhE`\X jVjh E6 2X jVjhPEP PP1ҡj58Y$1]E X$u wiXEȃiXٜ<DŽEvPEEyɉMv]$&Euwv t&EEEEm(WiX=P DŽ]jXZjhME jj%$Y^j hx{EF't&ًEEEm`%Y't&=P YhjjEȃ \$uiXƄ`DŽEf'EM)Ph@ QY=P  EE%iXٜ<EElٞztiXٜ@Ƅ`f&w]jj] \$HEEmiXE` E7t&ج<E 3jj$MiX)=P N Ƅ`DŽDŽ8DŽ DŽ= E=P , EE%EEUlٞzt]iXل<] iXل@۞ڞv ]؍iXلHE  EEmٞz{ =hhiX]$RE3\hhU$0U 3UЀ=P A  iX3Bhhuu]UE3UEm%ZƄ3`@H3DŽ3E܋HH 3 DŽ3B @@ 30@ &AviX`uq qƉq9=P EjY^jh{:El&]jjh \$*Ew4iX҃9؀=P iXtƄ`iXDŽEv'iXj3XZjhkYXj3XZj h{=t&YTiXjXZjh jjmȃ$Y^j h{Q؀=P Ƅ`E؃jh{EU1*==B 5 5F`11ۍH1v:ÃX9tDŽtX9uF=zą{V9pUEmٞz~s؃$ ]E 8ً1҉UEm<]FsN]Ƀ]$1҉UEmE]E 8EEɀ=P FFF8^ upٞv2 5ۃ$SVP7 ؈^ 65/X ;T(P5;(ljEX 9z =T҉}t{}9}wn}u= Í]f@AAYY;MuM)=0E}P H1@ljE$]ED]EEE,|EEEE}Mu 4E0FF@@9uԀ}tHEMvٞ؋E|@ D %EE;E` EH=P ң$xIu)9v )}PhAB@ PRP 5(9ljuv9]TE)أ(P QRkviXjXZjh{;H=P iXƄ`EDiXjXZjh jjmȃ$Y^jh{~ /~؃jXZjhoYXjh{aXZjv Y^jh {7EăEa8^ PMj3Y^j h{MXZjq Y^jh {1iXjeY^jhXZjhP{Y^jj>iX]jEXZjhUE jj%$Y^jhh{EjXZjhI{YXjv XZjh {EJFM؃jh{ jj5pY[j h| jj5P_Xjh|rurM9 DxM Ix)؍ ؃D9LueP  @ Vd x P jCRRh0j }Phh@ 5` d(E}7{9vG ]uMt&9M]Et˃Љt9׉wӋ]E54EV9U449w j@tP BZ9u v1҉MM)9\t:9r)B x <{8}Em ztjjRR$ 9)9v9T9ˋDȃ9DuE)ʍBEmٞz t ٞzy=9ˉE؍B1<1xE}9raE1EvEv9u9us4|ɿ19'a%|ɿx<333?UPP5<58X ETE(E<뷋859ˍ6ltȃ9lu1\E)ʍBEmٞT+)=1^PTRh@whvQVhp=ffffff$ffffff-vtUhЃÐt&-ttUPh҃Ít&'=uU|fu듍vtUP҃uffUWVS$D$D$8L$D$#ƉŃtË|$4$\$\$9ډvQ4$f)9w4$; $\$tA9vԍ\t\$@ɉp\9ډ\wD$; $uD$D$D$ vD$ |$#4D$T$t\$؅tHD$|$ 'B(hZ@X9wՃ|$D$ D$D$D$$D$ ɉD$ \$D$$T$ 9s>vB(hZ@X9wŃ$;|$tv'؋D$|$9tt$ D$D$$[^_]ffffffSD$wb؃;X sDvD۞ztvv#&ٍ[Ít&w[Í&ÐL$$td&t&BrZ vs &؋u% Ėw vكÍv'Bv2 wvɋZ됍t&ڋHsfffj hwXZjt$DYXjhfVSÉփu)jhwrjV[^ÍvjhwIffSӃ D$RD$PKXZjhwYXSt$XZjhw$wfffUWVSփL=X D$ @T$1҉D$D$b XBBt@9uD$`|$D$l$jj\$,$VD$$ljD$ -X l$ D$49r} 9ߋ0@ډD$P t&9\t҉yD$9\uL$D$nYt%t&<Ћl@ɉ8h\9uߋD$D$ D$l$ٞztȖ\$D$1x6t&l$D$l$L$ % Ж$ \$,D$,C[K[9uD$ ̖1۽|$t& 01҉؉5X )T$@ɍPvt&;\$uɋ|$ٞzOuMt$AɍAYtt&X@X9u؍t&L[^_]=믐&=ȖT$ % Ж$oۉxrD؃xxHX؃xi-HX9d +t$pD$@r뎍D$D؃yD$(뀍vD$$돉P1|$(pt$2t$$4v}~t;D$u܀= |$(AD$D$<ËT$$ &td)?vލD$ԖiS11T$ $ &Ƀ9jك@BB9T$D$$$D$ \$ t|$D$D$l$zYuW% ؖ-ܖ $zTu[ɋD$<'؍L$D$8$[^_]Ít$%룍t&D$=Ԗt&D$ D$hw^_jFh8i]XjDh[XZj-hąMY[j[h?^_jWhP1]XjTh#XZjNhY[jihL^_jNh]XjNhXZjqhXݫY[jXḧϫ^_j/h$]XjOhT賫XZj6h襫Y[jlh܉藫^_jghH艫]Xj^h{XZjshmY[jdh_^_jthQ]XjRh\CXZj}h5Y[j~h0'^_jOh]Xjkh XZjh {Y[j;hl^_joh]XjhzyӪXZhhªY[j&h贪^_hh裪]Xjhy蕪XZjpht自Y[j>hy^_jhyk]Xhh$ZXZjbhLY[jh {>^_jGh0]Xjhy"XZjhyY[j5hd^_jhy]Xj hyXZj!hܩY[j"hΩ^_j hz]Xjhz販XZj-h褩Y[jhz薩^_jh8z舩$ PPj D$DPަt$HPPhSF hSPPPhSF hSPƙFFv ^^؋D$8LLhS肨$@K|$D$0ٞz  1҉T$$,$ٞzq=ٞb\8ٞz =X u4ȖٞٞX @X v'9rX  jj$ˤ,` x X D$<ٞztfD$0ٞztW ٞjjPP$> ءH   = t =X T D$0ٞztHLD$8t?=X 1l$<$,$@X@XuD$8f=@ u= Ѓ@  CEƃP؍كDٞ؅u L$u D$كHJD$= ؋L$,$ٛL{ xV<$Nj4$󥉐XuL [^_]Ðt&<$hS D$8PhS- D$41)ʃ  H |$  $VT$hh ^ <-,,&hS*$PtLT$ oT$ HЀ vHYD9u|$T PPj)h|r6(pQQhS  PhSWt xQxQQhSŚ^_hS舚d Q @RRhS芚 hShL g xmRhhwh 設PPhS3  hSLP <$uh ـLc9A H=$B6 H  X  $ ƀTnH C PPhSY h0hS6 QQj hwzq[^j5X _]jhzT jj58D$< =LtsPPj hzLD$HtUjh jjD$Dp螒_]jhzИ jjD$Dp}D$HD$HuPPjh {莘@  ƀSD   z ٞX 3 ƀV"h|/ x xPPhS$P|$(1D$1ǐ<#jjU轇Ńf!t9VjS9uƒjjUu;|$ 8D$D$ 2|$ $D$|h$P誅D$ٔ$ٔ$ٔ$ٔ$ٔ$ٔ$ـ ٞzt|D$ D$l$ɞD$ظz%s*؃$茚\$|D$$D$| 8ٜ$L$D$ D$ٔ$D$dl$ <-\$BD$D$l$ٞD$5 / ـs ؃$֙\$|D$| 8D$D$ٜ$ـs ؃$薙\$|D$| 8D$D$ٜ$ـs ؃$V\$|D$| 8D$D$D$ٜ$D$l$ٞD$z ظ s ؃$\$|D$| 8D$D$ٜ$ـs ؃$覘\$|D$| 8D$D$ٜ$ـs ؃$f\$|D$| 8D$D$1҉T$ ٜ$D$l$ٞz D$ظ @hh$覂d)‹D$$T$(؋D$\ 1Ҹ8D$ Ɖ¡ D$l$ٞz| =ٞ؋D$D$ T$l$ Dhh$$D$$D$ D$l$ٞz$ =ٞB<؋D$1҉T$ D$l$ Dhh$O$D$$ٔ$v[D$D$D$ l$D$ D$l$ٞz D$ظ (ٜ$؋D$|$6* <ʉL$ډ$Ƅ$ $ /=P u j h1{h$,Uo8T$ ٞX D$l$zi jj$ĀljD$X 9rJL$L$9 P p\$$Fj$PjVapj$PhU oP  9t$#X  5<0赺rƄttjhwhUnp|$(Ջ3L$Lǀƀ+ǀǀǀ2$@$DP$HP$LP $PP$TP$XP$\P$`P ,1[^_]É\$$jD$6L$ $T$q$$L$$7TH$5$L$8$D$P$$$$$$$ $ȋPLDT$T$ $WVSQt$ j`L$4+RMhUhR`$LPh$=Ġ $s,[^_]Ël$LL$|$irL$D$L2]|$6|$8jh{j`D$ +PkD$81|$`\$=P oH  t؃0tD$t$l$s\$D$ D$,L$(1t$|$8()fD$rgكjjL$\$|D$|$xXZjD$~P jjsxYXjU~t;()fD$rvL$ 9L$(Cq&t$jh{~FSكjjL$\$|D$|$0xF &4jhI~D$$D$,D$(l$(ɉT$ٞFD$ztol$ 4$jj$w[_jh {}D$ |$$9tKD$ 7aL$<9L$ S[]fD$rDl$ 49t$,,׀=P tjh {U}L$d|$juBD$D$ijh{,}jh{}L$D$t$  w 9uՋD$D$i~ D$ D$l$ٞ0*؋D$1҉T$ D$l$ Dv'D$L$L2v|$D$L23ظjh D$L$6L$+#<~v$|$$ $ ƒ2jjPvvD$ǀ|$`L$$|$` BL$;D$`uD$DL$DvjhїD$w[]fD$r{؃$葊كjjL$\$|D$|$,qXZjD$~P^w jjsqYXjUEwJ؃$0D$ǀvT$HD$d1YD$1҉T$ D$l$ DD$D$ T$l$ D;ffffffUWVS$D$ t$l$x9׉v9ىv9wf9v  9wt1'$ J0v JWtJ7,$ۈ u؃[^_]ÍHStH^w B[Ít&[ YWwY0Z< HWwH0JB]B[VSÃtD$ 1H_v    8L`tat$ '1jhkhS`jdVhS` jhphSx`Ą[^Í&jdht$V複럍&jdht$V脇|t&jdht$Vd\t&jdht$VDÍ+G>Í+=wV>Í+(>+2ffVS\t=v )‰Љ$$L$[^VSӋh`47h`7L$PXZ[^fffffffUWVS׉΃jht$8QI\=L= D=j ˹؍\$SjKj St$HVI<[^_]fffWVS v )щʍp1jhhZmVPIj k}|$WjR~J j WhV-IjhhVI0[^_ff< D$ t <^wjD$P/]Ð&jhz]fffffUWVSR9w> &<@t9u9vD7uB[^_]Í&,7 &M?9uD7tjh{k\ |$w?̃)֍F0D$jW4\[^_]É'D$1jW\fffffUWVS<$X $$//fL$.KD$ $xD$$|D$1jdt$@Vj$pIjhh$QSHG jdVhS7GjhhS%G $p~IjdVj$|FHjh7hSF jdVhSFjhhSF jdVj$GjhhSF jdVhSFjhhSFL  ٞ}DŽ$@FDŽ$@FDŽ$('DŽ$@FDŽ$@FDŽ$ PG@ $8D$$j &U$TD$@?<g<< < <  < <<j< hSbFjP5 ttt&| Bj…uƄ5ل$zu ل$ٞzt& &ً$Tv؀|$<[^_]jdVj$FjdVhSD jhhSDt&j hhSnD@) $8D$$j QU$ED$@D$jhhS DD$%<@Q<9 j hhSCD$ 9j hhSCL$$ȃD$$ȃD$0jhhSCT$@$djdVhScC T$0$D$0|$wj hhS.CT$@ DDDTjdVjȹ кjdVhSBD$P &&jhmV_]j t$$VXZjhVل$D$Lل$ڞv؃jdVV$4ل$ ٞy؋$(=h=ل$DhSV<[^_]Í&ٞz ] ɍ&\$jd$Wj$CjdWjdVzA jhwjdVhAjdWjD$$$C jdWjdVFAjhjdV7A &j hhSA1L$$p$p$l$lD$$P$$<$<$<$<$$@$XT$81҉D$?D$?jhhS>L$4 %tT$0$$D<vD$DD$ LjD$?ٜ$ v @)lj|$vD$DD$ pih$(B;$ٜ$D$0L1T$0ʃ?1ЀvjdVjD$ D$$ $?jdVhS= jh5hS=D$@9$T1ɉD$0Ѓ<bj hyhS$<XjhJhS < D$4DjdVjjdVhS;D$PD$P $9UύvDdjdVhS;D$@D$@9wD$0 |D$<$P荌$T$@-j h]hSK; @@ mN(}jhșhS:cj hٙhS:X$P荌$T$@v\QfD$>D$@||D$@׉%$4jdVjP; jdVhSV:jhhSD:D$P Tу?v @)Ȁv$$ pٔ$jdVj$7<jdVhS9 jhhS9D$@PDT$@<v$$ ٔ$ jdVj$;jdVhS9 jhhSq9D$@PDT$@ih$8jdVjP: jdVhS59jhhS#9D$Pjj WJjhhS8 jdVkj:P:jdVhS8 jhhS8@jhϘhS8j h\hS8D$@T$RD$@$)jhhSG8D$P|D$Pj7$jhhS 8 D$0jhhS7j"hhS7/_fD$.j!h؟hS7L$@D D ЉD$D$ p|ٔ$0jdVj$9 jdVhSS7jhhSA7D$P &/_fD$.j hhS7D$@DfD$D$ xٔ$,jdVj$)9 jdVhS6jhhS6D$P /_fD$.jhhS6D$@Dih$8jdVjP7 jdVhSh6jhhSV6D$PPDT$P <v$$ tٔ$ jdVj$V8jdVhS6D$P j hhS5D$@D<v$$ tٔ$jdVj$7jdVhS5 jhhS5D$@_/_fD$.j hxhSi5T$@fDT$@fD$D$ ٔ$(jdVj$r7 jdVhS!5jhhS5 j hhS4}1jhhS4D$@|jhhS4D$@jhhS4_$PT$@$KT$@DT$@jjP#F $lj$?D$>?D$?jhhS4D$@TD$@(+P JjhKhS30j hĘhS3jh$hSt3t$jhhSW3$jhhS93 D$4DjdVjjdVhS 3D$P jhfhS2j hAhS2L$@$@D$@Cj h8c D$@PL$HT$@`L$@$D$@PT$@jdVjDihP3 jdVhSI2jh'ffffffS1Ɂh\$Sj hSHF([S1ɺh\$Sj hSF([fffffUWVS$L$L$D|$@\$_]$$P>@ D$`= 1ɀ|$$Ѓ \$9t =  = | $pD$hh$t UTjhFhU- h$ Sjt$$.hShUq- jhMhU\-hSjT$3D$tDP. hShU,-j hUhU- hSjD$DPD.hShU, jh`hU, 1҉T$L D$Hl$Hٞ hSj$.hShU~, jhhUi,hSjt$(- hShUD,jhghU2, hSjt$@^-hShU , j hnhU+hSjt$D'- hShU+j hyhU+ hSjV,hShU+ j hhU+hSjt$L- hShUe+jhhUS+ hSjt$0,hShU.+ jhhU+hSjt$\H- hShU*jhhU* hSjt$8,hShU* j hhU*hSjt$d, hShU*j hhUq* hSjt$X,hShUL* jhhU7*hSjt$x|$fnjj $ظɜ(XZjh-YXjP+'PPjhq-XZjP&Y_jhQ-XZjP&Y_j h1-؃jP&XZj h-Y_jU&XZjh*,Y_jFFPt&r$x1QQjh9,[]jD> P9&$9wRPW$ AP$|P$P$K v jj$ jj$r j jɜ$S j j Ӝ$4 j j $$x"[Pjj $ 6&jhםh-V jhǝjhѝj h+k$|$|t$p~ L$t$x89 = ;PPjh]*L$tt& 8Y$x$x$1$t׃9Lju$x=  $À|$Y!j h;h-VD$ }D$l(?ŀ|$ jhTh-Vx9$xD$@)D$HD; $ D$8=D$89$xD$@9$xL$H…)l$8‰L$HL|$ uD$@D$p8h-Sj}h-Sh-V uD$pD8h-SjAh-Sh-V JL$ h-Sh-Vjhh-V jhwh-Vjhih-VƄ$ Ƅ$cƄ$|$Ld|$L|$L|$ |$L T$lo :D:D:T:h-$ 1Sjк跰jhch-V h-Sh-VT$| D:D:D:T:h-Sj1кOjhўh-V h-Sh-Vy D$p1ɺD8h- Sjjh؞h-VD h-Sh-V099$xvH1ɺD$p8h-Sj譯jhh-V h-Sh-V9ty9$xwfjh\h-V1jhch-V D$p8h-$ Sjh-Sh-VZ $S$D$ $D$Hh-Vl%XZh-t$T\%Y[jhN%^_h-UA%]Xh-t$!%Xt$x7gjhLh-V$ D$p(h-SjIh-Sh-V u¿jhh-Vd D$p8h-$ Sjh-Sh-V* jhŞh-V D$pD8h-Sj袭h-Sh-V jh˞h-VL$| D9D9h-SjкJh-Sh-V jhwh-Vt9$xv4D$l-8聭h-Sh-V@9$xwjhih-V"jhcoeh-V D$p8h-$ Sj茬h-Sh-V jhjh-VT$| h-SD:#D:"D:!T: Ph-Sh-Vk$D8dD$lD$, jhqh-VB h-SjD$ԫh-Sh-VGmD$h 9$xD$ D$lT8hT8gʉT8fʉ(ʉT$ T8lD$ T8kʉT8jD8iT$@ЉD$ D$ \$8wD$8|$L|$ST$8D$ \$@$D$Hh-hD$~P^4D$L<<{<gPh-h$U4$T$lP:D:D:T:h-ȍ$Qj1ɺ&h-$| Wjt$< jhh-WI h-Sjt$@x h-Sh-W$ jhh-W h-Vh-W jhh-W h-Uh-W h-t$ h-W L$Xt$0t$,t$t$tSSjh4UUjh!PPjh PPjhPPjhPPjhPPjhPPjh0$ ZYj$ Sz0$ ]XjS_bPPjh1I$xo$x1ۍxv'9_CPP {$u9uΉ.PPj h XZjPgY_jhXZjPGY_j hcjhFqjh3ej h)Yjh#h-VD$ Jjh+j hj h jhjhjhjhj hjhfffffff tÍ  H  fffffUW1VS D$D$0l$$ $D$D$4uD$D$8D$D$(0:D$!:D$!:D$Ät<<-t8%@v 4$Epuu 1[^_]Ít) $@uuD$(0<-t&1L$<<$Ɉ  [^_]ÍFED$(D0HЀ w;|$(1ɍ uLH7XЀ v|$t뗍vvF1ɀ|$uzUWVS|$D$l$?XtG1 xt9v[^_]É1Ґt&Ett$ Bt*)LɈ tƃ)9w 9s[^_]9w[^_]fUWVSȻ̉D$C0D$jD$PD$WV7)ՍM0L$"jD$PWV t$,t$,WV $[^_]ÐD$L$P19u t&<t9vÉ'fffffffUWVSD$(L$t$$D$ɉ$D$(D$gfffftJÉ))‰Ѓ0D؉…uńt|$tCD-<$;|$ v T$ T$(9vR @ 9ut$9r)эt&9s[^_]Ív'D$3UWVSD$0t$8|$<-jj\$$D$D$D$\$WVjP >OD$1 <t9vT$4t{|$4.xvRD$4,>v hjj\$$BD$0D$ED$9u؋D$4| ؉'> v'؃[^_]ÍX~&HH9u-E&jj\$$ D$D$D$\$WVjP >OD$1ffVSL$ \$t$PЀ wI0t7Q  L 9tHЀ v[^É'[^1ffUW1VSt$|$ \$-9؉$w4jЉ wM1jЉ w* ;$LJЉv1-u[^_]Ðt&!1fUWVS|$D$ t$/X< G1ŃH u"9v<-q1[^_]Ð͉<-P1퐍& A< j& A< v h0 $$ &ك9vظuB_9ڸT<H ؍&[^_]1'붐&ظ.u9w  $0 w $p A< wdʃ0 $9$vى^wt&9T 1ىu 1HUWE.VS$\$8t$jhܢUV &D$0sD$0fffUWE.VSЃd$(|$,D$sm$jhj iµl$U)iuD$ 1D$9v)D59r$Qjh {JՋT$8kdL$jhzT$@)jhzT$HljhًT$PX ųd$(jhwѺ RT$8)d$0jhwىk<k<)ыT$@L$8jh {T$H),[^_]ffffffUWVSl$t$xM<.  Vtf22 9 u؈L..[^_]Ðt&11.L.[^_]UWVS\$@l$0t$DD$j0jjj>t$DU|$0Wt$XL$X+ t$D$|>t#[^_]Ív[^_]fډD$jpjj,j:t$DUWt$XL$X tËL$4$D$ D &<,L$j0j*j,j:t$DUWt$XL$XD$ p ]l$RL$D <*uL$vZC¸%I$T$D$)‹D$8Dt0D$8؉D$))\$8D$&@9uD ;<:D$8DT$8PT$8DQT$L te|$49<$wW|$<9p|$t&;$w/;D$QI|$8 LủT$3t$@t$@9 fffffff tÐt&S Q 1ɍ&غ)t&5t uu Ј u[Ã5j @X5S\$t$SSPhТ5[ffS\$t$SSPhТ5Y[S\$t$SSPhТ5)[ff t$t$hڢ5ÐD$ $t$$t$,hޢ5,fffffVS \$t$SV9rt$D$[^&[^ffffffVS \$t$SV9rt$D$[^&[^ffffffVS \$t$SV|9rt$D$[^&[^ffffff{fffffST$D$L$\$ 9vЉD$\$ L$[fffST$D$L$\$ 9vЉD$\$ L$[fffjt$t$fffffpD$ Pt$xjD$(%-|S  9D$[Í Zt$4t$- [fffffff uD$ D$ ÐWVSt$|$ VtV7P[^_fffffffD$ D$(wpD$,ٞwe|$D$ fD$ l$ T$l$L$ɉL$ٞD$vvȃÍv'vhhhhofffffff$|$D$D$(D$ fD$l$|$l$D$$,$vЃ$ffft$ tT$ fjvfVSL$t$ t ~19[^Ðt&D$ [^!Ív19~ދD$ މ[!^fffL$1;L$sD$ ffUWVS|$ D$$l$t$\TtX$UWTt7$\G$LADC; $u[^_]ÐWVSt$|$ Pt%Vt$D$PS6Xt$ lt [^_Ðt& Sfffff (kD$ٞr#&؍ȃ Ív'1sjj$ȃ fffffkffffffffffffffffffff+fffffKffffffffffKfffff ffffft$Tá u  fffffS jjjXZjS PjSv[ffffffff$D$,ffD$D$0D$D$ȉD$ jRjt$-f u8|i8|i16|f32-s [-]5..[-]12-a (0.15)-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-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) try: print("payload=",payload) except: passcannot 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 < use -h b~^- n= f+1 f-1%head crc error notch at:open iq file jump: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=dBWarning: 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.15), 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 -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 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 kommas 4:tries decoding payload, 5:with ascii/hex, 6:with hex, 7:with hex and kommas -i IQ-filename or pipe -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 verbous 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 verbous and -u sending only for frames with crc and crc ok, see -v -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 check -V very verbous for debugging frames -v verbous ====: 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 and presets -H 5 -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()) payload=base64.b64decode(obj["payload"])enable FIR (-r) for notches (-n)no FIR (-w) set so no filtert outputwarning: sf<7 needs implizit header… /^xƍ4hР@#G8qĉ%K.\p 2dɒ$I&M7nܹrȐ A +V[mڵk֬Ye˖,XaÇ>}۷o޽z׮]tѢD!C 6lرcǏ?@'7I@@z$@?{.>p}?p}w?wL?75>$H>@AKGOzBq=J0A$tI=Bg@@HCzDAzĕ38>A@A`@_p0y #<333?L=q= ףp?HzG?rϥwwSkytraxxBitBroker.euAirWhereWindlineBurnair.chSoftRFGXAircomAirtribunealfapilotFANET+FLARMXC TracerOGN Tracker4aviationVariousEspressif based base stationUnregistered Devices[Multicast]fw:[] axudp: beacon encode error:!Clb=m/s FNTalt:dB MHz Ext Header 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 Geofence Broadcast Reply Landmarks FANETFanet:Clb:Forward geobased fwd ///g/g/O/g/'/X/n///[/>/b/s/e\o/'/a\!\!{"dcd":,"sf":,"nf":,"nfpk": ill-id: cr: len: dcd-lost crc:okerrno lev:(/)dB snr:dB nf:)dB txd: t: q: fc: fec: dre:MHz"net":,"crc":,"invers":,"bw":,"cr":,"preamb":,"duration":,"level":,"afc":,"dre":,"eye":,"nfloor":,"pknfloor":,"snr":,"fec":,"rxmhz":,"ver":"lorarx","payload":""} cannot write json-fileJoin-requestJoin-acceptUnconfirmed Data UpUnconfirmed Data DownConfirmed Data UpConfirmed Data DownRejoin-requestProprietary RFU: Major: AppEUI: DevEUI: DevNonce: NetID: DevAddr: DLSettings: RxDelay: CFList: ADR: ACK: FPending: ADRACKReq: ClassB: FOptsLen: FCnt: FOpts: FPort: Payload: MIC:ax25 part 2ax25 chain hash missmatchax25 part 1AX25::fm to * ctl RRRNRREJUIDMSABMDISCUAFRMRv1 pid TRANSPORT_FLOODTRANSPORT_DIRECTRESPONSETXT_MSGACKADVERTGRP_TXTGRP_DATAANON_REQPATHTRACEMULTIPARTCONTROLRAW_CUSTOMUNDEF TRANS: Trace[ Path[ Hash: Time: App: [ pos:\gChatNode/lRepeater/rRoomServer/BSensordB afc:MSHCOR Dst: Src: Mac: Auth: Flag:Meshtastic: Dest: SRC: MID: HopLim: HopStart: WantAck viaMQTT NextHop: RelayNode: Msg:[Meshcore: viaaxudp encode: too much junk in data (-y for prefilter aprs)Other,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 zoneframe deleted, wrong sync word no ax.25 (no address end mark) no ax.25 (address field size not multiples of 7)`_________w_k_______K#GQGF GFAF:G@0  |IE??: ?ff?B@F AHQ@=L>>CQ8B4C3303232332323 #|AAB=pC<4E.؂;E.;5<.eB%.*s%*lu%*d%*.*f%*Xosic.c0*aX2C_TRUNCI(kN(k(knO;`d$dP4H 4 $ T  T 48h !0T>4>T\\$]t`aaLbxg r 4t!tt,!t\!$u!u$"u\"v"tT---d.X.T/GTG H4hHHH IIIJhJ8KtKKTLLL$0MThMMMM$(NthNNNN4NTO8OtOODOODPd4PtPPPPP4Qd`QttQQQQQQQRR0R$DRdRR4RzR|  8F J tx?;*2$"<@DAA AAC88AA AA I E PC K 4T.CBE FABD FABE HPLLAA GIBE HCBA K AADCBE H@LHIAE(E,E0F,A(B,E0F,A(A,D0F,A(B,E0TAA AAE`dDhGpi`lDpU`pn`  AA AAA Ypa`VlGpN`pK`qhBlEpN` AA CAJgEGFHTFHKFRAEEO FA AAG F CA AAA < AA CAK8T AA AAG 4nC O$B(C0[ C K D$B(C0[ I,0AC(E,E0L  AA l`GA AAH^EHrAEHz AA AAA GGESvADAHKE[BKEWxKBAFABERjKGBBCIABEHhFEHBBGFABEHT#AA CAE8Q `FNoL[oPj 88s BPP |HH#wpppp DwDw+@  # &O   @0@Ё