From 9b412b51a8049c7204b1b6dc6c76fed6f76c1c05 Mon Sep 17 00:00:00 2001 From: ltcptgeneral <35508619+ltcptgeneral@users.noreply.github.com> Date: Fri, 6 Mar 2020 20:32:41 -0600 Subject: [PATCH] analysis pkg v 1.0.0.7 --- analysis-master/analysis.egg-info/PKG-INFO | 2 +- .../analysis/__init__.py | 0 .../__pycache__/__init__.cpython-37.pyc | Bin .../__pycache__/analysis.cpython-36.pyc | Bin .../__pycache__/analysis.cpython-37.pyc | Bin .../__pycache__/regression.cpython-37.pyc | Bin .../__pycache__/titanlearn.cpython-37.pyc | Bin .../__pycache__/trueskill.cpython-37.pyc | Bin .../analysis/analysis.py | 0 .../analysis/regression.py | 0 .../analysis/titanlearn.py | 0 .../analysis/trueskill.py | 0 .../analysis/visualization.py | 0 .../build/lib/analysis/regression.py | 82 +++++++++--------- .../dist/analysis-1.0.0.6-py3-none-any.whl | Bin 20139 -> 0 bytes analysis-master/dist/analysis-1.0.0.6.tar.gz | Bin 18395 -> 0 bytes .../dist/analysis-1.0.0.7-py3-none-any.whl | Bin 0 -> 20335 bytes analysis-master/dist/analysis-1.0.0.7.tar.gz | Bin 0 -> 18671 bytes analysis-master/setup.py | 2 +- 19 files changed, 42 insertions(+), 44 deletions(-) rename {data analysis => analysis-master}/analysis/__init__.py (100%) rename {data analysis => analysis-master}/analysis/__pycache__/__init__.cpython-37.pyc (100%) rename {data analysis => analysis-master}/analysis/__pycache__/analysis.cpython-36.pyc (100%) rename {data analysis => analysis-master}/analysis/__pycache__/analysis.cpython-37.pyc (100%) rename {data analysis => analysis-master}/analysis/__pycache__/regression.cpython-37.pyc (100%) rename {data analysis => analysis-master}/analysis/__pycache__/titanlearn.cpython-37.pyc (100%) rename {data analysis => analysis-master}/analysis/__pycache__/trueskill.cpython-37.pyc (100%) rename {data analysis => analysis-master}/analysis/analysis.py (100%) rename {data analysis => analysis-master}/analysis/regression.py (100%) rename {data analysis => analysis-master}/analysis/titanlearn.py (100%) rename {data analysis => analysis-master}/analysis/trueskill.py (100%) rename {data analysis => analysis-master}/analysis/visualization.py (100%) delete mode 100644 analysis-master/dist/analysis-1.0.0.6-py3-none-any.whl delete mode 100644 analysis-master/dist/analysis-1.0.0.6.tar.gz create mode 100644 analysis-master/dist/analysis-1.0.0.7-py3-none-any.whl create mode 100644 analysis-master/dist/analysis-1.0.0.7.tar.gz diff --git a/analysis-master/analysis.egg-info/PKG-INFO b/analysis-master/analysis.egg-info/PKG-INFO index ce78f47e..3d2c5284 100644 --- a/analysis-master/analysis.egg-info/PKG-INFO +++ b/analysis-master/analysis.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: analysis -Version: 1.0.0.6 +Version: 1.0.0.7 Summary: analysis package developed by Titan Scouting for The Red Alliance Home-page: https://github.com/titanscout2022/tr2022-strategy Author: The Titan Scouting Team diff --git a/data analysis/analysis/__init__.py b/analysis-master/analysis/__init__.py similarity index 100% rename from data analysis/analysis/__init__.py rename to analysis-master/analysis/__init__.py diff --git a/data analysis/analysis/__pycache__/__init__.cpython-37.pyc b/analysis-master/analysis/__pycache__/__init__.cpython-37.pyc similarity index 100% rename from data analysis/analysis/__pycache__/__init__.cpython-37.pyc rename to analysis-master/analysis/__pycache__/__init__.cpython-37.pyc diff --git a/data analysis/analysis/__pycache__/analysis.cpython-36.pyc b/analysis-master/analysis/__pycache__/analysis.cpython-36.pyc similarity index 100% rename from data analysis/analysis/__pycache__/analysis.cpython-36.pyc rename to analysis-master/analysis/__pycache__/analysis.cpython-36.pyc diff --git a/data analysis/analysis/__pycache__/analysis.cpython-37.pyc b/analysis-master/analysis/__pycache__/analysis.cpython-37.pyc similarity index 100% rename from data analysis/analysis/__pycache__/analysis.cpython-37.pyc rename to analysis-master/analysis/__pycache__/analysis.cpython-37.pyc diff --git a/data analysis/analysis/__pycache__/regression.cpython-37.pyc b/analysis-master/analysis/__pycache__/regression.cpython-37.pyc similarity index 100% rename from data analysis/analysis/__pycache__/regression.cpython-37.pyc rename to analysis-master/analysis/__pycache__/regression.cpython-37.pyc diff --git a/data analysis/analysis/__pycache__/titanlearn.cpython-37.pyc b/analysis-master/analysis/__pycache__/titanlearn.cpython-37.pyc similarity index 100% rename from data analysis/analysis/__pycache__/titanlearn.cpython-37.pyc rename to analysis-master/analysis/__pycache__/titanlearn.cpython-37.pyc diff --git a/data analysis/analysis/__pycache__/trueskill.cpython-37.pyc b/analysis-master/analysis/__pycache__/trueskill.cpython-37.pyc similarity index 100% rename from data analysis/analysis/__pycache__/trueskill.cpython-37.pyc rename to analysis-master/analysis/__pycache__/trueskill.cpython-37.pyc diff --git a/data analysis/analysis/analysis.py b/analysis-master/analysis/analysis.py similarity index 100% rename from data analysis/analysis/analysis.py rename to analysis-master/analysis/analysis.py diff --git a/data analysis/analysis/regression.py b/analysis-master/analysis/regression.py similarity index 100% rename from data analysis/analysis/regression.py rename to analysis-master/analysis/regression.py diff --git a/data analysis/analysis/titanlearn.py b/analysis-master/analysis/titanlearn.py similarity index 100% rename from data analysis/analysis/titanlearn.py rename to analysis-master/analysis/titanlearn.py diff --git a/data analysis/analysis/trueskill.py b/analysis-master/analysis/trueskill.py similarity index 100% rename from data analysis/analysis/trueskill.py rename to analysis-master/analysis/trueskill.py diff --git a/data analysis/analysis/visualization.py b/analysis-master/analysis/visualization.py similarity index 100% rename from data analysis/analysis/visualization.py rename to analysis-master/analysis/visualization.py diff --git a/analysis-master/build/lib/analysis/regression.py b/analysis-master/build/lib/analysis/regression.py index 6cbe7868..adf2a54e 100644 --- a/analysis-master/build/lib/analysis/regression.py +++ b/analysis-master/build/lib/analysis/regression.py @@ -1,27 +1,28 @@ # Titan Robotics Team 2022: CUDA-based Regressions Module # Written by Arthur Lu & Jacob Levine # Notes: -# this should be imported as a python module using 'import regression' -# this should be included in the local directory or environment variable -# this module is cuda-optimized and vectorized (except for one small part) +# this module has been automatically inegrated into analysis.py, and should be callable as a class from the package +# this module is cuda-optimized and vectorized (except for one small part) # setup: -__version__ = "1.0.0.002" +__version__ = "1.0.0.003" -# changelog should be viewed using print(regression.__changelog__) +# changelog should be viewed using print(analysis.regression.__changelog__) __changelog__ = """ - 1.0.0.002: - -Added more parameters to log, exponential, polynomial - -Added SigmoidalRegKernelArthur, because Arthur apparently needs - to train the scaling and shifting of sigmoids - - 1.0.0.001: - -initial release, with linear, log, exponential, polynomial, and sigmoid kernels - -already vectorized (except for polynomial generation) and CUDA-optimized +1.0.0.003: + - bug fixes +1.0.0.002: + -Added more parameters to log, exponential, polynomial + -Added SigmoidalRegKernelArthur, because Arthur apparently needs + to train the scaling and shifting of sigmoids +1.0.0.001: + -initial release, with linear, log, exponential, polynomial, and sigmoid kernels + -already vectorized (except for polynomial generation) and CUDA-optimized """ __author__ = ( "Jacob Levine ", + "Arthur Lu " ) __all__ = [ @@ -39,35 +40,13 @@ __all__ = [ 'CustomTrain' ] - -# imports (just one for now): - -import torch +global device device = "cuda:0" if torch.torch.cuda.is_available() else "cpu" #todo: document completely -def factorial(n): - if n==0: - return 1 - else: - return n*factorial(n-1) -def num_poly_terms(num_vars, power): - if power == 0: - return 0 - return int(factorial(num_vars+power-1) / factorial(power) / factorial(num_vars-1)) + num_poly_terms(num_vars, power-1) - -def take_all_pwrs(vec,pwr): - #todo: vectorize (kinda) - combins=torch.combinations(vec, r=pwr, with_replacement=True) - out=torch.ones(combins.size()[0]) - for i in torch.t(combins): - out *= i - return torch.cat(out,take_all_pwrs(vec, pwr-1)) - -def set_device(new_device): - global device +def set_device(self, new_device): device=new_device class LinearRegKernel(): @@ -154,20 +133,39 @@ class PolyRegKernel(): power=None def __init__(self, num_vars, power): self.power=power - num_terms=num_poly_terms(num_vars, power) + num_terms=self.num_poly_terms(num_vars, power) self.weights=torch.rand(num_terms, requires_grad=True, device=device) self.bias=torch.rand(1, requires_grad=True, device=device) self.parameters=[self.weights,self.bias] + def num_poly_terms(self,num_vars, power): + if power == 0: + return 0 + return int(self.factorial(num_vars+power-1) / self.factorial(power) / self.factorial(num_vars-1)) + self.num_poly_terms(num_vars, power-1) + def factorial(self,n): + if n==0: + return 1 + else: + return n*self.factorial(n-1) + def take_all_pwrs(self, vec, pwr): + #todo: vectorize (kinda) + combins=torch.combinations(vec, r=pwr, with_replacement=True) + out=torch.ones(combins.size()[0]).to(device).to(torch.float) + for i in torch.t(combins).to(device).to(torch.float): + out *= i + if pwr == 1: + return out + else: + return torch.cat((out,self.take_all_pwrs(vec, pwr-1))) def forward(self,mtx): #TODO: Vectorize the last part cols=[] for i in torch.t(mtx): - cols.append(take_all_pwrs(i,self.power)) + cols.append(self.take_all_pwrs(i,self.power)) new_mtx=torch.t(torch.stack(cols)) long_bias=self.bias.repeat([1,mtx.size()[1]]) return torch.matmul(self.weights,new_mtx)+long_bias -def SGDTrain(kernel, data, ground, loss=torch.nn.MSELoss(), iterations=1000, learning_rate=.1, return_losses=False): +def SGDTrain(self, kernel, data, ground, loss=torch.nn.MSELoss(), iterations=1000, learning_rate=.1, return_losses=False): optim=torch.optim.SGD(kernel.parameters, lr=learning_rate) data_cuda=data.to(device) ground_cuda=ground.to(device) @@ -192,7 +190,7 @@ def SGDTrain(kernel, data, ground, loss=torch.nn.MSELoss(), iterations=1000, lea optim.step() return kernel -def CustomTrain(kernel, optim, data, ground, loss=torch.nn.MSELoss(), iterations=1000, return_losses=False): +def CustomTrain(self, kernel, optim, data, ground, loss=torch.nn.MSELoss(), iterations=1000, return_losses=False): data_cuda=data.to(device) ground_cuda=ground.to(device) if (return_losses): @@ -214,4 +212,4 @@ def CustomTrain(kernel, optim, data, ground, loss=torch.nn.MSELoss(), iterations ls=loss(pred,ground_cuda) ls.backward() optim.step() - return kernel + return kernel \ No newline at end of file diff --git a/analysis-master/dist/analysis-1.0.0.6-py3-none-any.whl b/analysis-master/dist/analysis-1.0.0.6-py3-none-any.whl deleted file mode 100644 index 46500f86c269d4a7f915abefc51f01369e29690f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20139 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 B>!APu diff --git a/analysis-master/dist/analysis-1.0.0.6.tar.gz b/analysis-master/dist/analysis-1.0.0.6.tar.gz deleted file mode 100644 index 570b4f717e806ed81d3637f862d8b90641b3e0a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18395 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 CDede4 diff --git a/analysis-master/dist/analysis-1.0.0.7-py3-none-any.whl b/analysis-master/dist/analysis-1.0.0.7-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..8e08c31b650d5970fc0db02a87c147ea4d236048 GIT binary patch literal 20335 zcmZ6yQ>-vduq?W4+qP}nwr$(CZQHi-E!(zj>;C)UCTH({m`o||A)EZwT#~qOWT8e=U;XSu$@dpmBc+e$AwK=mkW@+hRh-04p<|UGLbaO zB4XwF9IxMd)7u#-T6Sb&W;Ejg&aOFH>AuueRpB$>N5QRMzw**`7hP?_2ia>r@#*X_ zne!amKu4v&+blArzv`hM83xC1__K|wLq^r!YoyPzTVuc8%KJh8!p~c=ey#1Gqr!Tv zx)t$`l)o?E0*r7|e>0t34MP1A-fgqIh9TsubWpQmqR~@VKRK9N|5e8PCx&=sW1!%eyR=YyZdU|VhuXN((L7b#x*D}GxuF0SZ=Lo+R0;Auh~7n=%K#6OrkYIM~A@@nPTg? z5eZh-UU&iDpB@Ic^rFo|6Dy)DKI+T|kAM?VBhNVMT% z5nUn8l5A#SWnOd%y3cjjIk=u?0RWN+(N$*M&nLIpvEL}`Fl85QHztipVXr~l5^IT| ztG+Y*WfJQJ>#uowpru9Aunvfc#{`a~+?FK%8H6L5OAQj%#Q+??RDAaPa1+esS zf&fI{i&;|*IEEdn?m1?6c{&N$48njfK2U>-hvRbIMW7@&QIT+yrO3BM) zHC%6aH(&>F15%jr+6HdfqN$A2wQ)eFv7#=p{s&7Non5biZo05TC?XDd)ffCD5o608 z;3+U0WNKx2gA456Xh)w@p`r)zR$Qlq1#0_kH zTZhFWsT7pna0z7TEPupCwqyKz$vgJ*Sg)85&SR;szxm~z!Lamj5LdL2rWyG7Izij7GYSRxuiay%ElJM1Wo zcYtib_YupY=1qU40BWZ>DfrR`is4syy#!2sFaeLn}T2e2M0P|F*tQv>DjpK~#`!sZwunXxr5t_CRQ zZ-S%0!g=cx-&3uFh@3aXoWd{fXjuoL&W7~>-=3C>a)+w(8ag&P)72$OI0*qVAS@$q zq!&r2@QXIn$6dssFALE8KN31{dZOvX#^h#-8^9))IP&(NN)s8ThsNZEHKi9V0)6G? z_#vXI8LIoG0LBut1iX}>A}Rj2OkpT0A#rtVZ zOAH|?-7wlSCl3r3sgNAQrc5l8y3kQYJ1w9KU~Q1Yr2T}utOup~A5A`am-XWb%po}$ zF5$tkLtXQj?u;q01{54(St-=`!5Ek|%Mk7i9gUFhLbR-L11V3qIj-IGlUzJ%pa4eO z$bi`OF@k!e_Dl|!+0oXkY4AY}{{%)!sM$8@QdNf)Gd_rEmODZndQiJkFk^3kAVbHi zIUlUt$RZ#e!ilkO03|m>nJ)^na1mgljVCH(t^gy+rzNM!*IEGP27BO|;TEVvdYzss zTUz1qPe2Tf0HQ~rKU;2tA(b>j16usD{=m&Bd^i9m#Sqy6^IsiyD(FjULMP)LU)5^t zmamsj^JxNzM3WgqzJk!j5Dbe99|1jYg$*z@PAOEp2UagFnb$R;K45LbrNfLMnH2dZ zd4-A*C4rQuDivYxa`DA?M08kNcF|1p9>|F0fiuN@%nB!PINVp!6P`6|g`%1gaua9~ zzFLug(NU>VI0OBmgv3sCSZ*?3RfHG_e>*D^2Fop(U0x`n-i*Lw#DRXAiqS#6cHNwTI*c}0ZJFmbd! zKS^pG*o?=o%1fC0fSg`oD5_hTn5-%m+0s+zKfYssJ(WagXFj?HW=CLM#GIQ z6}V|Oq>hFCz~xZgfl?vDCnYuW#(gMH1dy4^^S4{<gVYdHZZAh!U z1HK7xzyMJWjx7u_l`!WDPUbX5X?vn|f zYv%(bR=vC6{TPOj_08%&Keg#m|3-dB;^IOjvSe>B=u>15s}dU;!ajUwLB_bb;LxNlh?fSrV2oqYOfv*w^ zSRTWO)L~JZ5(FTgR@q!*90MdtcMMUzC_fkEag^6QFG1)5HdY|}0?XKK51HDW>A)aC zK|1UNa~agGG%2gBnD0J|BX0$QL7(%sZI{6%)vLNH1F_czj z)7DcoD3-%u%qWS9kq(#$+d%r(2rUDhHY}NdwB2OeE_mh;XPX4;or(=ihYd`R4)E;? z4g_9^S>XDzl9_KJO#T*T;GB9XJG2}PvjR0PPg7RPDxP^suwlLML~M^mOC>(HhqZt$ zF|Ypio}I6cxfWnz79;Xsy6Fh05%C2S(@lUn=x0uH?oI%N|l zo>xdIb8!N7)Og0hu~^rK=hATlsqy$YxVe$Rzqbwru}hJ}Fne1c&Sk9ZPqqE}bf1ZG z0-ODv*i?aasZ*`z`_o+nt)IRmI6hsg zt=zmjY^^oE zm#({@pq}(5ya3--bda%Mb*#2O>Pd=TX6YWJba$0+l7d8gC>G7Q0nz_E_HYLhxFLMl z)|<54bS35Bzijy}N#b-0M$Rge;%Nz8W?o^z<0}A);W|viRmpA&HmPmn%4p*?Rk|#l zfnw2V$_tq*%Q6WcZwkaiLCMAAJI~^7y|N5olT=q+^q@pBFKY^+EuRU?q7d1MlhX7&I_*_2U~PHN<-56ob)M z&P=Tfh-CJXVYrqsxR0S@WsS^Y&*UgjE(s3DYWq|fr9Y2;0FsLvQEK^c`Wvoz4N&4ELNdKU2G6NdvR+B9 z4t^>kJQp#X4)LWBpJ2qRWf@$HEnSSQl>H{up3cIGFLxMAVCD-d$xNf*i1%o=js1m5 z$@xt?EG$kllRkwyUH>U0&!wQfME#&$4@DiCA5wkJ>O~mw9|uX9%HF!z(U#1)lScND z{h3j;NkVe#yYOW8=Qi{=l;#Hd%dks_N6W&6$nNVn#h~&s8`L!fGSZXLjLU`xySOPQ ztccA*&z`wJ?P8B^FQCOWuoWM$aR}5k5|`7_LNVv{HWUXcxv{DSgRT>`n0OJ)asL$h3M{4cf!AlXOd0mx42&ymQVwZwYXmkRmdqYBr z<~6fMSG-8Q=KlT2rlyHp_=kUB3lMrm0un4@%#pAS6gV(4VL%wJoWpAbe0)Dw$QRJa zVZy4Z?9$7u%aCd6>rA@{YX_=fKKaXL>JH3;BQ|rNQ9YRq5;)67I@UchVY0e%TuG*k zwEhpc5ROoPo?oR9pb~~+A#X*ZU^h-8K#F{VOVFr!0_1o0PxLV$2IzH1vJyZ?fK!tn zOZX$6hSWXs2q`$1jf`>7&ufnaY`Lc#iJPue*pr=%v;nuBpEhBCD?d%*;YJ?)e$Ixi zncyZl%5K1El6=h2Vhh^$@}V{wt)PIm&W?xduU z=E0&H2NpFf-E@#R5NG}iH5oY}DtLgxukB2oXvH29HaknP$s$wf>RQ{YQPY?SQ&SjD zJQnc8`tr89Q|*hAnO18Cyh;T9Knu9+=3gPGI^18rVbVrHREb!&*y*8Nk`+aE8KQ+I zEgNOT=zv#qM~@G7sKtth2`?*6oGJsj%BVOUgdi98l_clGCU^OVJ!;;DK-yHG9;picewCQ*WHyGKpefV6UimaBsQSa`za!j&6jUcqkuq_Br(At0q3WXzC@Czz0=uA z7aj5Pr8^E4dg_}T%|ZBotvT4Z+DcVPVt6byTHV&M9kEad>kgSm?z@5cV+3KU{Y17l z)2hqxt~jbvpoMvIKP&=#MovX2$*OWMol!X+tJ=7dcRfmfkR|02BqlK0fZL*Hh1}aT zu!!9Vfoyy-WiDgpi{=mT7Stw1p+~733_Cjm2Mjm9bxop*JY}|D2;u-{3OhGAZ-zkS!SE}{bpwU^aHH>G+TeKO;hmM=;it=!mv zz#XrF2kJEj28IJXL)$8D@SyA&B|#Mp9(WPAICTYt2;M#EV${(Fu5bNf9bfKZZ_LWZ z3NqHi`vc~y@|F?bNc`g>kXRkv={;EDNmLyiy#)L5**4J(G)&L!}Oa&`Yw`J$NJp9stP=PyN9rMyLtl6$Rko!@;fDx*0>nna#W0I3FH)w4`$z+w7-^YgqM0yjUcfkczL$l&J}Z8KCZB~K zg4g^0Juvjyr{|$l$f9z&&wpu=Q9N29=B`6VHA2HG=18N8Ygu4bwb2YI&U%~RSZy~z z-Ng}lrHQL>0H+%;yeF*DSnm<3V_pB0QrA?h(;_EX8Soh>!~J4;U)c9B3UXccZLSmQ zghUk5EirT5ZLUuOSan-1i23KJkOmJp`#Q2z2Ds}ttmq0^%tHO!66{EOI{U@|vMcVS z#7C+R{p{%RL0k#|w&4Q^!XANd7CCT0YlE@Rurr#DeG0Sx(04t1%r;3_yp37b4DXWq zx4@L1K60O8n^=AF9W4E=;#QRh2pyYzJ8wUK5)n^DNa=SbbjeXXSXlzph(l~|ng?`M zLeCw>N_M<*-D$K9e{aO!CaZ&&X&x{8xp0=`3Aft9N*>Nk$6oZMGwamO`5-u~hJRcm zc1TI@2v zg>`x(U8~J8Yq70a;5eFynSaBbjR>oFeuek+DaXZhJaSh=a{2~@l;1d;J!SO5f>iU) z!#0<+0v^8dXgF?q=ZipuyJ8f-(I1QjKZTPA)jj0mq~ZNDBdy)edkZ;kVFKkoB!o9m z%c6Ec@FTJ1tGkr0q``qIf13Y+xre_XBFc)ekzAL^-(2r0&*S-GY6Ou6FPzl-hVbhP zvsu3uwl~sX`Ehh-g!;IAvA(rHT5! zMu=a(dTt&MjS;ia{-(gaimE#6&rI514ec~=Uu|WB=PY(mM)f6^}O4z+xr(*1=CkB zob}aQNhKDr&nT4DM7wv#i6-+8%%y6F6+v{0d8ka!`J>xGSrcjE{_Q9QhLqiuhqINH zMLT0@Bw9s(Tz(6eA7l|fZy9{#?$wL`>vzn2f>|b_yp5(LlHmGar!?r2kB_xNS#grW z;^AT$lt7vm2#0XzTy+4ly$+*RJFWqIbUWJ77?iw}@Y3(umqp0=F_VSrk!kKys8NmV zqw>20wp#xzYGTn8vy2M)_};1XGPnz_*MYN3%P4a5B&SKE3!|1SJLxrfgknnV?8Vg? zk5cbXyz`fE@z4X#((Zb~WH5@D#VV1X*f4;#6lBjyoSFy_J1Qjuuu(iFDgV z_uhTvpP#2^T{|q4j?ijXks5~4*XLBdT(M--TiiM8)r@Ds5F$$-ecM;pxP0+rw#Le& z>a6&O&|3!-F3`mfxiK`R!nnCFJWPFlNa;YOGWb7yoJ3*b-!;w{O#Q(T8J(v^6^YVr zI7ZaVVSpEl`{!F*JnmaY1S7;@ULjEXjsLE=^5;)=NM6MNTylXoJkB0woJhKwx!<|& z{N0(dvH^R(pXp4{v^Yjs7E|vtgZGctf4DHUkyB{#p`hZIG-l!SK2vbu(F^+t5HAQ2<^{v<=+ZSmGGwe-}p2qTvXn- zNDFB9a9iOoNO6OuPT}&thI)k(6z3L0ksj1>!OjAWOy^5;vBA7e9`V?Yxcn4xV3aCf zjc|5)F{1qU^Y<<|ej@UV#l(8Zz@6JOu1;F1up6e5+q=tXI1;t*iCUb$-hcuPREu*O*R` zGI}PX#PXg9w}iqMjcR-H265Z_vC-?qVY2+gSLDdjM^5Ly7Cep(1KWY0x zQ!Q@1dGF+Hv6Lx4#e*2PJ_v=W{qL=F7S@3;sdzptqQ&}Tj73Mvam)nwKaKPSOTO9y zL_!>S4dAx0M=bzeHM2-hTnIQ)@trkc%>(>zj)N~e>r3Y?3?JtReR3`q+3lO-A&;7m z23eF9`>1y0^};{)8r};2$SG8e*nB+12=v>ic|(jy0`Q)tvhxS45ZL#lUZg1u! z5fA-RQ9&;+?f0CJh)}<40U}}hel6aP-TZgfmr7j<+z=hOJliqaH2a*t&FPz=v1PuU z>wEQN!|!}G2C9S?@axnLMR%$b+McW(vXPKl(4QFAJ|4%pu<6bA=mM1yq9G-`K$zK9 zHm-Ns#~Yr2PT}u-0q)=B|MJnFAe(?kkRLM0-7uu;ov`46gY7mkl-v}87||*KKrpG zFv2)Z@vX3Jg4=%3KT7gzCQO>~*lU{!k-jee{s3S27223TE{SQfUZ9$1l(Xy|l*w`M z*dOR}B!RI4e+=VE$UnWA1z(&_pFiF&F}NTp)LPbHijOI%)Kk1Sa#GW|yX|{I(dvZ`?nBjKJmfNXNT#b`unlpn8A*r%MY#l$iryS`yVL$h!U7@$97AJKUlCBuiON8oT|}BqUM=*uz1d(FZ(N=&VNzdYpsH>$}nm)KoG`ODIU3>7&dK{;z`p9-a^zQ4c|B zMHrnvBbQh*tPu~u)_)MebOIZsoN`NYoU+2kmJaqdxCODZcwE7ZLx?n4Kxx-mRlf(0 zU-znc#RpOn$ykz9RSWI|AjD=M&t0Pmon|F51!yO*=%{+}F8obJNHpZ6O$X{!oV24d60v9qFwql~GpWLY%34UHwyr3vvn2zlDYUJfh|&tPqXYq-*Z@b<9pFi6 zD3X|iSr@1TP^9NWwu&CR92Oldb>8K15|oq^_I&Dpcpy-dl#fVL$XYyGc({?TZ#J?r zl?k)dgtoar<|hX0NcZ3Mi+VjKsYHx3+34Vj=~r9loM4vrP!CNN5Y$I9D)jS0=dmfJ ztq!*=`81I)`6==|tH`o+m8jKgO0MNSl}gAeQ784E#w4y;#p;+hadNh1-CFKv*(~R( zB8{H!*jigWKM!5Ipqr#6=Eo`W?-zrXy0-$GHqgD>*b6n7df+i_0z2 zS#7fhEAFg^^Yd9DV&u7~apZeazq6yG|Ra@wyKQyN5{O^#$?DNW=DG@wE>d zN&9xv2GAeFEh87CkAM2q*NkLO?55*$?!|yPAikRYjZ&_qTc-}*MY%JCZdaAm-n8Gt z_##)!9@1zIp*whkNdhXeFX#B<;Fc|iNu%SlvSavg*rW?|T9$1>z z;o2~zjKC|%2*n0o?en=pJ7c?%{GCVi$O6DtwzZ99+sm_7*(fF96Xt*gUUraWs1w!( z9IhZ#w!_>GH^1BK;Sc2R0?OQ>fa9@Un;B+GT@OWXFR=pJrWz@!qjVo7ziq0>H$5nT zGUE@mkc__eqn2%&8W0Funv1J%Fn-{Zd8HxCz5$zW-lcVROhS|;qA0QOuuB`1da3_s z&;RQY1ulpIxa1dFo%CVDCM+pMVs0_~Jwh0Hlf%+i3Kmp#Odb?sfoz@LOFK8?8nX*B z8#>q_qLLXCpv_j0T&c-Mc4{SH^|tPL2eSPV29d;x!O8K9W}v$(g>3ojh46eJ-)ZE2 z(YL6wH5ZZM)C@fXymf{AL5KT5P8FI8KO~!|waD`TY4uewHH7AA(ius_;I%-2za?VZ zLffBsfuVyMqAhp?nzV+s_qZNf$Wj|D8QxcD)l)ukh;_;S87#bIX zTGQ;u>`$^AX#5Z(sQ-DdTT#pXxF&G>*47sHyBEB^>x!hGZ)?z<7{?guf38-uqpSIT zUvU1uyV@o1_EWKf-nAgN-JL}!zdAH@+iGr&!JHsVEnA%W01bo1o^CBF%Px?MT7|g= zIHJRG^6_-V3n+!^WStO2;eAB#GHJ2`^A4~4NTFyywKnUScvfaP}l3wBXqO-IW9W|JZ0$#9c>ED zs|F1stQ&+V3mU2m%=g0)OHvj(4PSL_;`J`26HtO2V3^~U^Q3NHTD)%s|OC4`cEtc zq({qsMt+pt`nYjEv(>lhvPh+6PcZqvDSnM9Q$?7Ry|MTQSDR;Uy^-8BFAZ_1`8UD` z;qrVjhHLIa6!#)*-a+$aHTCu1_m>+*%5i`Q^K z4ICb@>o@b}?YI0(@j=iPlwjs-nmk8~k5f)5AW1!aRHVbF|3pf5k8~<|6sWNDVR_|R zf{zQS%q#@Bf_1{U0P}F@pt1ssBxuvaZ5Hv{tUD#~EmFP}`6SGW=Oco{^cKRxHwfH` zI%OBMT-=_y(rCQmSSW1e_8#dE_MIRUnF0RJDCjmn(hH&vGmk`Tb+LrTIt)%e(C#;xes>UjAJY5oduXuiyeshJLZYJp zIL)#vGRm8I?8cnl`V-JyVpaTY@}0_!1)DkzBy{LKn9*~h;Z7zW}z?m0u7YhianN&fRx ziC?aWvW?w+)(2<49ahOau6c>XI9|*aI61Ag>#AJ59EyJ*9cyn10^uFn z{wZbz-M4!nw9b|g4U0ZHt{1JlIPuMrnU{o2R}b#tkw5(K8hzg2u*(g2wolGtc#(R0 zdSBQEBNwA3C31}Z#SIl`b&F{QxNbt_juQP{b zJ88^?C8xk4<48%=oQM(dHqjxd3$+ai&gwtD$tr=`)Uc(YNj!JmxZH^ z>2eKr`F*opGJ7(}Ed^QK?(k|;SeP@TmOm;$J#^~i+e#&jfJ8LTH8usHf3Igz^paW zJ6Sx47ij_+EUHlikzOB39H(oU1n2 zc_0NAO%?b1eZI~>P0psNS^taDO$@t4d(k?+hl=4ivJw5pa^3LpS8-pXo1$q+ar=2+ zBTsG=-Iqd+{3x1_>C#5|KfV7l7+*-i^G<(c4y|9ZbZjpy7y}HUOq?PM;ZTU74MPbT zlp@Ku9oGxCNfF*}u#!zW`t2?lKWNVn8hC^1@8?d^p+++ObuXX2A0OmwJFJa=uiQ5G zZkWhE<>tZSvn)?^kZLNuTCL(km(O1P`P#yhpiAN|iYA0hSbT+vEJr`$?#JHEGP!@M zz-IC$g3ONF3lm^|Zh zeX7d*d;K7Bq7!5pN=|uA*-&6U-V^hB?c)ZOh8gLyr2tslnsEg8m<#sSJ}n@d(bg*bH1KNJveFdYrM=oYZO7CHQRQ*>!)^`T8& zP&h!3`t!JQ(V_bid{%Y zco@HiPS-AY^#&bae>)zYh`M-(X5a|h@RZNST%nA8G=}2#UqY!8yY*bQ2Ia9l#OlPk z7C&Bt`b(>`%H1uM96L5mPWZyCaQgL2nRc&v8bGi}7!d-!A)nM$6O&oy=Wkq;9nfr6 zMTORalp=~F{mP$d$weDOU!;u&24)+S8igN(4wj*(bfH8v) zAKHe_4Hend%5yD@$NgjJ&%+E)w|tqoioU$y(6Q9&l^mCm!e0fY|h;K z%RKSRTxC}{I>H2zL*;n6$7D(g)lI1hdv{h7hTi(fVmAPdl0%)aw!h-*~Tc)J6BruIw21KX zJI#QxSjV0Vg7;zkAi?i9D*EAzeICEIfz)XlYA7=dK7zTbo!Wa?L)FBmyqG~4W9VZ# z?b8$Qw$FahGueCSj+aMnBJd1-k!Xn#%51#lTvIhN&EAYaUZ@9q5$tUC_xMh5B0;?A zTff&0bNiT`_mQ@o){ay?Mjx1yv}^u-v*fEth)23H;wAS|*Arkm${kuOK>OhSsY|L2 zfwP5+5UVm*^klhU4hY8w4#2nHK@I8zYWg>Kdh!nCSp8@#Oum4foPT9m1B6{TBkIM~ z4;TdgjSJxiBz|mNUcWHc09{SR9!{)YjCep;EJNQ+I3x7>a%A+V)8|if^@gDUCYjZ? zD5*MgZIRqdO<3rJ<6jQ^E#3b@_&NzOth{(S{oG!hz7MUQA3vTRjz3bbP22WD(hu<3 zZ^=b~c#K->WNs2W!R{s+ySABg0uYmoA-Bz%&ym>xLSC->c!U7 zldGw*y)5KVUPO5z)Z~o}Bw~kJ!aKQ*IIBqC%%6S@)uwjOj2I-H=m9gxGVGT%^O-Ma z9G6pe4VTl`88(iBjsx5?gQ2_6Mpd9-lUzaxWf@S=1d$+eP`o(>!=k{etE`%i>2iBV zJmTJ|B|%3c*{$MZA1M}#2HtWp0dZm*?hv6lXS#<3fUaT&y@Gi$FqSI2OR17)*>dX1 z^xw!LDVfF_87GGa+s_dLHNRsLebHJ}8$b)(KzWf|V7ss)3XhV!Nct7#Q1C~zmG^95 zL>DhSn5Wp`!@p)ET_MncS86Adf>#bdi5mkO@+U!U*vZi5m&Eud4sN)<&sr&&EeHi? zADM~^s#EAG{Vsg7mi$6e2FOyH$n^{Mf|JO<(OFcX{2}QQ6Urr+-d_pAkrNppf78oO zOh(;|i;|=;5n2V}BN zMHBniTWJzm64atko<9wzWqFT1o%hu3U-ndv^!Qphbaz|^ODr5Z1!gnm*PR(`oDby}EQR7%m6-Cfj6~@hbrbA8$XrKTS zV^RA)v8Fls%(1KrbncR}+mvC0zb9F)-A01tYkrNcrV6L|!W?kPaW!nZYBbrRmFf)L zi|J@YXZ0wf6N{dXmARW~>mm(%2x-0EqF1EE(PD8^1>R{B+vS(NoucY8*nYO9=*$fL?~6H496X%3_ZFpOn?L0Ktjs-gecS$v%dm@jPDfL7uG>0Ri`bY_I^9 zx5n^k&wdx9&SugF!y)7UvIkY1hQ)A9Yf$3u1)bN)8VRdQn`F!9PInn3=mg z&pbG=*_ggO;9!;2Cj;c1qp>43aJt7(1-sk>Su)rSft zW$|*(EcFQ4JB91Yz801Au77GTXb;*t>f-`9V2lun6KYF_?{OjeR-r@IWo$UOfte3N zSSnetySN-Su|20USqd0$2JW!VG0E!VQO3ep*WS2i0P4CM2Qh}(&^A+Q*j|%ex^*FB z$EPa4T#iJ+(;>*DVv`zTJz_1hFw~)$WKNE+n;e*@N_N3MC){!T%+bTj=i?qufjYiS zAL?~(>*WGz$7YSjzXLE#9+vFDBwBO{)jYI=dJG8G?wLZQ4hIod9xY)BSW)OSNYW0B58l!*PnKVdwAmP`*) z5w$hYoqC;GG7c6yvg@k$Cs&dVB61+`xPOZM!0=c^#c%Eu#Mp0UG4kA&(Qg)m9)X1| zzWyLwy-H`M*w_UUV7v1O%RT_GyHu z`r&<#&NssMy$^7}CjZb;CL@jZBz`|rq5>fJV+qYd+uT3coQF#xRq(?FC4e0I_IWcL zuAQ;jW%i8W$|}5-3ke5&a1OOGIxUP^zHAdyLRixf4v0eI+$`9UesiN|>r~V`a*U;6 zE{_k=?<(*hg9@MFM2z33jMB4M+2^ws=H0myaqKbQ2E}>ge!*s#ENwcC&|BGl3NwIj zRZz|Woes+F@UBPBeF978uIGA_r8^cG*GwoTIRr0fF_&iNLkiYtzHxOg&V%5(MEb9K z47gG^z1W?u*g0>Wz)HWDn9}Jb1oW_nLOr_6w===Cj7%*Bk^H|mjYZ0x$;Yg|95N6j z#?fv>ra+av8PkFQ7NB_6I(b$6ei_^B>aKh*1Qzsvf=6Khu{j-`>ZKnq> z}#D2ch1=QMek z_pN)e?Ro4T5cp41B?d=N^XRsq`t)BPwt6VDCse#VO6jHla07| zaRyx|rs;~;)`e47UQBFaPi~E4OB;8EVsv$07op|fL*DjXGKJy(#ogZ%oyLDI!Nnxc zJanDaGGY`kq>3xCCGB!Q&Fsu; z>|-@E&^~smxej5bgWLJW@%qjF(~8ygJkY?#5%k}wgK1ivu(&R;MI4q5q<9UNC^_AHc%jAt30$v++9b+$5X(#LhXkmJFbcckj`Crjrf8RvJ-UG*IW# zEah-#nzy1?ESVnDXS;l!;j4>cxn)+GaTm)`Exu|jjV=FLAR=giL~ea$=x#NImg{vm z%7P*h4geeh8xFY1jy?BJY9if+>@vcprBVt2&rJ^1C}jboNmh-XuK)}5L$0Qpdwnp# zZmpQXK%qTYRE+QIsDunT`WX-nQYk@(-(}FgRFPm{K9|vjMb2?6$EqXOI!5>yD%bv& z_ZX7{&1_Q>yi>YbX0j7@`Z== zxgH?7K2Ju<@p*Yris!$N1QSMP$BRZKQW7Au28$|umJBB)Z!l$x;6F^~3N+U5LjJR3 zXy{lW>MX1BL6BSt@}nNflePWP9kjj$-e3L=_NyZ~eF+Bn2Ykxi;kRuC_i%N7xyGQk`>u=AYM8f+5d7~XRbKDM<*nf@!yGJwhIU!Bba|U-aH*iOy*XQpw?q56-Am>cya7Sr3%7F`bhMxJqa+8O2B=weZ3@H`<$G z?Dw3_Dz_w92xS0t504!!qtwXTdX$eD4VC8G@iSq{BSW~_+I%%v-ZYKOrsI_%SJ?LX ziQOrPlKmWrdKx{>wYD;lqpK;TW}xNO@1+oU4Y4wV2?E@ z(7fe>XG);PKg@WYItX#KfsNP;Cc7#g!s^}C5PcUy93nE}?YLl5@jQ%{E{KEe*ytT& z2sszy_VA2Np?T8wuxabPW2%PnCyrn3cX#=cfO*>`=F%n&Y;Nu4P35!!c<>(sKxL`R zF2QL!1N?pIylX!{S1xWQE^XszzP`M`q#b~;cm`hffdeyGa~aN;`r@mpl?q`4!vWk3 zkoK~z04m$6H&pviOaEUVXC4jJ|HknwQ)$A4d4a44xT%7H$X}W%8_{D`v zxb1b~gz8E7*W`9JLW<1fB}H3PQn$`JLni4UM}+U~VFj<%LVUP&0BmxnoaP<4KN;S7 z&;v_QWp>l%6rQYBN<0L9ZG;Utscu!>ytXN_wp@Khx=8FIOB~zgcl3LAahEH}q4@O2 zV`Pj)_SH+e+Zhf{=So%sX_uc-xN!8rJ1$?_i7_PG%`GAeSk|o9v=TK zE;x&cKbQB%{o{hCJ6qdvPw%PLJgg1^-Ojpk=Abfx`;C29x|#Nt#X$bXpu47&WJ!gL z_)=}T$`0ABI>g+nXD2ZdPrTaCGv=6gq0U&1WQcKNb;#?9=J*mXc6@{TAAVAkp#5WA zuOQ-rB_w0uM#ilA4zZ9iOsTW?l(kcb#w)DQ(a_U+-tdKdsHXh;ZD8+ki#m9Y7*!c2 zuoUma+}&{xN4yPI$6h_>^5w>zx5cb)Vq8n~K8<#J+$CIm{=oA6wyj-ylpkslN`gey zSGLx2FUnvgAmdrG7{hZrU}0;^m|6hK(BncbHM_Fc#TGS<@~Bgi>nl55r6KjLhMm^& zRAP!J?rw0>xlz0t)=+>HBi?+S>BxPtNB3=rY=l^VV=0Rm&k~O=-;*xO4?LxhHQIjEs;;|@%kO}No{O`1;w^~OM-7btJ}~mIKyQDC35u2^t_WW zdKnyE?-ejItT_^PwX|qH$HMa^<+glfzHL(S042L@``8tIvRoW3AI@o|P6-Zh}KkG8Hf1U}fz!p=UuZ zl(K?vaU()%fmeygDH14bc<1=npDvI`)(SYE-saOmUx$-4RxpJxc-cG}Z^^EGT}!#^ zQ)6$-?;$lfn=$^BoqS8dIz4Nul>6f5yQMWJJHH|M>WOc9>vi|*-sLrKMoTg2cXqQe zB`8gBG_H+b)gx4NxGv=nJNRX9)@ej34CpvRGd4MVJ_;SGPKCDURA;IoC!0VQCliE& zDBrC~PrO~`YR-G~3Fl`k4M+K2;3dJY+g3K-tk!)rO_{}V4UI*I2gZfvpXiVlK-5L$ zH?(@KP33$3q2~9T{k>^as?)i4e5rk=hC{f{AoC9H7nuIWT2UinD*`C z-TN2Z*V)_0*3H@97X6>))yF_5b_{x$z}^-N;+;DQWu50wb$2eYA5}9SQG=+U$~pgO zWc$%{V{7qD!@OI{Q#R&d|DY8Vg<;uPnTh0fJI0z`K7& z5jxvMh9J44jJ!?`)M-^gfiVPzDXX-Cb*wwDjd9zBX_GG+bJzOTD&byrScEcbu1|=( zGW)?Pet#1lZa|cE8jzopIlm}+DtJiy#q~zF7S9;vQEnM@i$32=Y@NIi4C2_X90BQu zxEYAo9PcVGtIt&BA6^YI9ppUU8S2BjB7ED_gko%bx>;>Bw<;c&dhaf(TZ9k!N#mJz zQ}>fh0>$3S#-q_u$#2NsDW=M&~o=Q}J9`}Rb|ekdIr*sj53 zXlJZ%3jm+FNKy8UT|2EuUApxeUl}eRbojff=E7v8Aub08iyS5Svsh2X7++dMOgYLc zT3a30o1ab{AE;yJx#S*Z!fFamsClS=AO!vO6+}O1I@bQ?drCcr?pB(qXqVj&h5-|( z1|(pU)6sDDd>vX{wNz+Hou^HaJxLXpl7P|%T*A)T8!hg9!@)yR z2Vtb5u41HOr9Z6u0SXHEX1c_Fa$Y#Zjz!%#FBI(D&y77(NW`!=7S(uwJY&9|H5}1(Wi{@wnD|7=kX2G)GosBHAzRN}b`uDDJ+1%Y z^{BIP9U!b%PB7}}rTbPqETfcyD>W(C3Z zyKr@D{6xpB*&Dwz^?usIN_%{KzcS#*`MkmQ*PW+Lp}%Lq6p27+13QsA?cJk)9+lbZ!&%SdCw>ZUi%~3#9 zmR98*Scu_;8m`B#AI;Pk%`1-9jh(PU=6C}bf1V>b+`k#~rbInnY1Pm_0$wmuWCv4v z-+w}>0Dd>+;C>Scyi^OZDslht!>a7o5c_s!^He)(&#^>!xVJ?a{DHLH?ehXDYnSin z$XpSZD4$`stAhs^Mm^q^c9n}M?s>Q1_VQ&A5r zU^>TnN?7uB+g3_*D$F_5=`^@7r^ZW1gPN8ygY^{+EId{}y8R_9`hX(JZ@Vw~P$!~c ztUzISG{h5GU1|x8Ib5+8y9inFL>(CWQH#H?-fy!JA?R#!%gAz6uFQI433j3QHDhm# z*vDwbfGQWpKAT!lqsTmYd=5)7$y+iD-r5*>bj)=MwUWp=$ZIVB$lrOH5r`5#T2YDI zn8@jh)ST9+2u53(06BGj-uqOIBVejc4I|wEP4ylr3dGQzvkZ~p!jhk)uQz`}KAkfw z&b48Zm|KP8iX@+(RD@`JChVB_y$5ZV!6LesvB!}{ zkDy<`cM*#;q9zl5k literal 0 HcmV?d00001 diff --git a/analysis-master/dist/analysis-1.0.0.7.tar.gz b/analysis-master/dist/analysis-1.0.0.7.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3f66ab9382ee733f295e9a207eb063b79b6ec2c9 GIT binary patch literal 18671 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

$bjEl7R#`MGY!uf+iK!mX!t}zbC3$7KWy@# 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