From 34f72d2d358439d99c187650ed5ea3f7e847d7e2 Mon Sep 17 00:00:00 2001 From: Matej Trojak Date: Wed, 8 Jun 2022 10:20:44 +0200 Subject: [PATCH] Added test and test files for feature alignment --- .../feature-align/corrected_0.parquet | Bin 0 -> 46218 bytes .../feature-align/corrected_1.parquet | Bin 0 -> 46320 bytes .../feature-align/corrected_2.parquet | Bin 0 -> 46320 bytes .../feature-align/int_cross_table.parquet | Bin 0 -> 54104 bytes .../feature-align/rt_cross_table.parquet | Bin 0 -> 52974 bytes .../testdata/feature-align/tolerances.parquet | Bin 0 -> 1656 bytes tests/testthat/test-feature-align.R | 41 ++++++++++++++++++ 7 files changed, 41 insertions(+) create mode 100644 tests/testdata/feature-align/corrected_0.parquet create mode 100644 tests/testdata/feature-align/corrected_1.parquet create mode 100644 tests/testdata/feature-align/corrected_2.parquet create mode 100644 tests/testdata/feature-align/int_cross_table.parquet create mode 100644 tests/testdata/feature-align/rt_cross_table.parquet create mode 100644 tests/testdata/feature-align/tolerances.parquet create mode 100644 tests/testthat/test-feature-align.R diff --git a/tests/testdata/feature-align/corrected_0.parquet b/tests/testdata/feature-align/corrected_0.parquet new file mode 100644 index 0000000000000000000000000000000000000000..8fb0be30ed7cad51094703df1e1a26b16dac2462 GIT binary patch literal 46218 zcmdqHXH--{(=IyTphM2lG$PT6L_v{~U?K<-1OXYMfFc4>at*@*OU)S3c!M+w=#7P)ZkAj_;o3T={TN&0XSky^;cTAGESE0+@4Cw7LviM4UyG3%1t5NLn~3c zP-9k$vj>+gStpX{H-Q78&~ioz89@sUa8N0vE>wrix{s_FJ6(_!yNzI_l1YdL$|_F| z6$opc>mPy3m>dUYN>nhrbLYjPp+*#*2{W+q@kd19rUWySmy0QVa;Zj8qw!n7OE`lq4 z(J4gsuSBB!25ms5j$sShd+f*9RF0!yIp4-Q+B@V*VfTz6Z>rXU01i5Z^3R?;Vl1W8`s&4wYU}(Rw2(x>L#c*}L zd*=u;VLT$bv!C-*~Rp88+pfVJ?yCu<=2lo$!lwE;H zv%tZSS$)`pA$|v&P~Sa4#-E3Xy6ec8k18b=#uZB5kDMrsC02+qT~5?W5d9gctwj0k zD7GZMoTGF z>sCUK_9-N@>C*&bS@JPdVL4$S+62LoZElH3(g{K?t75T8H!VVhWE>5J^c!6_g>in6 zC~JQuruY@-add&-43NSK2*gg-L0AN*V?-0(NP^r>C_~!Oh{)bbcnmP^MPyi_HOVok z28Fef;6<8V9Kqp9VOtX8V@0YFEw$CL&A1goSm=((mLk}bHWG}fVwD8NvK5iOxtE}a z5!~ntzT#jfHV+-07n~KaV1k2#-XLPQoI!D-E5~C^BT-xrPiGQ`d?qGXmMHeu`-!6uM1g=E$i)RvF_jN=r?I|?a* z2T9;1f=KTnG=-&vrnInm9piO~au6DiRDv7jD6v(kj)bzL02f039YVeX;b4IhhGf=} zDAao}5rKXU-x=ahuo+Dfo0010bub)90vn?X_fREMY(@HndYyZWj*p=;NHjV{G}<@CCB#Sd;yle2 zMXn;oMtvtkFkY}2kzpo_$eL9q=r$;v%toh8AstiY79u5KiB+gW$Vk;EnyKzXBz?uv zQb5cVkw%X}Wc*A-q z+k`TVNkR>(DKUBms3NMoMu}wji7GJiTu=p)EaAi$D*_SOBZOGm&vc^vvJk}wxLqZek4x;I2!dRpW<5(`?jY8Wn>{k-qa4S<7POAw^z9D9YzEllm%WGkgDohwh ziO`62$QY64=!Arm#Jtc~5K}_iT!9FS>k+9*4OmH;#v%)5aUsBS&S;JVtQAE$EEAMN zEi)$cm9xY)<^%f>8N3eIX@;<@pL`&;V|U{$oCwEeG}~CLa!kf5Y6Omu0?k>7v?0R9 zQ{x+m@=`Q9g>}3Oku>~-pjb~JlLTUs(+sAO3uzKnA=A*w@==>OV>mh}ET;uXp`y9S z?C;o)v}ZM!6qyu)He+M(gw1NW!^|r-Avfw*LQ|SE5oBMxVv%KtI$}Bzi3rm;4-~c^ zp&HeOPz_FIBQn|ub!aQb2>LHfLdX}V2?Bc-h1o2QMbp!rRw9LTYBfR6BP1~{5R&L_ z_K569gn_9GuOOCk7Zc^n1WT6eC{bqM2q|^-g!>jpGO<)4Wg|BOR&z zvN#I%JvE~3M`J|V4?+Tin+Q*^2S-H007#*?#-foJBZT7Y??pu2@>WE8+YnKf#RM9& zS3)8+YZm8}@qWR1jsyy$g%<@C5Tjtt=T@W$ViZ&kA~m5k5%S>vL85GWh$w4eASBaw zp+J`QF%;;R5sPGoED>f&3WPxFS3)33={X|HY7`N4U!x3{-&_h6o0PY?`zy(SjE>AX7V#%6@{Pp)U|^LK{rRI(ASIBI`s2 zB15kM(J!hS5u86@9}=-CSmVU{VJM>ld~9X%1&&e*<0dg;wu2lZjkOw)6|aU!A0$Q( z#95L;A2mQEITDs&%vmDR#0ZDv4EHu29R-E;YX$P7{*ot}FV-ab-zH+3 z%7`u^o!1PJYPScGBprc#Rf&ZQvlkIr@6!<3>kAQSgH?zOn`#unwk7x))FWR|YDNNG z8#_{Qvr-r}x6zESg*anUhwdZ7+zUj~(h;I8KaR*!{Dcc^H?irya3!uFQE09_NM>6I zAky9~MI^;(BFDEz2+rGxx_3m9K>tZZI)2oc%%Gw$TBkEHv>k+lpj(9z?bb#hQmx_< z8QbPZV#`Ef_WTqQu6{~_V!WfB*R~5Q<^bn62}0g zXZu2eq(vxbZbT?ZT`YpgT142IZiV`=(X&xV7Ba|~x^o%UmHr_jD!XZZ3HYjFnO3oj z=;LdH2)rJM)UDn`84eTl>a&P!pBQ9zB^^Pf5J9PgsER=y$)seIKo@VpDP<9!iH>On zg|@s6CDPB{BlvhcMJ&}FBpT13gTja&82xccZz6`HLg!3gL8Z|45knyDmL+ULFfmae zqS19MmZq*kW3mm_VFMMNd9BZ27^aZU5EH-%HbeBI9YzF~07UbFQ-}%YFCj9P6e9L? zR3p-u4-lz&gh7RhiCOo{A48m6K81R)(nM0w$3d+GlIX=Uh_pAdi1Swr6qWLMF==}U z`nCN8{hA9R_@hX^(sLmx9Oe}29vmI{EMYX@J%>nN5Q~@)mqk$8%Mm9#302@K8iX== zkr2<09Y+qNq=gqbY$>cf0fLk)f@og23X$|g6;b7(CL$wG2a$Gd3qi@(M@(oWlraD8 zfynsajR?C!5J~sLh;nxXL9e-n*fUsyb3hwGgZ7jY8$_kLnP}2V=)hpipbpfh9+wDr z@tWX6dXIS;d59Pbiw8p*Ns5??cb6~&BToA8iHPB}fyY?SmVSjzdp==NXm|=4F$5P~ z##07qi6GLsmm_^ro^V0bFT{vg@75vGXUz~*XvYvsO9?&cF9 zy(eE!ia;|EZiW&EFDAkd*!#Dz;-&zB-W?U}1!xgXaW^Ol6VCVl);9 zMUKJZ8-CI>$ zIdX4x=^fdwHI={5sOLo<&~St#U`qwR=N{Tz0o=xB6(eT94t%`|7<` zuJ<(t+_LX$J`Wnbuf;yS^1;T}DVFitZyCw)IuoT&;x~O}iC)+|-D7z{_Xj)q!j{>| zCl~bQNMZ@FK-el_>!KAY3HrPndJ_x;w~8eiidtAD8c8~*ByL;m-Qg$WD~VVR>`JX!zsyTo4)iW@7CkMTVDfV>lBOaD=wz&G2YOZ zV!3;(_(dyA3+s#4dz~*{w6XW^ySUfsr1&LU*F@_}b_cFsytMCNS>Gjl-`nDs9ReR& zUv@k)eDU)B@GpIrolbB_q|zdVZBm`jt+KXRPo3r!>4BWQpVwiFHbXkZ*fRo@oN>{ zd&R$f#pNpjT^stZ1U}p?aop&Yhv0dKPBO_^f*TScs_D{u6Vq! z=tj**dQnNk)L_xgTbzrFOIttuv_(^N#K3WS8;(4bUt?nKHM_L7u2IKXd3j$Xz_9N$2(UysXsB@^hdqd!dO?M z&)WXD##6h4O&a}<;eRv+oMUx0pSfoo*BtaJYSJ9?A>7LRPa(>6i8zn62AQ-_T8h&r zOq^3p#0zXEa^4q=g8umBy@emgG4+MJjEY)n24YH_jx2rJvB_M zWc!MNJg8lEX2Rkf6H2xZhxMxEL+F@<0RPZU$c)UhOFdDH10@!iD&2<5r32e37ty#@XkO_bG#4UyiA1rE@aT(^ra+I>M zs1Q7epI$yhz4Fzix-`J6mO9~(?*-6ovg_vxW*)E~evet9ngs?|V{Xn>=fU^AN%cD} zF;2XVN z7T=c-wV_fWq6N9|%Rv5dcugH>9ei2%R4We>h6LM>KhA~3u+i{sdzetjZ?kdN7!xEs z7grVPXa5^mcM06@#-B+xjNkrS=dvju&hB1&?v!667+3t*Wg1fizm^y`4=WYG!tyIZ zp}X=xHoBl#Ry_|4Sr&FFV|j4sh>*O5Z8#pX_8)oc531}pw*|IBZ;2G`QOy%!Jkgv|yI>cE9r0VB?(~OFt!0!ZEkX{5vRrR4a z&KAMaJEmJ=FXX{tWAUuzvrO1@^LW>`##-oHtp0b}Bo`V}L#+PRG(v-e3UA1QeDIdg zXw$vUga_(!mMO_akj}hAJ=(>D#eUz{uyGa{=eEw)uD|2%mnLU8qf9pP)mcXAZM#SlT;w^#Cj{>aqKdPDxd1ua(DMR@#h|XHrdFX^1KD1K1)tuR z&d=xYu0q%`j5~@uZ+_j-KQQ4c_t`0#-Au?@l&|*&H^3HmB~dYxLU{fpV@{N}5K?;; zCxuxB&`VF)|4JwiI;UNe#sm=DD-tULU%9|w2VhLzPt@Vld9UkU1=b;(C6h{1%{>btyijS6Al?1nq$Nd%>cK$=#K(;nG}=m zI9CPI@5Udzi$yc_g);Mp6WRn_L{(km(MMVurxc&T7ZcqpdH*`1tX+%DQ`{YEw zRl`=-Vn(Y?HW22?t8WCRtG%a1X%Xm|JNTp=sDzz0y!-ZSYKD}%1D=OUm|(6PfAwQ` z0i>L0@0txR1d+WTW8>B_;bE7#9`$t<98jna-+Q|e()i+wmZP4x3)q@_ALT)|-1YZ{ z&K2{H>GF|0xO$@Usm7M_`S+TgjiCHMYKJj*A*jYZIx=w?4{Py_viyOv%LF9O!4 z>u-;rD1wG+w}`c`v*6C7nGd>&xzL~Or@O1D5^e?;-R*x_2C8BE`^HY^!RyAP%A0yM z&{(cQAHsFvs&_IZ0Oz4MSAK&4?$e)DMn~juKG#*nbe5sqjKnQ2<{tIHH^vlf3vYz3 z^*)m$ltM87mLe|Cmj}`J?+@|pD}u9uC;d8B6~W-L!#2%U+Woq9Qco@1dGVq2*`|tl2V1+d2L9*`o&Hmq2LcZ**fDdZ(33^JcQY*? z*01+yu?(yQi=b~=ZV5%OqyOpN6DWTV5db&~p?~1KZiO8a$__s8G?}UbE3P~5B{wnw z-PQ2m*+zIQELlsg&j+odr1m$dH9!q5or#~!g%eAoYrf#SuQ^k9&a@n~bSs<-ZEiy0 zQ@-C99_GLjI#>Mi_*>u`dPMGyc{%jy-c)Ic$cEcNZ}$7*I35f<`PPGW-Ly{QgEh|U z5{;3nKG{6TJhx_L2J+1q+Ar6K>uQE`cVjHZE77#U4li7;X>bJt%GRjQo zf3%|gxP2|0>$vN*{8Jw2$J`iK!sj)|cOG9v(EpuWT$tZe0xtZTx)aOu{>1~Y8mJ2k zyOruw1e2c|7(+@maCweP>OKa>@LadLTUG$yF=KEEDFsjaX#PnYSHH=zLMr-OZl4c%q2oEA&dKV{x|;{aisv60Wz;~2 zu#U!--G$()5OQ036%#c3La(h+!u{`-q?zhc51JE;U$~f6!?W+!+s}98!Cw=tzrV=rVSrCx!lhM-X81Z`?zlMWDhm%#(3njG~hj`ED!WJp^1;JhU^ZudxcK-Z4fB0Gj$)hWJ_wnWdPxCscbS{L% z{0E8!AIhL0zS+=As2udE8$7jY8=?1`=r%r#r$#?VY7bTx0o|5sWsVGUKED#?DuJK( zim%UEFrjkG$W5hZd60FsGR;0aYkuF(V4NZL*}fIc@JVCxjKH;gn5mNNNWyXGA9TF& zqBIXq?fY}?l6EN^sEK=1xU>cgBvT)galcquZ7f=Z{_XWZr{$D>@xS$ti4wt2=LZu= z=YMRjK>s6O$Nl|JKJGV?_atL`1LWIBuI_5hgPkqWSJ|C~u=+v9t#(|8`*!LX2HYut zm~Wf;OLyS>a-2WA0{h=Cm7bC2V?xvpKKEcx=Dc6+zg7w_BM%A}NaVuRNK1R|xqP6z z7GKJ`PzsnPItXUwLbvvg+au^l0wV_3DQ8r{5>wm!k*C=ZmJ~IzOs)}#^fQ&W4o=5w z7wvJbftOcoV{8B90n?Tw@IAT~UNftoDkwM4uP06`Z0FeN;&uIBB1)MkgXjvkmZb_g z@H6ypTl4yD~m;ysQMDdzbC)F(28MwYQ~KrQu&5mQn(( zsON>=JScvstsb-SCTy*tTwc(C`>HbHt$POMEojGIwq@|Nz+ke^_mqhVkN= z(yB)&Z;rd+-QwO#U^Er171);#;gSxTXAhJ@@1tYXB+Lu1xQ%X_!F^#H=A|Nv>m`Rb z<@ONfL77zPzC3&%!MON#Z3AT873%3$&w&riqBE=~3*gk1>N7!~v*+XWGuc9T)_yYk zVObsUutlQ=7Gu6b``LDd%!J>vLucoXG2!fY+bgEe%jWZt!){gcejq`s9GK=OHh1B^ zzQfTRec@LTM9bMT6LCJ>GZ$4{m(K(H%g0<^#+O3!j^s;^cNal<8N@RTOQG~Qe(T;{ zJD3nv1gu2Kb}G9Hq*^Q=`bY{n$;guDYoIZFM0;m|Hz3o>#eUYB%-P z!{wy|oBVAH!1c3^uW@e)%yr+Osdc8Xr17W}OdbBsH$IVBTcz|K^^1X*Q%uYsWDwvSEWr%C|*_ z8zEzK-TL(l3&BxW{L3q`ItUx1S0A=7hxKX7A^yds5D~#i>TxUwrOQ|MAF3^w*Y|8+ zE%@v5^pE2FaMJJTk3=w`LU!(2xO5?K?qZ!2S)B{#78Tw&hH?3DLYUb?%>Ouc2Sl&m zn+H8oJeyAKF2}t01!MV|eE7C9G|#!I79!%q1~&^A!<1lMhP6h)e0*P>QwB@*B*ymL zWVf;K8C}^wkAGoF`9emP2NPrFUd!J}jJD`|3_) z9VDP5SmIa#t5dkP`d`ENX%PE^JDCZQjkljY3eJN8#V6h4*@bYJyUv=CT>>iukCw)M z$9dr1C~|kO3>L@*i7v)G_fZh%)9biyeG)E-kyh1%#2=s6aTt%vZK~EgSz}zfe8!{b z7ZXlDt0Qm3yjwi$TuV}QBfPQu_R$0LF+z{$cPl`Blg@6Q-39act6FRoWUl7){&OZ5 zbP}oEB+N%gtQT=_mCc2bIEqLUZxMWM6iWHLzXV?PuF>UFtby70tatKT3Si2j2ObF3 z!dJoC_op#VMGlj~RwQNp^NaB{^ZDAhfSZt>7eN{FD1ye%?nm3AOCj{|wMF|H^58~$ z*Cpxg7$=QaRi($?`WLrNi{|&y!>A&dS$`(&+qPwDg{?-^yb?6wzE{*mQ_Fzkgi4Z@~D;Vc%P=MWAKxQXGft z#AVV`#M3Yj8WJNfEs!sO6=p7-z79>WV3J?3s>5FCa=h|iON}%gO zRl8Dc6)d|}su_ywCU46IW=}&E6s~$`XWN+z6Nwxx%kQC{dXC@5hpXW6{=_T3c>b3C zdTKJ^MI|KG)_6FJGlBaQ_m3s(E8$7;rs8VM4-}u0>|~1YV&qw2z3ZX;fBw^{62g;D zo@}Ygg9~e4iXLdj`wR55_wbw~R_xBh+n5WpXI}rDz`Wwc+!QN1Jr~lg&in}XXMzfC zmDe83o4i9mp3ut8nz#44$3^fogR@=+&zY;wuQ^+&n+^RkpJb+27sF(kNZr?>0_aIE ze)r;1<-A|Ndx8nEUu=(5Db&KR^1fXD=~C$AofzLglLwFaW4J_k3t`xqhr04;4m{q< z^ZmPO1IE|Wl?50-%cOLvyHAurTMhMM6prsK-V1C=tp&%L1W!dqIXt{L)}4p*8#H;W z((Pmo&_;M~g{v`P%5j)kf2$EpMb+Q@G0lT@StE`jI9}G^W}T{pd=V89C8J*$p03Au zUZ|_$7Me70D}tzxXDH==MR~?+iddo1F*7Z+ZJjjIiX5>3fcKIR+qF+Zi zQXV%$)7#cFBMpr(<+g)%3{O|bRGcdLJuBhL{>_Vb?{9*%ONpA+_`IKADB%}U2~ew| z4|p4LKud}D+=WV@DRRhmJg zfj$=!6V!QHu3gKk`nSq%Rn3okvswe_-niy%SX=uqYJRSOCxHsghI56Wechz#`BXI& z-C*weHC+u{+bHhJ_iMqgVzvG_-VS{UEyREX#DE+jDJlb@K5~7;j1Zt^r=es zkB{r%2B&}I7M&*e#?==qfLR)G&3QSe4xZg^@ggs5g5A2A>~gts2z^zgz6HBsU9`xFw_N}QiO<*oC;JyXd!`TnQ=f2k2JPJv7b%1nE+ zh^GXF{;tZM#Ajul1p?+0Dz&`jKndAhE&Zkp`UUcZscp3|$#YD)s?L-_9xmgGqDcBz zaxs)Fa7R4ayDjt2r)n9M+h@gMK0?#s1st-*ebCk=CcsK32%dn5X1;#l9bxCU?r`WN5|n!j%xD*JbiS>80i(gX3lL)5Rl zR`)NDyH^b+T?2io)m5;6-T4CtUse6PM=GzK*Yn4lYT#9oZR@RT1jC!IpR1}G0lR0H z(o4^(jlgrMXc?SH=~5o}Sq*>hS#fg8HiMb0rP3-pr2DiKd9B?_JciF+sGZ%tgb zQ8)KDL;vZWRvB}R^QZ2(QC#4+R&Ho5#alk@uSRLrja+^d(oD6HkkYtWIq)j?)9o%sCnKy}viPb0Uv+@dDf zwIgD?a8u*m1j^m6awA)%%a{^;8Hnc2ep`n^b`96LOHnS|tTkd$wmqxcIY6Fj;tHkY zYt(VoQi{haxq5c^Dp$|jw%(~8TAm4TSo~?^+PK4Gq84~J`-QmtZor`9b3sC)k=vFm z+h|0mw2u*gT|7|VD6c}f?o!W{$|tXe)2~9YRjK8gBq#gsOr>P4Y2sp#@BQMATBC$H z6*1Q@DjWa%Z`c3R)fw5Z|uYxLO$@@qcxtl-yr5jxGkaX3m%K>JNUkZLAA`m8+G4h4wW@ghYnTtc?|i~zF`g>Zu~Yj2?M^5D{#it$a|-OBom{vqigt=;T?Z{vU<<|hw20Xb=Q9%f zqnyvm9PV&Fw=9C<5+xhI!^K2CJybSExv*9?c5U11kyw>BrO`O`r=FwdH;(0x#&7=q zZu9~yRDPXcDB<-wafd>|>m(D+_pg)9w<*6#v9j@cbJ5nL;LRmxzyFV)vVZAk#jLyM znH|4{$15kvY?oK=rTya+W}0`sa^BUjU&{H{V|2VP=3Md~FUV&Wju#eJkB=AOIb))@ z@~QX4joPuoiIT?e;}bVo3s-;0`LExzGiVhLw($B?J~lJXAQw?DR_P5NNthW4f5zrVCm&n+qMSefilzA`@bL&p}y>?QvH zK6HyW{8sJW(6w3ZzQ$1T)cu8{R|30vCmPir>drcRdDyKQtJc#;d{>_TDbQbX{I8GK z3;cWo|9!ol3X`Zms!-jkpZTxBdHkovQg&aYXA4&rj{+yYayoNPiFAlp1%1d#0{> zb3w;o&H4((urCL}VZrxS$CrEH)j<($_182QJlMm%QQQIS-n_K)v>wwt>9XZ(;utSH zuFpy-UljzQ_s1E(j; z10FXXHlQZV@+}<9c^Z3orG&S?S(SHm?wIVe{afpB`S!M@RnhrpGpY&t@ObWPi^j>Qm4uMgx+XX{gxgb$#Y06^B z?eJAz-tu&uHY|LbIrAlYHz;xRg6damOxX#0ECLbnwGTp517KBK@V2Dy?vTH@@bDd7 zN%-s0l#|jT1%(Xlm+VS0;1L&0S?Z++q}o-!0p5#1$o_+lNu&c942pdl6FmfJ>B_eH z_to$Ny_ia{h6qe3eET}9C=9FFaliPVZ-hzi@d=Sw%GUTvb1a@;=SNB-t z4_OzdeZ@6Ip+%9ShqA#ID!694B|_by?ZRK1(*9MDXE0VF>g@!Y;Bz71lq=|vm1@mTV91q8wX+&o2S3D5sFAj!h%viN?8&N#foWW)oU)(0@0z6rzQu@5#^!eo!2^{GPK?$(c7!2yXR$HUozM~+IO|gv z0h9hFHVc;ugVrq9wxgG|LHu=mRBe|IC`W|!EmqhInMTqdX4Y;162sUqSx*u&az@VF zWsAc@!;4+l{8z*J0>)UWp9mP0_KW{qbpot|osRVf9E2q@%x?Nn5SV+H~$C%7lH8_#+WBKMdkW+o#uiP z&PCr`<1x2Cmz{&PE9vm4hBYC)|OI5kwfJ*v94y!tPbJViX4}u$&3nc7Ul0 ze|DB0W}c9OYVj_nLh~j#FtRxA7)=sLQ9G>OdWyos8y9%B9V8$w`0ni&9qzD^T5x51 zz6Qv(cfasckb)LfBt@{Pjvv1TQ069s(RpF9&_MK>lz^a z-r)D5UK|)tQ+tPU_QSca1Afih#o%c6?CEW*guy4nto`SUgRoVz^ZKRGc|9OmXs=^sL^h|~XY;7F9<`OLhIlF6(bL6a{{39iz zV5tB^T2!1h(AI;)ihMzLXj@=zpUJAT$1NdDQYwKtv=Oo-&i@i8hlAMuqiweL?O;#7 z%%PLxM{qxu>$|b}fut!~E;1tun))I`0x@3Tv`w-2mWnO>Jyf$`68HP#3B}{Df)0Rq zvPE-$_Cc8Xxvu%wJ#)}Oy6^LxWsT7*AcgXUh+@d(O@kI%edhgyk{MLc;@&-)>{dr(pZa4 zK0MHMn8~~B+y;0N9h3glUKWfxgM+Is$ioNSwg-0($pblAe$|n+M8IZ8$j8bmk)sl#JaXNw42o7)LrEd0Pz|L12exd6Bq zQl_-=iZz7DoV(J~ApsZ1&iCftJ^*Q{;@>7tu7~_qo0QDz1K9Z6fL4vYeHM`moF4uXA+>f<|6L;q__Mx9#-_6*; zae)dgcO~yVcr6VQK85|dU3@^=jK|nXF`)aX>8!oy2JQiLilnJH1fDTCG!twI8_%14 zT$bVma@1wpetvcZI$JQlWO5CJ+#j16+^P@Ozn&z&Y{7L+{Nrptt|z=0=eev1C1E?; zX(S1F{WfkqF4Y(Mw;2jPF%5#-b{p%vO-&(|Vc!?KEdp+;zkcF%P#)53)!GNL0^#?@ z=bYYN2f=cdC*HS53OFwGnD(k!Kv$mv=f+?!$Xjdtz&d3eEcI>ZQ@rm7#~)Tac)r#d znu0eArKRA$y`1q#IaC^^Lh4tZdT9v@RL@6}7U+1v{N*s7fLixUUyTQeL zA&yytaQN|Nw=94EYN(68l_))a9LQPiR%%>h;_Nq4M@`mqv8)n}Z)pmp*I20WWi``rko8rQuVB^nYQcKN2~o zJcozV{rf>f@7c8*na4m==*jBuoA&~V_-C2XZjcQfpX!Qo!}g~{J^Q(VMAZl#M!#__ zZ|u*^oh7h&aC`33NmKa4w`nFfUI`RSMOVv)9tLf_Wg?wqTkw$~@u%`12I-Fjav^m` z;dJDRTc4!_p-e({$NObLu&iEz=a;@Mkccl_yL5mQJr}s-o)YYOeBtF?%=c_x#-zPH z0&wMveRmlp0LDwsZjrk{gNdR_m4&~A;hO9Vp^Xb1A&7hGk#n3dG|LAsrn%vec37-Oy<0Tl277LJozVU54c*_(8GA3EA8 zs*bb(Fd7g9dYL593HSa;A1qpDtQXV;z}#okC@~rh(gcqVP3@BcO|?$}O|2Zz^LN*} zEcp;S2vAktO>Cz)jl7{oPJ~&{<3JD)Xa)af0e5Jv_%e;E5)k zjd6lk9yu;KDL%koq1N(vE*$inEmITZ_5$_Z+HC@NwnF3*rPk5U{?K6NRD6Ek? zc16x$72K-}KBak$A4b>NryZ$yAd&8Z5ddD;bkAv=+>2(F4%%JRx>CclV>|uDgIc)vfKrj}P zYO($v2pw%#9Y1>>MZcgNB%i%(dHasTT;q)C`5Y^ROpu z`@A5|_^tyu+)A`*wGIP%fANx+KIU*r<kq(mfp6f1bzi9T;SPl1wsK&9FEj*L3O@Nij%b; z^g16I^>hn^M!`?qi|-wTrzUY3GumOWGbQs;%}6lhoa)n3ShN(J{Vn&!R4#^vk@vWb zbFIL9_}eGHTY(Voy~#7dCm5>sE%kkc`KYxrv!<>k2-@~jk6&CS0RwMluRT|nfCSDq z!^Mo%@U<&>_T5G=&>LVjEF9hn{e9aFipC8gE?eB>Sl=v1k{`WkIKQrgzr7Zt(V0ED+FSdZ!9|mMUy#ar}?FU@%pM& z$W{?x$+_wHzu5!jQGc#3?FoT}qt{6{HVFgi9mVA65(zMB(7ZCuk9O`UJNxvDC}^A1 zo%(8c2z<+nO&5Dh0Ze_cnv<1*TdiD9KJEO_)!wDKWUVU%E!D}LxqJlA*~DMM$Pkk} zX|v2)4Zg1wyT@{sfr!B{{nV4;_Q<85VDZiZqBhsow~G zM*|aQi+#R7mch|tKAmr_JW$(x>#q=>7`$-$TF5*v1@hvr>^>Fg!^Qo|lvM}!f}j2D zS-o%xm}1OM*Xo8rwZ^El{DWXHsxw{l@tG_fKDYmZ+lS3yFcO?4Q;T`eD<`G6k5q84 z7CYIf=naxbY+wCMUkpkjqU}x(sbCVeA>F(-4Aw-N*<7y{hWF=BmL_%?!<0*x-1BRW zFxZ!?^FApAwjGI=HQlxqj{I16v2Dl$YL&IP3T_2KryC0rEQP_O{?na~P*v#aJe{;7 zJODP{%og?Jvco@eEs^wVcZXZg-PM%3guwRvi*d`X7LfeaUAKaI43_>mtND3Q8s16N zs?|t~LUrUt8}`qwaF62D7|<*Y;M~I(CEy03UIuP&JY`^wbI{u?=_MeuCTIyK$hppTd6Jr z)4#O2-@K84j3<<&f>$Ci^G*6{z_cHjgW1czQcF(u|<0AgN_+da3708)aI)%7bp;PvZD4NelL5Y{~?bIy}8yT#x= zcdk3{k6>7Hy}8n3gA7=#k(ylPc?8%E&3T3zlE9I$>%?@oIJ~4ru3R4>10AF5UN7xA?UoVxJ%GK1j;|eJnEB> zga-k;Zpw@7hsoc=8+a%`^*Ar@@U=Z22;Qfa3LI3zVAzYd(v*ewO5~HDx0MUP;ETKc zXHI*;&%LQhn_Q&8@w(FF{R3`LmDAkMq}zbs8ykn%XaSfb^7R^Hu=_JBllfW}QrZ~; z6`bmjw)>aPu^;GnPfxJy*`grAZ|jj{c?7D~Uw!9X844@u(W?7*iongc|AW2v0IOo# z*0dK$&N+if&XSXaF~~V*0m(V%qymBg11Mrb1w|1|fFh!R0tzZg1Vltc1VmIoP(jRp zu|0e5v-_mJclYhnfA{5iUaDrzRco$Vt7?WZzB#6(Z01>BU=MR{(q)YVLPj^Zk)0SP zRU2-7R7V9%`?*SoH`&9YmBqvJ%T~~8m6zvvIq+xyg3cLsS!2%DMJ`CUol1-J;|Eeo z^r<>d4q(0dW7F*s6Bw#xRyC|3>cbS(j*ZB6Tw>`I^JyAAGkjVxt)^|hEYy`y`;_zc>iHO`b$qbD0VvS ziK0&j=9GxbX@m4cd$RI3uTLhgYb4?-0{8djINp)>hC(l+R82}Vh>|&cKkteNF>~vH zPIxgh5mH0bOfO;PPQniMOvRt7dL#wNJJ+&($d&@i z9Xv%>42gc$gALcZ9wk6wXXf}+2{+8CC!TWfBtCyFOU8W(FJR-jcKfVXJmgPX2i$s| z4gsEDO8o)|JEWY&@!LebDq!uh`M8xBNX+KW+#m~uBg$U5?`$BP^t|#`RV4*VA|91a zi?YJ)V>U5v8vfv}_hV3WeH`>?$$N-c2>{3R&8fX#GeCd%P1DrJBH@i1A14P;>RzDkeC7_lQi^7or_C@1%LLiW8`AOxx}niU-Mi*``&+ z#B(#bkzQ&yH#Aj;zLpsf0r1{BP_bSRG?iFx6?G+mLW#)2dyW)%{KiC5Lm~ynt<;T& z%Q)fg_v$Qvqg3elR5#aLx)Bz>AJCgw&j^)=eGJ{lgy8#2589R-d$8*q^jufT1s@W8 zXJ1eXgG~(6_>(XE5ZE-ld~0BFl7?M=B@vWPY#?b7 z8lrO*%#u&1%Sn_(*k36fvC8>YlSBfjVD>39oJ z3S>U3dW#jrHeb-))awJPUy}A*rWJxLnikih6$KOvVjYjW z{6RwNvy0mNMi7i!Rk)erQl1T~b@EhU}( zM%V%F4S&029}d|)+zurVl7WmNN0cNb0^7He+djJ=45`sG>h{bsP)4^=TZ3^8ymQeO zyl*A|cK7n^1(658}Wwfl`Q1Mi_R< zeJ_F^cHr?tLEf^35qL{3mxvb$L+A&aOEcq4aL#dXr?DR~e%@*JmTX)`zWwb{;z|C0V#2#=bzh!rRWsX8xy!u{JLRvA?c1r)FyFUx?M)K< zF2!3cj=PlZ2p8^B?o{mGrE(wGcdPc>Iqp__#+&-O7J=>brnzfWQ1zqZ)>Q3P;dQR)j)4J z=Ww_c=k=eefoZi5FZuqFYCu<0cvI6;Pq=a1A!W>-Xx;yXY9KpH!bnca3C1UmEvnyh zfkqh`94*yhu7$W1TsAF2kvoNikl+dx>S4vttFIf;PuxZIX01!H(q384lEorX1iUTz`-tzqF7ZDNO>n-Qk~}lHwG`^Kp91_ z(>unL_uK^>H*OL?RB8>CT&m??^HU*JcS1+vkpSd{Wn6Mk4+McZO#bYY0KuOo1db+b zf=5#<-81tBV3$aE6>i)n6EYtVDna=RSg35I1-BUy_`NN?(M-_Guh+>o= z@v*^ar_~vUS@>;T8}D-nN>C(-4q5K6sztC=qZ7M zpr|?Lm1IzMHW7NL!w)Tomg{7G@BlZ*@xd#PoZwdC<{yXW5`d02d2#HV4lLfTkUFtI zjOq<_F2C{+g~|s%oW3X|K_ZjtVoHP_%!F0F8;@rMd**9B#{4$$H$k`IhphU}zn=NrsnGAmLyy z+ks3@*yOs&(Knswwb0Ei^&eyfmf7+%r@agzMc}H%b3YMy>m1PVUKfGuOQQaGodYbm zKb8a@&Flg(>bh`%l5MH0#t(EhJWSK? zVuU>PUMJR^C}KL#Ca)=NLoj3E@HO7d2HZyT$pM40Fb5Uy7$w+0kN@1r8xA4o8H`Wb zhXQGC|FuneSJzS&#!> zGIBgPJIMt})-v1jvI5~a|Mk);;&jOlQb#XIN~`XpEJwx z0rl|_Uf0|9pnsHUkI$eQe4%I=-g{9H+>WP2ui~4%g8sm+lgNMd5^v9V$pCeEKP5IS1{xZ+L;x9PlJtDU*u?hcZ3#9 zdG%!}9Lif8b`4#R0IxG*(>ZSlcc{a@-fw%kA?0a(rb31dv@_pe7+^~wM(2vL*=DOj zl53#%_-RiN5Sbs+wd4dzzIF{K%Va29t~cMbn-eluyx&qfAP{s>bx57KjxjFLsTV51 zoc#RAHFX|X)sucJv(*J|mj@c}*p~n|Mnc=O519gK7hU%^8xBa>{P7dT-Ux7Ke2KzB z4un^x%KpM*X6TX1jb?mh2jT1Z(oK|z`#E8*=7~5nuz%TVwy%>C*19Pk2zbT`@^brY z%1V`BP&#e1oUSdb4KR9Kf0_%fB%oVV3OVR)YV_b3TnCF~-4*!;j&RI}6q+!?1E=?D z;G24WV322cqi#!hpMFs{QNR~Plab4PI)oRrYuM5~3f@7)Zrl76aN6H_{aT6>5k+fO zw6|LkRDw6?t-3}DGRt)q0wIJ|>3n6kCpRZN72L3-YRL*W!vdMqFGa)A`}B@!+UoE^ zqE6YdG!|O=)l|x?6XBsTDpT`>z(sG0ysu&AaO~0*+3sfm_tFF1RD3uRwq#0m4$k+sQgtnfCu=gE^SFDPC`*57v{7Ah`8p4m)nPct1K zy|vpBXwNbVKN`1zF0-*(Zfk#dwB07@Wd=VOX63*6I;jpN2cLTF4o?9|Z%dEwyJLW! zY-8o(MnggslK-Q*I258YyBBA<>|u%`Gr8tKH2erukY{MshV|Vf88h<$U`eHX{2_-0 z4ms9wEl7%h=l3bI+IqrDxV)v1LyrNx4ilYR{% zz*GbaoUu4yPus==EYHnf^4#@33OM#R8=* zTXb|ji-4>gx6Cs^f7qhIo~9L)`k}v70F(Ncej2! z4}CmL3B=1RP4j`>s}1uqQ|v_h7jf$eM;f?v(A00=&IS35osVvv@q=5-3W+1D+`&y- z@2$v~2#|OvBx{B_fW%NA_w*w*9M)NKU$(Y~yYF)Y6t+piQJOh!!h8D5yap<0wvLe6BQF46fw@MaYkXnWd1Cad11D5}vbOtF5dm47%k%Ts z`T+S6DsSa4mLRnl<$L5R56F1DZ={qBCahgMlh)p3hXErN*D$>>pnCP%eIi8x*ls)C zD4gbk8e*D`t=4)_G3BW`uNMbb3Qx#AB2+B{qj`Ii&L@EJ-L2Un?IJL}kVT{MEfOrX z-^_}o`@q{X2c)$pxM1Gp!<4h9AF%TFIQOkigX!fQpS-DbSiZZgv)Mfv7TyoCoL}z) z9SLrfOTmPdY-q(CN(h#{YT6BWD9gp(8aRMNMev@e zrbxmYC4KXWTq@98w340S;sJA$q!YgVo12KC1_>B9(B#p;rq{&d3dI51bYYt){w=C8COHf6%SCmt;HsHDWI8NL&+!30S1;Np>Ia&u>Qju zi{N>}n_7@JLn?9u|6RI#Jht@Uf&J!T`;?$I>&*Oxlyop+_%H!y6#io6qJbK6ig;f; z4X{?3O+|4_sI>W-#Ap%*uV>5)GRLpE^OJ30+ zQh2zA-H)&yle-?S(6WIo(`t|VZxZc^W}7El1uaxuJ9R;p8zhpF z3)rp+!VAqNsi1miU_ZBWI-@}zeps^WFP&qA<`wmWk}H^&*P1^~N`SlGd+RTKSPvu) zU%r}oZaA|ioIZTAO123{MQPU9J9*+ zLQdKEgewy2`xhGcHRE8F1DnP^!g~3OclUuXP-W@N`V-!^b0caSzcpq+kipFb;T=)X z#iLh$dt)#Jl(bpwcaeqAx?Rj~wy;3L9d8HPy8<9Tv9u<3H(_P&b}rZyEe1wOtbV56 zW-xvK;O4!4eo)sgubL(m1&pl53!8cfuWJT%lg1uG^*MAxSSbdLuXpYCHhYsLoqcgTl7G7$iO5BZF2f1*8E@v4NVU9W++4q=2L%wN>P}CYCJWwO={I=KoS68-S#fU48fxm} z1d5ov56t2G@O2|&LbhBu*l<$b?pQ_CYXWCHb*xN5cx@Qfiz7)e>Rqbrwk-){Y0kG5 zXK})E^K-WL6A^%d-KptbPH-rAE;%hZ8oqkkO*U@hgtq#=&^ks!LL|vY!2V6(&Pm*&)f3(I>SL}ORnnW13qB9 zE%`AKMicVHX=zvACR7K%s6#0s(ei547DA=TwokfrF?AK8#@7{dE+ED`jQiJGZ;L0? z2xyhV#!2+Ab??84Xa39YNe>gx6viY8>-?d?&|6IVQ^Cf$bPKnH6WrACt1eCmfDt)W zo_!`6Q1W`v=BylPG=>UFZtf-tP7qp5 zYL)rq2%|nHPF=Ya1?T5^8A;oyAb4a0<4{5Z9Df!2O0ShrJvVQA@>wwsmgthUCEw5_ z#(x~qAJ?2Oa(Tv9yGCmySS@>56K%M`PmpYoi~C> zWrJ@H14RF8rTq(94HWY1PvdNeelUyqXX+31F!SVymVq-5XjaMY^NhiU{tD_Wex*cJM)?nr`(Z4O{0Y}!6NT52l{~CD;4?Nb$cCEXf z08AnMsbTXXzo`N?%a8E3d0T?>lgKM6w~UB#2^D@CC9#&+D9dEHF!-#f@&|pv^3!4G z5AiW@e{SQp7NIpzZ0D8tk%^e~a-gPr-Dv}G^gJ)MwU7}kn2huD^^@UH!^qm~I3`GA zQruqXN(&q7=&U|GV}zYfM(gFI=|D8;%3JCfF?i_uInKT*5bE{2?*?@dUgQ<^9UTSu z&3twiw6ucniao)Hn26^i=E`27^>i?{b#(Q&$HebiFS!9Dx!_kdK!v*eAiT=hP5yu|}FsEc)y0&vB<|I2;&s~Vu9bwiSgwiWPk zJFl_U7XD2QAm^OcF;7LPy^JO-*Jd$-^uFul7a9PLaTdh9s3p9EB8YhHFO*?za!WPWep*KpKjyRB2=Rhbn+`Sl{}5AcFXQSN?ui0lYW4%GGq*15CEM1j~^b z{-y%RceSJcqRk7phuA*M*%RviU)ojb-&6pj6(6G%Qe%Eo0eIbFbs~BAK%uC7zRf$L zpZFIQz|%+e!TVZRKv!N$s7#3$#LgVdTK>!dVQ(+2mX8&sagrP#M?v zQT?aY06*J9s(+~h=qmxP*Br6`QU&m2``q@Xr#xUYK1LrM$MG*!03*WN3o7iqfX0Yu z2dI4hx2phZXN*l3Biw#d0mxsfX*egg2DXn}>ZCnFsImW|0(kgJn*CWPCj{zGg&2L= z@E=wIaEN)UzHeZFjjQzC_FBmPrUH2S$|>7JkMCcq04`Zyn4|C${?jS|$>ujF8+kaO z)^f`4>a4Ho7;0KX2(ehGX3%j3G@P5axUMArWkDuDl0 zVekEWw5Cs$^=Qx3PV}sszb$%S=fi;ieck2Bvio{pKTO=$CsB&^0tIJ4FVcvg>NQ|c zo9s1YF&2AZ#Niz9z?diS)B_WN#K{My!ntC7W@1GFedbc9PxV>IU775&RBRLLw^Dr= z&~L5z;#9wl&f;XhEl`RN*covK4%nNCpB`|qQhPDrXlE?`(8gp_jwzsJVH+HHt`58Kep8)?CgbhkMN64RO=%yb(^e@ta}m1A9d|j z9e;GwrzQTF7FrE~*f!o|fw+6pR|Vp`wLS_YJTTV~Onm5`>=il`cyQ;xh<)$-OYr;u zzsJ5mV)<*pfV|N1BT*fpXO3^83#&M}$0Dq<{CHm2*|Qfr!p>d1K^K1hQjbOWg}Twa z@Qc^yI>M`Ne5Z@3Ze_BJsA(748F8sYp)=xVtbhiKb@EppdZf$OJq~M-zxp)oi~JvB z1)Q{)-+! z?%iEVB0|7D$+DxDI%F>swfovz0++i~`hP~je}DbW)GvAfxl8x;R|(ek8nS!UJ}?zM zR@-N(^0c;}OP?`uz`@o!@uABGUDZMNU-SUKs{ocpSN%Z+p!`z>aA^})`zDF=U8^Lj z$H)m4z~9zT|DfLbyD9);W#HG5f3-63hiLxS_S0(jEiKTop04uFwOBlQ`0>3FRv&yK z7kOgGq!=#58PGg(~6(6w;`YOOo1}H5Pp?9YR<2yg~wwK8Z}?j#;e^j#kmSr zsK1`$lj|NM)SfFOW6TxC4+r)f-@itV2#R>RyqC)syR78nTd(+_P%h&)`@Igx+A-XE zY1jxi>m{YJxkcf@^!RE&Dp5SgMQQiE*aYK`oRF8$*Tj%M@$Vm}4RMP`YwhYKZ8Wve z3RW4{!)E8gXy3#DTv8GF@KB2aUrJgoTsrgy+%xAqpHvy+vyjc&k$FnUyyNK3n(Z>U z)w6uZrw~UR)M()}b27z8g9o)^=X5b>4Xu&OL>zM8=c;-u?t~$7RW048Wbn!N<6fM} z;<%^i_*HG$L4AMG9cJ?y;kZq$M=PeAgfou}kKOu^fG13AeysTxg{g-ezeH-AppGdY z!)-HdWb>&WIX~lzLK14`x3UBAR0jj~!U0=+NO|f9%fTcZ(cbZ$nMDb`ruufBsW8H+ z)v?CB`#4djvh9>jgAH0=3Dw;w;fcOo1~*r27r{?@^WEhX=BVfRgyZ3(2o!fuqT631 ziLYO~Cr+$&K=V9GO;Vi)f{(%D-FJhrcJN?|wtFBReB{4c*i#mT_9%Zk5*vneX$n;z z=;iQZ+{r`huQTIrnb4d1*BsC?XI|HFKbp)d;mGT(&HFbcVTo8Iud$LYS}~aAAL#JI8_QiDW^078+FP!Cgqa1u z-?@5WZHzkVk;ISd?6ty_;N#s5F;4g@+(wgAKpxw2_FZwHGsUHcWdaHlGT7YxY_HTq z7UT;YZWqaC#V2lK2ZgrE5Z}-1GwG6=DAvg?&38)-d+r}NZyaibYl}6D^+Hr}EUQTO zwzew@^1eUGzhf)XypaWj+-!c0t#0ixG zH}lm;hoVY~4a2g4A=;6~N(+VcP`q8pwr1WO6%qukll( z><-qY7p^Go+4WL-L;=%jFYZ5mLJ`UK^F6(0&xhUX9;Mam8ej`c!^cC^_Q*HmBRt*6 ziwEEcb1Q8Su2psUT2L*B?^Wk{{ikJ+{?f>($T=mXG8`WPnGlromoEFx7KEp795ZtY z2*7)~={;Eti!eM({y3vG6d7maWn+sr;K>a)^lqIuKnI(6s469}C{KE8jw8gV^?3nqk@M^2o61ng&^5m96d#N!CE@SGjp2r^g$OirqD@IGAA*Ic;q@S2%77 z{Qg19MFi_FG`}3AG(^#o_gum^5F_qhPwz7oMWxLSwIL^#;jx_qC4HJAE+|b3QtSe( z*3S&#kP1VawPCFS>9J_*JFwh3E{%%qO{QOEmGGpw(3ZIehYdVCjo zkDi#%RT;pZ6NV3`mX@w`@#3{t`WsA*G|_h~GeF>@D}JJp%x}MEgxl#0`-_~sP-0Hz zBQ=9Nb{O9hIR=g>XBkAL$m@gl``&iDM6JUalaJRom8`?_HGyGzKVmV}tL|33svk19 zdeREM=fs-)cw;RYU;M(R@v#lxcKt!YB?m#Q7xEX3Q;pd9aXFeIcXQju^xfkD-lccd$yU1O|S`CHXgM(Uv z1SUHciBEb5qbS8-*J;J|*bsdx`bml_9vFSpGBqWKWa38-u}LT*Bg4dIp|je!-CD1& zEF=WKGzm;aipt?VW}YsOPX@SYZT&g#k2y%*b^DG@u@d?jpQp>S@bNz{o+>z>}@htZI}TAtegZ>@5lC~H}RTKJ`>lhOzcKiM_25>Y>%#Z-z$ zB(Fso-^{W^h1K|JTMc=lfF|zmZLJQ?c&8_N^k&854u3SFoV2>1W{)J9b>B1(#Nw%A zz4dcG)l5V^%Pqm5*dXtRS_f$=-bxhW z+ETOf2^LG#-n*lp(~cWApVU4@MQ(uio=1BG#<-!%Q<@A-PFuXDdF5j{gFT9PF_86j zc;oU=$@(L8fG0tJ$H@_IG|Arkf-FWEFXvYXTanqKb7)U$f)fS0US3%CZm~nft`XjW z3_To?PFj2rB7tQiLmEM&TkwegjLo>2Gghx6y{)S8L1x-LYmzQmV|>W4kaVmcO1>%C zv4fHuwV0aAy406JXJI6x;cYakmM_|9+65qM)Dn~Ez75zZvp@KPBGEpI=!$LeGQ!SF zgY^ai+NiVKsP05-ilH~$DCE8U(Y!%ba@&F-UQ=ZZL$x(H#I^Q*IrVcm^mfgS!(ql4 z@hpL4YvqR)Wpd}t*v)WtY5fPY9zPtfOi%wfEr)%(Lo+6I9Wn9;Mm%XXMpL8j-D6UI zsG#~|{IH%aMu{b8iZdHvMR?)Iv8EmP$yJK8c8LqwG@O{oxI<8T>iSDQE=?33R1Xuf z1N7}bMx%e!4mngC5~l(!(fiATlAY!nc*cgQ|Ms&$d}x$7exY1#v z_~w04L1YMey$t^smqn?A&KKo+oq#I_))q!`_5TQ++!8RpHHKKeh!Om4j-1F zI)=1rGC3MW%xCEinua64p}=)GzXo4RTyTGu1sL$*lFiX$iFi?>g?-KIS8&%%$a!_R z3VQCA)nV_KLPz^UriR%JIHnWDl;jnRVv7RL;fy`*Ts=Kkwd8?ZF+$sN)$LFP$6udi za6rXFb-H(gweeM-*ik+@6FkbX=52z7EQ;TJ>O(iV7KP4!)y~o4#xz#XSF1XGFx8!M zYv$KD++0%C{esE^(}yC(>e;Q)`i*?uaorf)erC&^<|-aM#zx*8VHJX()+KuHk~6{a zS8u-#@}#1EVPo>(LNsPMnvGe<#o_3>&IRnr!d)VtovTQWShQ?KMxB$3{ujIaeKaId zc+0RUD~~C%(J4uo%7@@f(`334K3>djPL@8HX^*`3A0=ow+2WY8R!h@l5T=K-E*{l% z#i@wEe|7E7QW5B*32}Yi3*wL z70(K$;qIkd_t!n!hs*42TyasSkybd=hbQu!20^2y6vretB< zks^QB6cW-rOgMFeDhSK@8m?H)cwzmQ43~B8M{A!bxR`^75LuZdgFjkB6KXZ8IgA_5ZuX{>6Vq<@Ty@8Dj-lB__ zCUpQFIAS#*{?rjEmEzp5*de}Nd@R+l7=?N#o=244{|1lSckftLB#qTy%Ct;2hU3F@ z{_f`)Nmy&@6x-N4 zW}%|^-ep^q?r<%RR^EswyK?oviDshU;ffTiVkhh(g7$C`&&%-Ryt0tO8Z>5m6RfMV z6}esfzeUn$p<3p&m}N5!emK5PQtV3+r;8Uasmo?!&r`m{sbvq$cbcj! z+?|E%)MmR@U$nqSb6325_6uX>UQy4|`y#m2a#wd|ZWzi)KQ*!E4#P)M540%ugkUn= zMSFuUQdq>~#&9H%A0^B#+M9gvNA9cU+2@~8VpuExIi0u(IO~7em&Zl{Pk!oq{H{F{ zQ=e|L&n?$NyY=qoGhtg%&bjE;&a3vw6~#EDGDo!Mox?^8vkd4{k^K4aPF)P$v&6Ta z$qKow%7U6km%(lMri8!4X{6bcx9)yD7h?Af)x&+jO%Q#S~iRYBJ=Up*Atb3kWzow+SyO`$kLPVJt5(YOs!rOdul0gUReETNVYvD zsJycplHQF@&)&x09Ld3erg)LSkTg6kPw{>j!!dN|eM0m|3`X4B%N#4Mc*mz)u&*Ln`5dZLU{MvLKI zO$?(I-m`Oq3)=D}j+t0>^6X@r9!Ap~wT9aQ1P##VcBKtgJD7H5tH!AJ~3GHnM(z zGlB1&hc=s{TAJ$ammJDCnf2*MVHOkm?Cb9$QD>l~Uu^fn15?~<_qsHS=#P5^)AI4l z#^6a3zyI`0M^D)Rn$8v;k|>8`@UX@!wMggN^j8` zR2)YeI8uPOBBIaiF>*%L8x#s(90RaNW8*uz1_i9df{MK9t;j@U6}_Od8eiSNEE1V# zj2O?rxba{Jg3CL>jtWI|qfWG))f~qRxt>I9 z{RC+n0^2JY63`=Q;B<3bDweL!J@0)u00*z-@}APt!n8|PdxlmK{m0y_>*4}r7$fg2 zx?L3TW`*|#mBJL{YckVfznY3$-Rj-=WTVmZW!deTt#PQ^d3?u&;0A0o$~L`WorMiS zz8;z-{x~+OLPl-wgQc;9F*kh*QSm`|oVDP}I8ik~n`kfA2a-)jyp6*~i9;n997~b* zrI>;1`7}KFfZjX#x;;v;Zf!rk)d?3E=x%WC%*4gmzK414xyZ`1s_S9k7R)%=Pq8jK z0rjG6sqVaHL;F`Xm;AK-Q26j+ZKJ>_)YptUfi=59m7LC17$X$qxI>$ zYpYU_B5J2%VqPS^$R3yYanlTiW}5F7C%YhZHh0D4%ZRKs0^Db%t#Rgq$C0OBh0#$+ zXd7~A;HLnM%XI0%cxi6O?S-A*XfTmNTWHIODV!;{`1HKcQGt3vyTk@JT4}nRf1iXG zo=(5-KI4ZumtJ4exZ;MTKPLFpV`$L$a%;PB%bY&HG@tO+yBm;Q{Mm=7)$$lOn?@m` zqk_|=FVD5byJ3pi;M%JsP0TEKmi@pP@civr=xs4V)~;K8x1WB4j}I2d9_IVwz$5Pa zG#_(u%fO2i`)B^>+L|@;uIU8Pzxlp!P%Z$)Ie0s{`@`@x&NX;GOT-|RyEiA&J+X>y z`w_J`LmYj!yX?H$2GsxJx<=?W;HviQ7p9Bc=((jfe*Y_Tj62SDJo6YkZg*Ggqa|a- z2gCBgsXmI>V3Xh}>f(cE8SY5(GVaF#FW1_`oav|v`(5_GA;Y(#5+0)!zSvORQ1>*9 z9W&1tpS*O!2iu~(U&?NBL}~r%?T+&vn5JxNA1ok+F+=x4+am&SC~BxlNAoE#3LHPM z_DDSLDln4kHBG{UyESHSvpZuCd0gsA7BysWtP<+DQGosP-)3?X_o2x62?n-vCb-xE z0__$&7;9#-TvF!;%G2Wn{FuuR}t>(a+5*>LwNI}Uki!j-L>QkZ3!{xtGd*Ebs`WwqO2OY z+w3v^M8TrNP8~dVzPrfmbT*zM^OB^s62tYAIjfs*@55rw`9vN`PCO7Iy_51b8`gVd zH|hECAX${wEOiM3Chv$By752)7fU_W1>VS_=ku32U;7!+u$r|e+3^QlxG|gu!a6$^L|WhfKiCN#aEacD?1dStiD_gahifHN^tlQ51Nr zN%YfByKK+6JI}dt{Cx7ON!ZtN<@p2R{y*7rI;%9x8ncaN=H-^E&_@3po33vG%AKm7 zIqpo{r)~!)m{-YQhG=4(QOI>15q^0s*Fq1gj2~T2Vw1r!ho;yc%bIvAxpa3}z9U{P z9ok#W>xPf(nKJ5l9B`kvq}Mj&M3uI1?d9<~C{N4W-R7W)Hr?dP4DH4^ez-kjQOY0V z&m4GBzK&?;bhSqhC3x+)XQwT$T9j|1LxBMcF@HO;g)oc zxZ_H%VEE#WC2dPawD)2e;W({?d^apYcL|%}Q8(8Cp#(CFq>ypAA8LXQEDYI~Bpq>5 zGqeAM>?X`UyxDr}u`5y?nwfB3Cy77qz8GElnvW?l#L@-9oY-1aBDC|eF{9`00a}?0*+8Thvg}2;76k=Ac|JT3F zLVI%jl-^-u#vO$6M}4z47rn-@!u6uNKVjzPoN7tB=A94pUH ziCOs%$Q6FW$JQ8u@}6H{{(UIM-Er>cBkb9vyb@+MALY*Q&4sS2gm{pv#!e?c^?~lla<8lRi+Viq^MNNP7gaQ7GnMKQCclOm9`2>qtRfX$!eDuMKEluP{g1V~1sneDy9u#<*41e4@`i z4)?bd1-&%WL(8EulZoObsCDYwayMWj)>0~xcpgP#PZvjc{0>V@iqYkMC@oFcSK;8> zD0_^Npzn6vk%-36c2($bWT3qb=LYFj%|r~3*uJ&3^vFIWx_vZ>9@SM`;^d+{aVp8A zQ)!$FpWNO%IW9r82M2g}rM>6HS+nPB>Gc-if#|C-4dx&$RGNRzul^huolopQuN z0~NZskAQZ$;Vj>W)lv4E&}t7`Dpd5!cfLb43nWtKwbk1RyK-0kq2uz&c=h;cmyfKG zI8VydE-Pih-myz;MQ+AqL~Tv?r7J|3)#Yx=0R9W+ z&!t09&^DeIL_g?_Z~k()BDR#V$QC6lqon7t3dKoJ)H&-c!Q<$Pu|b+)nTP$c_{QRb zWGWL1>^dre)Cpd+o%zq*lEfVi7B*?@+M?xaB%VNb>5rY zNKFeugV zjT=w3+Rq&jwnWX`^{@GFH$bvdQ zo^3V;F5Jj*aZ5)f1zLG9XWpb(0wyIDPvJu|kXYaDXP%=*{H|L?9}3H&(GpL9$xb#T zR-$fZh$R| zqiHi&UXG^Ew@E(B`0z0J*+$>x7iXSr`nve?*=7=z)L143SIAfvjYP#*HiP=~*cKKO zspmNyE+Nlzd4ejQZxu+Ie!fk3tJL^*u>&FFJEY1h#`EOrrvK9`7kDPUdU4QatMt^N zfCHgZheOIMr;bF_y_zbHX_tO^G+{9G<*}5h%9qD8mR`Lq$)u8*F3sTzn?A8!;_URv zUFxr=%L+_nUY*+S687r!p`f#`%8w?!es!jFtIX?)|H(xQs&8|J&(z$NI5%^tOa0Bv zAbjrHbosg8H3(IW@B7wQHGLc}uDbE% z-IJ=DKgb2Dn^&=WR<}@#9<6SrR~f0k#cU{0bDQ1Kv!;#P|7cA+fBZz1*|z{mA9tl?RRQ_%^Ecnaeh*_FJ#}raEA6sjK$TdHqJULHF<`wMSm* z-_(YDcj~G?4lLfNJ{)?kN&QLW?`nj7&nbRaBT)Fp1^WJ!BeZ6caSdjYN!;zBkZ2rR z^&hFa{;nW_g_FaIlbn-+jYOgm_}TB7*C(n-E>6BbRFJ=B{aQiJ>#tOhe|wZTLNB#) z8RLv(WaEq^iBpq*bs^*~>OU{z1{qg7nZ%w63W?Ei3gROE_Kp6*+yC8*7>nTSP_yFf z`WaiHTAf6qB_jbXHHn6ihQva^LBK;GKp;#YLLf#UK_EpSLm)?>K%hvVM4(KdLZC{Z zMxaihL7+*XMW9WvjzEV%mq3p|p8#lSNSTZ@6eMIMil!hL{M;D++!+1b82{Xu{M?xS z+?f5`nE%{Z{M=an+*tkGSktmlkZgV_frTiANZ2wG7e+y{qh%ohQ94mFsd?pqJ)`hn zCmnuC5;;FVo8upIo&K0~{$tYRk4e`*Cf)v+bpK=0MHJg0Yns_%Q;pyMhlvCP67d zGr`zOw*NoR4*2KUf&V<4n65&Uvw{ynCP67dGr`zO*}?xjJLI2dhyL^Iuz#K%{?D@` z{&{xfKhKW(=h@N!JUfQ?Nmrg{VS<(C6bS4Hdgdm0>g&>n)J3#@#A%aqZ3W92adV*$xy9B)i zLj+?4(**Mb%PYla|9gwy^6xD^=igg=?!UMAt^eNQxBYvI-~R6{e#gJJ_`H8_@jL%s z@luLA;g^A$=FYz#+4I-TU&nJK_-zzNobvlo;&uO7D;i5Sjc9>gHmzi7K{lOib#FHP z+Gdt53@W{LhK%YXnTAZ-GtGv~dS6LKECvi{#A+gtWyEG7*J8wOqq#uAVQ;2H$?5DC zOUdOPQbWn@m9jv|vms|qJ5RuV-*(=RQzy3ag;ms0@kiD#Pzl7|RiYM59EznDN}aBu zUcGU7fm%3=Mww9ed$PTGXG@`pT-_eNeHB+V)FLH~cl{g%7iB|Gh$~#)A6Wf*P zq)#7;qm!wuxI`y=q5d76T+Ll&dig6uasS~pLH}S+ds$kzNBd26|DJVko7wYq-uF7@ z>wX+7%-8!e-=DAlgTzq)t5}^1kb2Gj0t0%bfdWHj;%UK9Sznvkg^L~5N zHAVX!ER`PaceF*$A}2?C=OSlU-=ZRy^|23&TsLHK9&q#D>wLgH_(ahGkMNp@2i8Zo za31uGf8c!3EBSfR!GEzPXraB!;lP8x&F(45;yMyiw%6rI=$R7-j)a}789WkR)xuRA z@xL&}r|;Vq?vjlED<<~vRh}wz@Tfd}(Cd>YUMk3{&JtkxeHgvkDR;M@NW2A)lG8#^VNU72&F|moWB#!8XIIQE zCVht3+ibR0v29!%cEz^yMR&#C5!%cUclY=3o-$Qkah(b`8REN?@Bf_66W^o#wkw`k z=JTscFVgF({@uu)f7hP&yA|#DMati;Xyh&$f3cx$=BhK37$~Ncn11n_@#zm0)IX@U z{*Lj9oOhQRiH9oQKO`{Hmy?OaNheOuLmrv-b7y4*(!cBxVMTx2Q~tU4i&^jIE@2q^ zbw`85HO|N@z?&hl-T$vXd}P}12Ea^zi5qqjG(YWTne-}UKkL>~wKm&dYux|gDCuuM z`hWdesS^M7fmJ2`>t}6A{BJSE{@2?{CH~7F2CnO$DT#ZRxNo_ZPf>D^h?|awERN?g zInt@nDXS~1Dk{<`X=!L`YSO9EIXjui6I&G}I^|#fE72*b(-8@EWhFHgIweKA0N(^( zg`ha!$Uq{c{8xEubWy~?_&>Z}jm|&9H$I+DSxxnqcl-YewYue`fhf$KGmH;_SN6Ws zLQ)WQ#*335XiPUH7=FSXiA+jLAR;ut_!7RS58-z;bs#xNsFjMxWA-Fa!u3D=ov5K z(qKXFx*#(~lUgL*BFYE^j8X|kB7-~0s_l6uGKiU`Ewa_#iLHh($QIt?&Akyd^>|

M?j@e=oejf%OGU z8#Dj8yyK>E(Cr*T_QP`vJ0WBT4cJv2+<4{nm$8|_24qb5Xu>AT9c@~6FkY3gu*2>L z_+qIdHWkEu(3j5RSu9z4m>5<`#E zjWAivzmEG08E2qfk@suMoyCh<$Wy^xzUhKX2|%Nr zT*Red2B*d~M#C6lz4c|i{vOC8rw1Wc=L%UlC^`nRmmQZ*$5+wM3;jBE4w$mMX~?2O zu`=K;Z!E7pgvszhVzXWFTQvWlJ@(}m`w?mC$=;puhdt?E$sT7x!=9P6d;%-$hz!4w z|5rZbQQ%r25fu6@4gz_L`25}S`9X7^lX#3*u9xid(b6`v{H%5hd5p5jykqvMQhS?D t*Wb3Y%~hDDSJU-+m0di|*5Bu=XHBe literal 0 HcmV?d00001 diff --git a/tests/testdata/feature-align/corrected_1.parquet b/tests/testdata/feature-align/corrected_1.parquet new file mode 100644 index 0000000000000000000000000000000000000000..ce25e528c9c85419b747dda7738395cb08d0f689 GIT binary patch literal 46320 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 It;j+D1$}}iGynhq literal 0 HcmV?d00001 diff --git a/tests/testdata/feature-align/corrected_2.parquet b/tests/testdata/feature-align/corrected_2.parquet new file mode 100644 index 0000000000000000000000000000000000000000..dbef881e59578d6fa6dcb5d7e2926839b41fd66a GIT binary patch literal 46320 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 L1JC4Ik%RsR`64Hr literal 0 HcmV?d00001 diff --git a/tests/testdata/feature-align/int_cross_table.parquet b/tests/testdata/feature-align/int_cross_table.parquet new file mode 100644 index 0000000000000000000000000000000000000000..47a846ff650e8b24e25e2f9944d77faafb5ccce6 GIT binary patch literal 54104 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 KNTkKUrvDq{$*0Kx literal 0 HcmV?d00001 diff --git a/tests/testdata/feature-align/rt_cross_table.parquet b/tests/testdata/feature-align/rt_cross_table.parquet new file mode 100644 index 0000000000000000000000000000000000000000..9394e9d5fc06e97fc40a7d8cbfda5c00825e9755 GIT binary patch literal 52974 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%0D{2?q8zEa2GS&KGzQ4i`?1dsVI5fe5;%RE|J$ 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 Zjyvt8$eOq&`9lGO;D^3@5ZZzNoIg|=x)}ff literal 0 HcmV?d00001 diff --git a/tests/testthat/test-feature-align.R b/tests/testthat/test-feature-align.R new file mode 100644 index 00000000..a0e2c797 --- /dev/null +++ b/tests/testthat/test-feature-align.R @@ -0,0 +1,41 @@ +test_that("feature align test", { + ms_files <- c('../testdata/mbr_test0.mzml', + '../testdata/mbr_test1.mzml', + '../testdata/mbr_test2.mzml') + files_list <- sort_samples_by_acquisition_number(ms_files) + sample_names <- get_sample_name(files_list) + + corrected_files <- c('../testdata/feature-align/corrected_0.parquet', + '../testdata/feature-align/corrected_1.parquet', + '../testdata/feature-align/corrected_2.parquet') + + files_list <- sort_samples_by_acquisition_number(corrected_files) + corrected_features <- lapply(files_list, arrow::read_parquet) + corrected_features <- lapply(corrected_features, as.matrix) + + aligned_actual <- align_features( + sample_names = sample_names, + features = corrected_features, + min.exp = 2, + mz.tol = NA, + chr.tol = NA, + find.tol.max.d = 10 * 1e-05, + max.align.mz.diff = 0.01, + do.plot = FALSE + ) + + rt_cross_table <- arrow::read_parquet('../testdata/feature-align/rt_cross_table.parquet') + int_cross_table <- arrow::read_parquet('../testdata/feature-align/int_cross_table.parquet') + tolerances_table <- arrow::read_parquet('../testdata/feature-align/tolerances.parquet') + + row.names(rt_cross_table) <- as.character(row.names(rt_cross_table)) + row.names(int_cross_table) <- as.character(row.names(int_cross_table)) + + aligned_expected <- list() + aligned_expected$mz_tolerance <- tolerances_table$mz_tolerance + aligned_expected$rt_tolerance <- tolerances_table$rt_tolerance + aligned_expected$rt_crosstab <- rt_cross_table + aligned_expected$int_crosstab <- int_cross_table + + expect_equal(aligned_actual,aligned_expected) +}) \ No newline at end of file