ELF>@h@8@00    <LL>P><LLPtd%%%$$QtdRtd<LLppQ3#$ '2. "1&- %*/0+! ,() #" !Xł #$%&()*+,-./12a ^}H T{\FV;G;!")uνd6fqC~" tmN ^N[?<_b.n2 L"2 Pg ,  B  @ # p  ~Ȋ ! "__gmon_start___fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizemallocPyEval_SaveThreadPyEval_RestoreThread__stack_chk_failPyObject_GetAttrStringPyCallable_CheckPyObject_Call_Py_DeallocPyImport_ImportModulePyExc_RuntimeErrorPyErr_SetStringPyErr_FormatPyDict_SizePyType_IsSubtype_Py_NoneStructPyExc_TypeErrorPyErr_OccurredPyExc_ValueErrorpystr_aPyDict_GetItempystr_windowpystr_min_countpystr_axispystr_ddofmm_new_nanmm_update_init_nanmm_update_nanmm_resetmm_freePyExc_MemoryErrorsqrtmm_newmm_update_initmm_updatesqrtfPyInit_movePyModule_Create2PyCapsule_TypePyCapsule_GetPointerPyUnicode_InternFromStringPyErr_PrintPyExc_ImportErrorPyExc_AttributeErrorlibc.so.6GLIBC_2.4GLIBC_2.2.5$ORIGIN/../../..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXii ui L L PP!@@-!H02X`#!h1x~!1w!p1`q!ȉ01؉l 0`h 0b  (p08[@ H00X`W` h/x PN)NNNNN,NN/N.NN&NNN N O O O0O O(O10O8O@OHOPO-XO`OhOpO#xOO2OO+OOO*OOO'OOOOO O!O"H'H5b.%d.@%/fHH.HtHH=RjHKjH9tH?.HtH=0jH5)jH)HHHHHHtHV/Ht=iu(UH=@/Ht H=fHcLHHDŽԨHԨLԨHԨL9t#I4MDI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$\-H|$@HL$L\$(I|$$HcD$PHD$Ht$Ll$hHD$HHĨx|$THcHH|$(HD$X@A K.zfZȋ|$TD{ %RIH1Lt$(M+E1<@IZf/E,?r:HA!HMDkL9tc AI.{f(E,?f/sf/CH9HDHH@f/BsH9A!HDHMDjHL9uHT$(Ll$L9IIHL$Lct$$LMMIVfDIZf/A<rW{H(M9|Hc{LfH)HH*ZHAIML9tXA.{f(f/A<sf/>fDH9HDHH@f/AsH9HDˉyHxDHL$H<$H90Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIfDIZLL)B ).zIHcOH9u HH9HCf/ErgD_HHL$(I9|HL$Lc_fHL)H*ZH $HAIMH9t\A.nf(lDf/fDH9HDHH@f/AsH9HDDYHh@HL$0L\$8T$PHD$XLL$Hy&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9}Ll$hHW(Lf(H$dH+%(HD$`H[]A\A]A^A_HHHHHPH1E1L\$(E11HL$(HL$L\$(H$HD$@Iw'f.fAUIATIUHSHH=cHtqH'HHHK(LLH(HH tH[]A\A]HD$Hb'HD$H[]A\A]fH='HTHaH|$ AăL;-&HzaL AŃA9AWxMH8aT$HL T$HA9HD$HHH` AIW IcH EIcH9IG8@  HD$8DDDLfDIu:D$Ht2HC8HD$Ls0hHD$L-$E1THa$H5pH8A$1HX[]A\A]A^A_H`LE1E1111(IH&fDE|"$H+H#H5<H8#D#T$HHAqH#DH52H81h$H9#HL$HAH0#HL$HIH"#HL$HH0Y#HL$EEHHD$H#DD$@HHL$H0%#HL$DD$@HIWAHm"DD$HHL$@H0"DD$T$HHD$HHL$@IAMcL9LDd$HAMcL9zH"H5H8b"DHD$fHD$DrHE1-fDHD$ DDDLIHD$L!HD$HX[]A\A]A^A_fH!DH5H81"IL!tD!H9AH!H5 H8!fDIH|$HXHH[]A\A]A^A_IfHD$(DDDLD$^!DD$HH!H5H8 (@H H5H8 @t$HlHC Ls0E1Lk(L{HD$H DD$LHHL$@H0 DD$LHL$@HHD$AL{E1@HC L{E1HD$1HC Lk(E1L{HD$KH|$HHH H5H8(@HH5H8@HD$0DDDLHDDH5LH81 @L-@LOf.HqH5H8QHUH5FH85H9H5bH8f.fHH-L (jLVH ~QPH=!Hf.fHHELL .GjLe#H ~PH=Hf.fHHEL {jLUH nPH=MHf.fHHuL NpjLH PH=aHf.fHHkL ejLկH PH=!Hf.fHH`L N[jLţH ޝPH=Hf.fHH5L n1jLՉH ^PH=wHf.fHH?L 9jL5H PH=@aHf.fHHu L jLH PH= !Hf.fHHuL .jL5H PH=Hf.fAWAVAUATUSH Ht$T$$L$dH%(H$H+XHh{Hs 1HLcKLS L[(Lp(HD$0AyLcLh|$ ELd$(1Dd$1HD$A119HcLHHDxHxLxHxL9t$If.@AWAVAUATUSH Ht$T$$L$dH%(H$HTHh{Hs 1HLcKLS L[(Lp(HD$0AyLcLh|$ ELd$(1Dd$1HD$A119HcLHHDxHxLxHxL9t$IHi71LHH[]A\A]A^A_HD$81E14@AWAVAUATUSHT$0L$H|$HcHcdH%(H$1|$H|$@ HH6HhLL$1HIq AyLL$DT$Hx(HHH$McYMi Mq(MyAsEۉt$`-L|$11LL$(E1DL$E1HD$8IH\$HL$ ?fIcHHAHDŽHHHL9t%IHi21LHH[]A\A]A^A_HD$81E1i4@AWfAAVAUATUSH H%@$L$f(dH%(H$1F*H1H^l$hHs 1ɋ{HLcKLS L[(HP(HD$`AqEHkLht$,l$.Hl$1E1Ll$1E11D|$0HD|$I;fDHcHHHDŽԨHԨLԨHԨL9t#IH$dH+%(uwHD$HHĨ[]A\A]A^A_@LX HxDHPH1L$1E1L$E1HD$HD$@fDAWLcAVAUATMUHSHT$L$dH%(H$LL$HHHD$ HH}LhHu }1HAHU LE(HLuL$HD$HELN(L~x|$$2HcL<$1Lt$(E11E1H\$01HIDd$8MDd$L\$@I=HcHHHDŽԈHԈLԈHԈI9t"Iff(*f11f(a11HD$HD$ HDAWAVAAUATUSH H4$T$DD$dH%(H$H8Hh{Hs 1HLcKLS L[(Lx(HD$@AyLkL`|$8ELd$(11HD$11I<HcLHHDŽԈHԈLԈHԈI9t$IQIEMLM9yHD$ff(f(HH*L)^fH*Ht$^ZZH9IIHt$L\$MHT$E1MI)H)Hct$ IJ,IfD.D(D\\E(DYAX\XAYX(H9|$f/v((fY.QIAELMM9EHL).n.zff(f(HH*HL)^fH*^ZZHU(D(\DYA\\Y\<ff(f(HH*HL)^fH*^(\ZD(DYAX\YXZHT$t$$HD$8H\$0y+[LHHHHL)H)Ht2LH0LHMGL9}HLHHHH9|$(vH\$HHH$dH+%(HD$@H[]A\A]A^A_f.fH9}W( (f11(YHL$8E1E1HT$0HT$0HL$8HD$(HD$HlH$L$H|$xLL$pLD$hHL$`HT$XT$TL$SH|$xLL$pHVH$L$LD$hHL$`HT$XfHn%VT$TL$=H$L$H$L$L$H$HL$xLD$p|$ht$`T$XL$THNVH$L$H$HL$xLD$pfHnL$L$H$%'V|$ht$`T$XL$Ts@AWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$ HHMLhHu 1ɋ}HALU Lm(HHD$`ELv(L]PHNT$XHcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#ItMI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$ H|$@HL$L\$(IT$$HcD$XHD$Ht$Ll$hHD$PHĨPTT$\Hc!THHT$(HD$H@A |$\D{f.fH~HJTHfHnȅ%SMI1Lt$(HE14DIf/E,?r;DkHHA!IML9t] Af.{f(E,?f/sf/fH9HDHH@Jf/sH9HDDjHHT$(H|$H9IIHL$Lct$$LMMIHFf. IE,f/rHDkHf(M9|HAIMH9tdAf.{ f(E,f/sf/fH9HDHH@Of/sH9HDDoH|HL$H<$H9Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIoILL)B )f.zIHcOH9u HH9HCEf/rFD_HHL$f(I9|H $HAIMH9tRAf.{f(널f/fH9HDHH@If/sH9HDDYHHL$0L\$8T$XHD$HLL$Py&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9Ll$hH7zLFzH$dH+%(HD$`H[]A\A]A^A_HxHHHPH1E1L\$(E11HL$zHL$L\$(H$HD$@Iyf.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$y HHmLhHu 1ɋ}HALU Lm(HHD$`ELv(L]PHNT$XHcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#ItMI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$,yH|$@HL$L\$(IT$$HcD$XHD$Ht$Ll$hHD$PHĨpNT$\HciNHHT$(HD$H@A CN.zfZȋ|$\D{ %"NIH1Lt$(M+E1<@IZf/E,?r:HA!HMDkL9to AI.{f(E,?f/sf//H9HDHH@Jf/sH9A!HDHMDjHL9uHT$(H|$H9IIHL$Lct$$LMMIHJ IZE,f/rJDkH(M9|fZHAIMH9t]A.{ f(E,f/sf/#H9HDHH@Of/sH9HDDoHHL$H<$H9Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIuIZLL)B ).zIHcOH9u HH9HCEf/rKD_HHL$(I9|fZH $HAIMH9t\A.{f(@f/f.H9HDHH@If/sH9HDDYHxHL$0L\$8T$XHD$HLL$Py&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9Ll$hH7tLFtH$dH+%(HD$`H[]A\A]A^A_HxHHHPH1E1L\$(E11HL$tHL$L\$(H$HD$@Isf.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$s HHmLhHu 1ɋ}HALu LU(HHD$`ELn(L]PHNT$XHcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#I4MDI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$,sH|$@HL$L\$(IT$$HcD$XHD$Ht$Ll$hHD$PHĨHHT$\HcAHHHT$(HD$H@A |$\D{f.fH~HJ HHfHnȅ%GMI1Lt$(HE14DIf/E,?r;DkHHA!IML9t] Af.{f(E,?f/sf/fDH9HDHH@f/BsH9HDDjHHT$(H|$H9IIHL$Lct$$LMMIHBf.If/E,rDDkHf(M9|HAIMH9tXAf.{f(f/E,sf/DH9HDHH@f/GsH9HDDoHHL$H<$H9Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIkILL)B )f.zIHcOH9u HH9HCf/ErJD_HHL$f(I9|H $HAIMH9tVAf.{f(Df/fDH9HDHH@f/AsH9HDDYHHL$0L\$8T$XHD$HLL$Py&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9Ll$hHgnLvnH$dH+%(HD$`H[]A\A]A^A_HxHHHP H1E1L\$(E11HL$nHL$L\$(H$HD$@I nf.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$,n HHLhHu 1ɋ}HALU Lm(HHD$`ELv(L]PHNT$XHcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#ItMI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$\mH|$@HL$L\$(IT$$HcD$XHD$Ht$Ll$hHD$PHĨxBT$\HcBHHT$(HD$H@A KB.zfZȋ|$\D{ %RBIH1Lt$(M+E1<@IZf/E,?r:HA!HMDkL9tc AI.{f(E,?f/sf/H9HDHH@f/BsH9A!HDHMDjHL9uHT$(H|$H9IIHL$Lct$$LMMIHBIZf/E,rFDkH(M9|fZHAIMH9tYA.{f(f/E,sf/H9HDHH@f/GsH9HDDoHHL$H<$H9Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIyfIZLL)B ).zIHcOH9u HH9HCf/ErGD_HHL$(I9|fZH $HAIMH9tPA.{f(f/fDH9HDHH@f/AsH9HDDYHHL$0L\$8T$XHD$HLL$Py&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9Ll$hHhLhH$dH+%(HD$`H[]A\A]A^A_HxHHHPH1E1L\$(E11HL$ iHL$L\$(H$HD$@I,hf.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$Lh HHLhHu }1HALu LU(HHD$`ELn(L]xHN|$P!HcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#I4MDI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$|gH|$@HL$L\$(I|$$HcD$PHD$Ht$Ll$hHD$HHĨ<|$THc<HH|$(HD$X@A |$TD{f.fH~HJ<HfHnȅ%J<MI1Lt$(HE14DIf/E,?r;DkHHA!IML9t] Af.{f(E,?f/sf/BfH9HDHH@Jf/sH9HDDjHHT$(Ll$L9IIHL$Lct$$LMMIRD IA<f/rY{Hf(M9|Hc{LfH)HH*HAIML9t[Af.{ f(A<f/sf/@H9HDHH@If/sH9HDˉyHtHL$H<$H98Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIfDILL)B )f.zIHcOH9u HH9HCEf/rfD_HHL$f(I9|HL$Lc_fHL)H*H $HAIMH9tfAf.of(ifDf/f.H9HDHH@If/sH9HDDYH]HL$0L\$8T$PHD$XLL$Hy&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9}Ll$hHwbLbH$dH+%(HD$`H[]A\A]A^A_HHHHHPH1E1L\$(E11HL$bHL$L\$(H$HD$@Iwbf.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$fHcLHHDŽԨHԨLԨHԨL9t#I4MDI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$laH|$@HL$L\$(I|$$HcD$PHD$Ht$Ll$hHD$HHĨ6|$THc6HH|$(HD$X@A 6.zfZȋ|$TD{ %b6IH1Lt$(M+E1<@IZf/E,?r:HA!HMDkL9to AI.{f(E,?f/sf/_H9HDHH@Jf/sH9A!HDHMDjHL9uHT$(Ll$L9IIHL$Lct$$LMMI^f. IZA<f/r[{H(M9|Hc{LfH)HH*ZHAIML9t\A.{ f(A<f/sf/BfH9HDHH@If/sH9HDˉyHpHL$H<$H98Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIfDIZLL)B ).zIHcOH9u HH9HCEf/rkD_HHL$(I9|HL$Lc_fHL)H*ZH $HAIMH9t`A.jf(hff/fH9HDHH@If/sH9HDDYH`HL$0L\$8T$PHD$XLL$Hy&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9]Ll$hHG\LV\H$dH+%(HD$`H[]A\A]A^A_HHHHHPH1E1L\$(E11HL$\HL$L\$(H$HD$@IW[f.fAWAAVAUATUHSHT$$L$dH%(H$1HcHD$HHHD$ \ HH}LhHu }1HALu LU(HHD$`ELn(L]xHN|$PHcL\$01AH\$8E1\$1H$1IHL$(>fHcLHHDŽԨHԨLԨHԨL9t#I4MDI 9uHH $MHL9uHL$(L\$0LL$@H\$8L\$(HL$<[H|$@HL$L\$(I|$$HcD$PHD$Ht$Ll$hHD$HHĨX0|$THcQ0HH|$(HD$X@A |$TD{f.fH~HJ0HfHnȅ% 0MI1Lt$(HE14DIf/E,?r;DkHHA!IML9t] Af.{f(E,?f/sf/6fDH9HDHH@f/BsH9HDDjHHT$(Ll$L9IIHL$Lct$$LMMINDIf/A<rU{Hf(M9|Hc{LfH)HH*HAIML9tWAf.{f(f/A<sf/<@H9HDHH@f/AsH9HDˉyH|DHL$H<$H90Hc|$$IIILHL$0H|$MH|$L\$8I)O 3HLIfDILL)B )f.zIHcOH9u HH9HCf/ErjD_HHL$f(I9|HL$Lc_fHL)H*H $HAIMH9tbAf.sf(mf.f/fDH9HDHH@f/AsH9HDDYHe@HL$0L\$8T$PHD$XLL$Hy&UfLIHHIM)H)It1HHLLHH9}HMLJ̨HD$H|$@HD$H9Ll$hHGVLVVH$dH+%(HD$`H[]A\A]A^A_HHHHHPH1E1L\$(E11HL$VHL$L\$(H$HD$@IUf.fATH=US*VHIH= (VHHoH5(HmUHMHHH VH9Cf1HkVH HQH= H4H?wPH='UHTH='HUHTH='HUHwUH='HwUHXTH=o'H`UHTHL[]A\fDHoTf.HWTHX H5)HITH816UhTHTH5*H81TE1[]LA\fDH TH5(H8 TH uHSH5(HSH81THSH53)H81TeHSH5(H81TGH~SH5&H8~S+H2TH5%H8bSDIH4HIHV LFH L9IGL)HL`)IcLHVALAJf/v f(LHHVLAJf/w f(IHHFH Af/w f(LHHVLAJf/w f(IHHFH Af/w f(LHHVLAJf/w f(IHHFH Af/w f(LHJf/BwHIIL@AݐIIHAfIIHTA,fDIIHAfDIH4HIHV LFH L9IGL)HyL'IcLHVALAJf/v f(LHHVLAJf/w f(IHHFH Af/w f(LHHVLAJf/w f(IHHFH Af/w f(LHHVLAJf/w f(IHHFH Af/w f(LHJJf/HFLFILAfIIHAwfDIIHDAfDIIHAHI|f.AWIAVAUATUSH(H_0Lw8dH%(HD$1LoL H,UHuHFHHHH f/QwVH;whHD$dH+%(H([]A\A]A^A_fDHPHHHHf/RvIHHJ H,LYHuHELYMA[f/vE1LHALd$LLI.tA_f/Hl$1HfJHL,IELZIHLHLHT$f/Rw[Hl$JL,IELZILHLH HT$f/RwAH4$1LAEHl$M.HL;mHL$1Af/v?I H4$LM,IEHQHHHD$1HL$HT$Af/wH1DJHLH,HCh1HHL$HL$/fD\H,H?DHƒfHH H*Xqf.\H,H?D\H,HChH{h?m@\H,HSpH{p?@HƒfHH H*Xf.LLfHH H*XLAfHL H*XrffHG(GGhf.AUIATUHxSH8H<H|8HIHCHHh8HfInH+HCPHHHLkHЉSIfHnflC07HH[]A\A]fDAUIATUHxSH7HHH7HIHCHH7HfInH+HCPHHHLkHIfHnIflHC@C06HH[]A\A]fSHHP6H{H6H[%6HHCannot import bottleneck.slowwrong number of argumentsCannot find `a` keyword inputtoo many arguments`window` must be an integer`axis` must be an integeraxis(=%d) out of bounds`ddof` must be an integermove_rankmove_medianmove_argmaxmove_argminmove_maxmove_minmove_varmove_stdmove_meanmove_sumnumpy.core._multiarray_umath_ARRAY_API_ARRAY_API not found_ARRAY_API is NULL pointerawindowmin_countaxisddofmoveCannot import %s from bottleneck.slowbottleneck.slow.%s is not callableCannot find `window` keyword inputwrong number of keyword arguments`min_count` must be an integer or None`min_count` must be greater than zero.min_count (%d) cannot be greater than window (%d)moving window functions require ndim > 0Moving window (=%d) must between 1 and %zu, inclusiveCould not allocate memory for move_median_ARRAY_API is not PyCapsule objectmodule compiled against ABI version 0x%x but this version of numpy is 0x%xmodule compiled against API version 0x%x but this version of numpy is 0x%xFATAL: module compiled as unknown endianFATAL: module compiled as little endian, but detected different endianness at runtimenumpy.core.multiarray failed to import @ ??@?$4DTdt,?0CC;$C`@ph0@ @    @  @ ` @   0@@ pP!0% )`.30 8@=A Fp K Q Vx [ Pa0 f l @q Pvp `{  `  @P P@``00 P PpP$p@0 zRx $FJ w?;*3$"DL\BEB B(A0D8G n 8A0A(B BBBA LhKBED D(D@S (A ABBD W (A ABBC |hBBB B(A0D8Gi 8A0A(B BBBI 3 8A0A(B BBBC  8G0A(B BBBN |4DPO P4DPO P4DPO P4DPO P4DPO P84DPO P<X4DPO P\x4DPO P|4DPO P4DPO PL2BBB B(A0A8O  8A0A(B BBBF L  2BBB B(A0A8O  8A0A(B BBBF L\ {BFF B(A0A8O  8A0A(B BBBC L{BFF B(A0A8O  8A0A(B BBBC LBBE B(A0A8O $ 8A0A(B BBBF LLX~BBE B(A0A8O  8A0A(B BBBF LBBE B(A0A8O | 8A0A(B BBBF LBBE B(A0A8O  8A0A(B BBBC d<!BBB B(A0A8G   8A0A(B BBBD  8A0A(B BBBB d0&BBB B(A0A8G ) 8A0A(B BBBD  8A0A(B BBBB L *BIB B(A0A8O ` 8A0A(B BBBF L\/BIB B(A0A8O ` 8A0A(B BBBF Lh4`BFI B(A0A8O  8A0A(B BBBK Lx8`BFI B(A0A8O  8A0A(B BBBK LL<BFI B(A0A8O  8A0A(B BBBD LBBFI B(A0A8O  8A0A(B BBBD dGBBB B(A0A8G ! 8A0A(B BBBD c 8I0A(B BBBB dTPLBBB B(A0A8G ! 8A0A(B BBBD c 8I0A(B BBBB LPbBBB B(A0A8O  8A0A(B BBBG L VBBB B(A0A8O  8A0A(B BBBG L\ X[*BEB B(D0D8G  8A0A(B BBBE L 8`*BEB B(D0D8G  8A0A(B BBBE L e BEB B(D0D8G  8A0A(B BBBE LL i BEB B(D0D8G  8A0A(B BBBE L n;BBB E(D0D8G  8A0A(B BBBD L s;BBB E(D0D8G  8A0A(B BBBD L< xx+BBB E(D0D8G  8A0A(B BBBD L X}+BBB E(D0D8G  8A0A(B BBBD L 8kBBE B(A0A8O  8A0A(B BBBF L, XjBBE B(A0A8O  8A0A(B BBBK L| x%BBB B(I0A8I % 8A0A(B BBBF L X,BBB B(I0A8I 0 8A0A(B BBBK L 8BEB B(A0D8G > 8A0A(B BBBA Ll ȟBEB B(A0D8G ^ 8A0A(B BBBA L xBEB B(A0D8G . 8A0A(B BBBA L BEB B(A0D8G > 8A0A(B BBBA L\BEB B(A0D8G n 8A0A(B BBBA LH$BEB B(A0D8G  8A0A(B BBBA L(BEB B(A0D8G ^ 8A0A(B BBBA <LBMA > ABG s AEG 8HpCBEB B(A0A8D`n 8A0A(B BBBG HtBEB B(A0A8D`w 8A0A(B BBBF LLHBBB A(A0 (A BBBG  (I BBBE gES H L(!BBB A(A0 (A BBBG W (I BBBB d  BBB B(A0A8G` 8A0A(B BBBD  8A0A(B BBBG t@4LBEA I(D0k(D ABB4BEA I(D0o(D ABB"A[  LLo  H pNh oo8oo o$LPmove_rank(a, window, min_count=None, axis=-1) Moving window ranking along the specified axis, optionally ignoring NaNs. The output is normalized to be between -1 and 1. For example, with a window width of 3 (and with no ties), the possible output values are -1, 0, 1. Ties are broken by averaging the rankings. See the examples below. The runtime depends almost linearly on `window`. The more NaNs there are in the input array, the shorter the runtime. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving ranking along the specified axis. The output has the same shape as the input. For integer input arrays, the dtype of the output is float64. Examples -------- With window=3 and no ties, there are 3 possible output values, i.e. [-1., 0., 1.]: >>> a = np.array([1, 2, 3, 9, 8, 7, 5, 6, 4]) >>> bn.move_rank(a, window=3) array([ nan, nan, 1., 1., 0., -1., -1., 0., -1.]) Ties are broken by averaging the rankings of the tied elements: >>> a = np.array([1, 2, 3, 3, 3, 4]) >>> bn.move_rank(a, window=3) array([ nan, nan, 1. , 0.5, 0. , 1. ]) In an increasing sequence, the moving window ranking is always equal to 1: >>> a = np.array([1, 2, 3, 4, 5]) >>> bn.move_rank(a, window=2) array([ nan, 1., 1., 1., 1.]) move_median(a, window, min_count=None, axis=-1) Moving window median along the specified axis, optionally ignoring NaNs. float64 output is returned for all input data types. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving median of the input array along the specified axis. The output has the same shape as the input. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, 4.0]) >>> bn.move_median(a, window=2) array([ nan, 1.5, 2.5, 3.5]) >>> bn.move_median(a, window=2, min_count=1) array([ 1. , 1.5, 2.5, 3.5]) move_argmax(a, window, min_count=None, axis=-1) Moving window index of maximum along the specified axis, optionally ignoring NaNs. Index 0 is at the rightmost edge of the window. For example, if the array is monotonically increasing (decreasing) along the specified axis then the output array will contain zeros (window-1). If there is a tie in input values within a window, then the rightmost index is returned. float64 output is returned for all input data types. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving index of maximum values of the input array along the specified axis. The output has the same shape as the input. The dtype of the output is always float64. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, 4.0, 5.0]) >>> bn.move_argmax(a, window=2) array([ nan, 0., 0., 0., 0.]) >>> a = np.array([5.0, 4.0, 3.0, 2.0, 1.0]) >>> bn.move_argmax(a, window=2) array([ nan, 1., 1., 1., 1.]) >>> a = np.array([2.0, 3.0, 4.0, 1.0, 7.0, 5.0, 6.0]) >>> bn.move_argmax(a, window=3) array([ nan, nan, 0., 1., 0., 1., 2.]) move_argmin(a, window, min_count=None, axis=-1) Moving window index of minimum along the specified axis, optionally ignoring NaNs. Index 0 is at the rightmost edge of the window. For example, if the array is monotonically decreasing (increasing) along the specified axis then the output array will contain zeros (window-1). If there is a tie in input values within a window, then the rightmost index is returned. float64 output is returned for all input data types. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving index of minimum values of the input array along the specified axis. The output has the same shape as the input. The dtype of the output is always float64. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, 4.0, 5.0]) >>> bn.move_argmin(a, window=2) array([ nan, 1., 1., 1., 1.]) >>> a = np.array([5.0, 4.0, 3.0, 2.0, 1.0]) >>> bn.move_argmin(a, window=2) array([ nan, 0., 0., 0., 0.]) >>> a = np.array([2.0, 3.0, 4.0, 1.0, 7.0, 5.0, 6.0]) >>> bn.move_argmin(a, window=3) array([ nan, nan, 2., 0., 1., 2., 1.]) move_max(a, window, min_count=None, axis=-1) Moving window maximum along the specified axis, optionally ignoring NaNs. float64 output is returned for all input data types. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving maximum of the input array along the specified axis. The output has the same shape as the input. The dtype of the output is always float64. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_max(a, window=2) array([ nan, 2., 3., nan, nan]) >>> bn.move_max(a, window=2, min_count=1) array([ 1., 2., 3., 3., 5.]) move_min(a, window, min_count=None, axis=-1) Moving window minimum along the specified axis, optionally ignoring NaNs. float64 output is returned for all input data types. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving minimum of the input array along the specified axis. The output has the same shape as the input. The dtype of the output is always float64. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_min(a, window=2) array([ nan, 1., 2., nan, nan]) >>> bn.move_min(a, window=2, min_count=1) array([ 1., 1., 2., 3., 5.]) move_var(a, window, min_count=None, axis=-1, ddof=0) Moving window variance along the specified axis, optionally ignoring NaNs. This function cannot handle input arrays that contain Inf. When Inf enters the moving window, the outout becomes NaN and will continue to be NaN for the remainer of the slice. Unlike bn.nanvar, which uses a two-pass algorithm, move_nanvar uses a one-pass algorithm called Welford's method. The algorithm is slow but numerically stable for cases where the mean is large compared to the standard deviation. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. ddof : int, optional Means Delta Degrees of Freedom. The divisor used in calculations is ``N - ddof``, where ``N`` represents the number of elements. By default `ddof` is zero. Returns ------- y : ndarray The moving variance of the input array along the specified axis. The output has the same shape as the input. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_var(a, window=2) array([ nan, 0.25, 0.25, nan, nan]) >>> bn.move_var(a, window=2, min_count=1) array([ 0. , 0.25, 0.25, 0. , 0. ]) move_std(a, window, min_count=None, axis=-1, ddof=0) Moving window standard deviation along the specified axis, optionally ignoring NaNs. This function cannot handle input arrays that contain Inf. When Inf enters the moving window, the outout becomes NaN and will continue to be NaN for the remainer of the slice. Unlike bn.nanstd, which uses a two-pass algorithm, move_nanstd uses a one-pass algorithm called Welford's method. The algorithm is slow but numerically stable for cases where the mean is large compared to the standard deviation. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. ddof : int, optional Means Delta Degrees of Freedom. The divisor used in calculations is ``N - ddof``, where ``N`` represents the number of elements. By default `ddof` is zero. Returns ------- y : ndarray The moving standard deviation of the input array along the specified axis. The output has the same shape as the input. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_std(a, window=2) array([ nan, 0.5, 0.5, nan, nan]) >>> bn.move_std(a, window=2, min_count=1) array([ 0. , 0.5, 0.5, 0. , 0. ]) move_mean(a, window, min_count=None, axis=-1) Moving window mean along the specified axis, optionally ignoring NaNs. This function cannot handle input arrays that contain Inf. When the window contains Inf, the output will correctly be Inf. However, when Inf moves out of the window, the remaining output values in the slice will incorrectly be NaN. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving mean of the input array along the specified axis. The output has the same shape as the input. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_mean(a, window=2) array([ nan, 1.5, 2.5, nan, nan]) >>> bn.move_mean(a, window=2, min_count=1) array([ 1. , 1.5, 2.5, 3. , 5. ]) move_sum(a, window, min_count=None, axis=-1) Moving window sum along the specified axis, optionally ignoring NaNs. This function cannot handle input arrays that contain Inf. When the window contains Inf, the output will correctly be Inf. However, when Inf moves out of the window, the remaining output values in the slice will incorrectly be NaN. Parameters ---------- a : ndarray Input array. If `a` is not an array, a conversion is attempted. window : int The number of elements in the moving window. min_count: {int, None}, optional If the number of non-NaN values in a window is less than `min_count`, then a value of NaN is assigned to the window. By default `min_count` is None, which is equivalent to setting `min_count` equal to `window`. axis : int, optional The axis over which the window is moved. By default the last axis (axis=-1) is used. An axis of None is not allowed. Returns ------- y : ndarray The moving sum of the input array along the specified axis. The output has the same shape as the input. Examples -------- >>> a = np.array([1.0, 2.0, 3.0, np.nan, 5.0]) >>> bn.move_sum(a, window=2) array([ nan, 3., 5., nan, nan]) >>> bn.move_sum(a, window=2, min_count=1) array([ 1., 3., 5., 3., 5.]) Bottleneck moving window functions.!@-!02#!1~!1w!p1`q!01l 0`h 0b p0[ 00`W / PGCC: (GNU) 4.4.7 20120313 (Red Hat 4.4.7-23)GCC: (conda-forge gcc 12.3.0-5) 12.3.0 0 # G % i 8 NZL L ؊ &KЊ @( /4 ] X & b8 004D |V pwh S| N p04 + +  04 P; ; $ , 045 D S d u 014~ * *  0 p14 Pg` b` `j k 14 q k. ,? %P 14Z p<{j 8{z J G 024 52 p22 C~ ?h$@`~!w.`qy;lwH`hwUb`e[`u`W@ P#  @ C P9P L%)5pNKVgs  Ȋ   '9IZj !}   p%+ Pg5F "N]m @  3" crti.ocall_gmon_startcrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.0__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entrymove.cmove_argmax_float32PyArray_APIslowslow_modulemovermove_rankmove_rank_int32move_rank_int64move_rank_float32move_rank_float64move_medianmove_median_int32move_median_int64move_median_float32move_median_float64move_argmaxmove_argmax_int32move_argmax_int64move_argmax_float64move_argminmove_argmin_int32move_argmin_int64move_argmin_float32move_argmin_float64move_maxmove_max_int32move_max_int64move_max_float32move_max_float64move_minmove_min_int32move_min_int64move_min_float32move_min_float64move_varmove_var_int32move_var_int64move_var_float32move_var_float64move_stdmove_std_int32move_std_int64move_std_float32move_std_float64move_meanmove_mean_int32move_mean_int64move_mean_float32move_mean_float64move_summove_sum_int32move_sum_int64move_sum_float32move_sum_float64move_defmove_docmove_methodsmove_sum_docmove_mean_docmove_std_docmove_var_docmove_min_docmove_max_docmove_argmin_docmove_argmax_docmove_median_docmove_rank_docmove_median.cmm_get_smallest_childmm_get_largest_childheapify_small_nodeheapify_large_node__FRAME_END____dso_handle_DYNAMIC__GNU_EH_FRAME_HDR__TMC_END___GLOBAL_OFFSET_TABLE_pystr_axisfree@GLIBC_2.2.5PyDict_Size_ITM_deregisterTMCloneTablePyEval_RestoreThreadmm_resetPyObject_GetAttrStringpystr_amm_update_nan_Py_Deallocpystr_window_fini__stack_chk_fail@GLIBC_2.4PyExc_RuntimeErrorPyExc_MemoryErrorPyErr_SetStringPyExc_ValueErrorPyExc_TypeErrormm_update_init_nanPyErr_PrintPyInit_movePyDict_GetItempystr_ddof__gmon_start__PyErr_OccurredPyModule_Create2PyImport_ImportModulemm_update_initmalloc@GLIBC_2.2.5_Py_NoneStructsqrtfmm_updatePyCallable_Checkmm_freePyCapsule_Typepystr_min_countPyEval_SaveThreadPyUnicode_InternFromStringmm_new_nanPyExc_ImportErrorPyExc_AttributeErrormm_newPyObject_CallsqrtPyType_IsSubtypePyErr_FormatPyCapsule_GetPointer_ITM_registerTMCloneTable__cxa_finalize@GLIBC_2.2.5.symtab.strtab.shstrtab.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.init.plt.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.data.bss.commento% - H5o fBo880Qhh[ a  f o0 0 u {  %%$''L<L<L<jpNp>P@: z@0zTzP \ HN