From 2a771d453b842c49943e8da6498c7dd8fd2c04e7 Mon Sep 17 00:00:00 2001
From: Philipp Middendorf <philipp.middendorf@desy.de>
Date: Wed, 16 Feb 2022 16:09:58 +0100
Subject: [PATCH] Add Dockerfile

---
 .envrc                                        |   1 +
 .gitlab-ci.yml                                |  14 ++++++++++++
 Dockerfile                                    |  11 ++++++++++
 __pycache__/README_cache_main                 |   1 -
 __pycache__/__init__.cpython-36.pyc           | Bin 946 -> 0 bytes
 __pycache__/__init__.cpython-37.pyc           | Bin 854 -> 0 bytes
 __pycache__/app_database.cpython-36.pyc       | Bin 4355 -> 0 bytes
 __pycache__/app_home.cpython-36.pyc           | Bin 4623 -> 0 bytes
 __pycache__/app_home.cpython-37.pyc           | Bin 3989 -> 0 bytes
 __pycache__/app_initial_cond.cpython-36.pyc   | Bin 8151 -> 0 bytes
 __pycache__/app_initial_cond.cpython-37.pyc   | Bin 8132 -> 0 bytes
 .../app_initial_cond_grid.cpython-36.pyc      | Bin 11617 -> 0 bytes
 .../app_initial_cond_grid.cpython-37.pyc      | Bin 8999 -> 0 bytes
 .../app_initial_cond_grid_LT.cpython-36.pyc   | Bin 10962 -> 0 bytes
 .../app_initial_cond_lhs.cpython-36.pyc       | Bin 8833 -> 0 bytes
 .../app_initial_cond_lhs.cpython-37.pyc       | Bin 7934 -> 0 bytes
 __pycache__/app_notes_and_tips.cpython-36.pyc | Bin 2582 -> 0 bytes
 __pycache__/app_test_link.cpython-36.pyc      | Bin 2320 -> 0 bytes
 __pycache__/common.cpython-36.pyc             | Bin 2862 -> 0 bytes
 __pycache__/common.cpython-37.pyc             | Bin 4303 -> 0 bytes
 __pycache__/main.cpython-36.pyc               | Bin 731 -> 0 bytes
 __pycache__/maxmin.cpython-36.pyc             | Bin 1336 -> 0 bytes
 __pycache__/maxmin.cpython-37.pyc             | Bin 1337 -> 0 bytes
 __pycache__/maxmin_grid.cpython-36.pyc        | Bin 862 -> 0 bytes
 __pycache__/maxmin_lhs.cpython-36.pyc         | Bin 790 -> 0 bytes
 app_dir/__pycache__/README_cache              |   1 -
 app_dir/__pycache__/__init__.cpython-36.pyc   | Bin 927 -> 0 bytes
 .../__pycache__/app_database.cpython-36.pyc   | Bin 4336 -> 0 bytes
 app_dir/__pycache__/app_home.cpython-36.pyc   | Bin 4604 -> 0 bytes
 .../app_initial_cond_grid.cpython-36.pyc      | Bin 11643 -> 0 bytes
 .../app_initial_cond_grid_LT.cpython-36.pyc   | Bin 10948 -> 0 bytes
 .../app_initial_cond_lhs.cpython-36.pyc       | Bin 8819 -> 0 bytes
 .../app_notes_and_tips.cpython-36.pyc         | Bin 2563 -> 0 bytes
 app_dir/__pycache__/common.cpython-36.pyc     | Bin 2843 -> 0 bytes
 .../__pycache__/opti_models.cpython-36.pyc    | Bin 1322 -> 0 bytes
 requirements.txt                              |  20 ++++++++++--------
 36 files changed, 37 insertions(+), 11 deletions(-)
 create mode 100644 .envrc
 create mode 100644 .gitlab-ci.yml
 create mode 100644 Dockerfile
 delete mode 100644 __pycache__/README_cache_main
 delete mode 100644 __pycache__/__init__.cpython-36.pyc
 delete mode 100644 __pycache__/__init__.cpython-37.pyc
 delete mode 100644 __pycache__/app_database.cpython-36.pyc
 delete mode 100644 __pycache__/app_home.cpython-36.pyc
 delete mode 100644 __pycache__/app_home.cpython-37.pyc
 delete mode 100644 __pycache__/app_initial_cond.cpython-36.pyc
 delete mode 100644 __pycache__/app_initial_cond.cpython-37.pyc
 delete mode 100644 __pycache__/app_initial_cond_grid.cpython-36.pyc
 delete mode 100644 __pycache__/app_initial_cond_grid.cpython-37.pyc
 delete mode 100644 __pycache__/app_initial_cond_grid_LT.cpython-36.pyc
 delete mode 100644 __pycache__/app_initial_cond_lhs.cpython-36.pyc
 delete mode 100644 __pycache__/app_initial_cond_lhs.cpython-37.pyc
 delete mode 100644 __pycache__/app_notes_and_tips.cpython-36.pyc
 delete mode 100644 __pycache__/app_test_link.cpython-36.pyc
 delete mode 100644 __pycache__/common.cpython-36.pyc
 delete mode 100644 __pycache__/common.cpython-37.pyc
 delete mode 100644 __pycache__/main.cpython-36.pyc
 delete mode 100644 __pycache__/maxmin.cpython-36.pyc
 delete mode 100644 __pycache__/maxmin.cpython-37.pyc
 delete mode 100644 __pycache__/maxmin_grid.cpython-36.pyc
 delete mode 100644 __pycache__/maxmin_lhs.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/README_cache
 delete mode 100644 app_dir/__pycache__/__init__.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_database.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_home.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_initial_cond_grid.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_initial_cond_grid_LT.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_initial_cond_lhs.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/app_notes_and_tips.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/common.cpython-36.pyc
 delete mode 100644 app_dir/__pycache__/opti_models.cpython-36.pyc

diff --git a/.envrc b/.envrc
new file mode 100644
index 0000000..94840b3
--- /dev/null
+++ b/.envrc
@@ -0,0 +1 @@
+layout python3
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000..316b494
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,14 @@
+upload:
+  image:
+    name: gcr.io/kaniko-project/executor:debug
+    entrypoint: [""]
+  variables:
+    # To deploy this to main, we need a slug, not an SHA, actually. Need to fix that.
+    IMAGE_SLUG_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
+    IMAGE_COMMIT_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
+    DOCKER_HOST: tcp://docker:2375
+    DOCKER_TLS_CERTDIR: ""
+  script:
+    - mkdir -p /kaniko/.docker
+    - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
+    - /kaniko/executor --context "$CI_PROJECT_DIR" --dockerfile "$CI_PROJECT_DIR/Dockerfile" --destination "$IMAGE_SLUG_TAG" --destination "$IMAGE_COMMIT_TAG"
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..395fa61
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,11 @@
+FROM python:3.9
+
+WORKDIR /app
+COPY requirements.txt requirements.txt
+#RUN apt-get update
+#RUN apt-get install -y gfortran libopenblas-dev liblapack-dev
+RUN pip3 install -r requirements.txt
+COPY . .
+
+CMD [ "python3", "run_RAMPCT.py" ]
+
diff --git a/__pycache__/README_cache_main b/__pycache__/README_cache_main
deleted file mode 100644
index 8b13789..0000000
--- a/__pycache__/README_cache_main
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc
deleted file mode 100644
index 2f0fb344febfc5770cc76e089c6db59809b3120f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 946
zcmY*X&2G~`5cXdj$4#1~KlA{HNSuOd+^PpSPy}i~LaNH4t%UZ#YU`aOo7!IE-K33=
zaPAxQ1-SA!zH;IfDh`aDRw`b3c7Ar|oB4JRIvxM}-_x(7hGG0R9(^s;-{G%*q2LBL
zV}q=AlUTKF6Ng)*0mjUQCN#LcW1w_)4Bp_bFnN=Eymf1FpRe)utu?WE=f)u(c(WF1
z@pasNx>oOP)H=1cUTa;_<vr5lebR?6c(e;Wls)L9?1MGi0B5$zH~1#sy0I#oZ}TTN
z=EVA8;)yM8o*KiQKiIc%QW|$=STsYX6lhg8qbbW#D;je>4qg}CFTwfy;7BGJ)8ZnA
zqWS5=A@B(dt-_ybodxi1E*6+4Qw^ym-a^1tCUadpzY<(e4>>GE1VL@=4n!)nU~!-#
z7Q^BG&?=pjC6FV##?U7Hc^=aXrhp>ew2F}Ksxw+eDko_rpc&O{qRxsJpEE5Ip|Clb
z4&-=nlrNQLas1#qk|{?-nX2OHiPWHW2WKKv1D5i^F=pyIQxR{(G^>D18-YGzUzXsc
znZq~-H7(j1n?P_s<Iv2#s@-k8U#6yHtCDo8lbA+GluVHaMV!iUAB$uTk7G8EBI2_w
zqZuNIYvPQsMCnmljZA52V~n^8@&)9ji@0MkA<xu2!}Cf}Brm>T(ItiJ2#^6BuWYI)
z7a0O~>NFb5>eQ0hky2$t3mqeu3a}Pu`I4?2J`$zxb$cWh#5=~cs$l8HY$@mZr;&GY
z*jn7N@EnV)aKZNW_Fo-@BT$!GW?>dH4OFh~0`f3tNk$VMD~fXj2~+yP8U24hR7)9$
zlvdAz(wEt?^xh<r&trINA*$L#;hDHB$97Fzwrg9a>saPG+Mel~zU7#>tU8KX+x`cy
Cfg_s$

diff --git a/__pycache__/__init__.cpython-37.pyc b/__pycache__/__init__.cpython-37.pyc
deleted file mode 100644
index 265597f3006c4388412ec2cb46ecffad3ad16d1b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 854
zcmY*W&2AGh5MFyXn@yTD{exaORN_Jq%eLYG2a13eBqRg}Kth&~<*p}*Q}23NJ884;
z&^M?M969p_JjPx*@c>+UVm56hu;uam`uk@5yx;G7xNiRW`RPaCdA}OtdUa5FipPFI
zAw5a7$1ZQe=+gFCASr8sHw~c;E$MH2D1&WJwq&S?Y|BV?&Z+Fm71=wdV_){q0v16u
z?XZqq#k<Q_mUj=e{!&|AY6CWa0YrQN^y?Y~({;Hf*X70;1v*`mn{w-njOjOm85@$k
z^M*HmBS-H|?Ol+hYA3>4aJFuz6H%g8wPtP<KdJ^F;}6f`1CtfPsUr<l`_+qmkYgCq
zsylJ6h~e{0&9Tnp4syq$xq_3zl&-pcqNJPbOPH$^;-ztKN9D>Xp<|m04f}gTS_iqv
zpll(Rq0iQ5rRGP%0!O?_6Jdi(X1s|sPS(l53GT$$zOU}SEu6}fMRF$JF{7P>a$%j&
z`r371a*2p0x3!NiyhK2%Bx{#2D#1>wULnR1Uy&b@GHQ5i;wK3^VOx#l6PIb8;si{N
z4O$j7j;mN|O87VC%QR(OQ53vD1a-=SLwur+IB$C4y!J81LJQ>_N){sSNR8PoJ1a2X
zT8>lEM<PAuaGC<PhP+wZrll$nxW6pp+B8`U=BL)yEvK9Y<{zp#i(X@-si{LP7G~zY
zdu1Q{S&9phe875}%*F2R-oppUA=qPQilorO0XLU(gfb~bR`5(}%aLlF3G1$%>Ho9k
z&KR9=-h3(N_lrdxJ<g1rX?Q{r)!so75!^KJLxS56eM-WBl2x=L(j{FQ(2xYA=l=!m
Cgau;&

diff --git a/__pycache__/app_database.cpython-36.pyc b/__pycache__/app_database.cpython-36.pyc
deleted file mode 100644
index 5205b39ddae3a1fe105a5dd5ed55e3e0a7cebceb..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4355
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

diff --git a/__pycache__/app_home.cpython-36.pyc b/__pycache__/app_home.cpython-36.pyc
deleted file mode 100644
index 9fd3ca98d6f255874d0c85e774f6ecf4f5ca4882..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4623
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
GTK@(nFP@|T

diff --git a/__pycache__/app_home.cpython-37.pyc b/__pycache__/app_home.cpython-37.pyc
deleted file mode 100644
index f3220d90c4f76223a96107394dcc898857e46dd3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 3989
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

diff --git a/__pycache__/app_initial_cond.cpython-36.pyc b/__pycache__/app_initial_cond.cpython-36.pyc
deleted file mode 100644
index 4fd19ee2406b0dcc511a2f1713430735a85c7f01..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8151
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
H1O0yh)KgP6

diff --git a/__pycache__/app_initial_cond.cpython-37.pyc b/__pycache__/app_initial_cond.cpython-37.pyc
deleted file mode 100644
index a78d9f475d5d9da1a732f9cda2bfc55195896009..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8132
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

diff --git a/__pycache__/app_initial_cond_grid.cpython-36.pyc b/__pycache__/app_initial_cond_grid.cpython-36.pyc
deleted file mode 100644
index 8241589394e09bf34178a9e353bf4777e848a833..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11617
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%0AU5vDiwa%WQts{-HB%8LZWunZk
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

diff --git a/__pycache__/app_initial_cond_grid.cpython-37.pyc b/__pycache__/app_initial_cond_grid.cpython-37.pyc
deleted file mode 100644
index 13855f1fa1004d6505efd6a5aa488dd95a107051..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8999
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
M$<58soaCMSH#JYL`~Uy|

diff --git a/__pycache__/app_initial_cond_grid_LT.cpython-36.pyc b/__pycache__/app_initial_cond_grid_LT.cpython-36.pyc
deleted file mode 100644
index 6906b18a90c8100b99685ece76dc93e8bd18c85e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10962
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
RtE0ap;-!|;)DOko{ulVvb4vgK

diff --git a/__pycache__/app_initial_cond_lhs.cpython-36.pyc b/__pycache__/app_initial_cond_lhs.cpython-36.pyc
deleted file mode 100644
index d9e428ac4d03c63deb2a47a9dd94e2da37444898..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8833
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
JXk}I9e*jpgpRxb|

diff --git a/__pycache__/app_initial_cond_lhs.cpython-37.pyc b/__pycache__/app_initial_cond_lhs.cpython-37.pyc
deleted file mode 100644
index 215c07a15d1137eae806701556111ae687651ccc..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 7934
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

diff --git a/__pycache__/app_notes_and_tips.cpython-36.pyc b/__pycache__/app_notes_and_tips.cpython-36.pyc
deleted file mode 100644
index e8a2a854d424bccaab1764f11f41ff240378ed88..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2582
zcmcIlOOG5i5N`K8xA&E7mIT7f0Rk-SGmA)wq9`FNM5GXqHVA2?Xyk3z%y`$`?%19k
zW)x1#flH9!k_#tp{0sgBm%btn`2|QhQRSIUb_5dQz_jeKtIJhim8-tqo}W*CYyNTn
z*ZC;=Jv#9_gX<eO+>b1ZWF(o6T1>{WqT{U6s<22_TUA+W)nvU@mkrtcHiGJYL(Uwr
zo#=?QnlcHp+6mc=oc)_D0k%Io8FNtCpFd)9PR>7yQMMo#j#zltl#BAzM0R>2qmzp`
zPT@E$myTGFk9TLLcFW<-l6*m)mFMJ(k1E~xh;=JC*ttl)^vv@4iRGCo%P&vadSz<&
z>eTMFsom>SJ3h6$K)Y_^B!X_E!{i(CO~vF}@*>V}%Xj3v_^jab-cL2f9#_6c#H}-u
z?M5r_KcUOI`vh+%T47~H6oqKxCb^w+-&2kkq6>Uz`aBgm@2FhzzJpF*bFT`=O^5f)
zfO|tyJb=R(%>}A;!E=>&jLo>%Gkwqdg%lp#Do>PieQ;dJoTojJcfqamdw3R|b9C7Q
zaj5i=ODG_hD(`ZW69mgslY6W7`d*nF4S_<B7TpST<#>V!a~N<XL7YIAiGvf+GGpO5
z1Y@~{!dM>y8KYX~p8#myu|Tl|k0SLv$q=6B9P$T!Wfiy^nbDB;wXjlUkUK)Oo|=qf
z#2Eh&0fitfbV&t+2<fEstn*~_nBon&Lg4*eVi*z*L7M`N`H;XqCC~SBOd2MGA_eXY
z;z&N*xx-zG2y-_MUf`?Tcs|6Oi$kHb*wYY@n8K?}IYAi<NyckBK1!z&w2O*bn*n0H
znv6K#B_H8-2R+C!S7Y#FxL0{fr9!_LM-|5{9PTVm-RNO-f8iVEqkZ-e3-gEgL3KC!
zC0dEgYR_l7WMAMiUf(R4vUD;`PY*V}bYR`aq1fEqy1c!y1Ma|^Vx!O)d3zE7*bOVP
zqMb?Y+E^!RnQ;DCnA)N9LhDJKZOZEgDzz~ufa<wyQ#|X%@M&@lwLIQaaeaw!QxNsY
zCipjsljOe!7a~}RZH=O-<Am!5t(!DGi_y-|mYfhDPMrSlzLuZ+YArax=8?h<+sbRe
zR*#h|Yd5JgTg!XGskBYq+NKs0DhG=yGpQEN-4z+Ms`oH~qwhWj<N+J{KNN=_7RS|*
z8i_@Sy3~49RpT-XrA*tN@&nLV{JVunvHP)2urP@>P(Kxg!W-loJl?9qH{G7+(CGm7
z9(F$&D8Le%h&+Y$(VsVS4%U(paE>@?pfnOsQGl>KV545ap2N<=7NhPM7<)ilOU73@
z(g+{G#8pom($YDQTp%0=>-=_yjs**2y9jzhMB~_2x$@{=9JgUg(Tmg?hvbI#yVP-G
zZt7YP=yO^hy%VeE$e<QdPzWK=oXQKtMkK1T!WtA){DC?~KYxWTuyM69As9@_011YW
zp|UwVzK*~xd&7xgk_OWq0J$g91Ee|PDNNaz(da_{k;_-P>vxf%1LX!xCnz)A0DdDh
zV8V{M^6Kcqzp~_0#>;wpPmBB@umhG<S@*)?N29ETu5H!sQuDSNx9rgD8a=9iwzIYN
z!R5*SmGS>a+oJ}_w>CE?i>)h@#ieaKiw)3P$grHBm-T1~zd~Y7b&yVAtp`*KWmMLj
zA8Hs?KHR)mRxfQ9Uzhb1i5T0UR@Mee`d-;6gd`#_>lp%7`Dk&!k7?-)*QjSuc{D4u
z>gH?8L*`bN%VjBCuT9K{?(uGN)Nx~~AR4e0oXT4GI9ej3vPvw4PztSlnS>YNcq<7h
z8LwwZDJ;v%jyf#kPq)g&=iTk8y-|3nj6c_9d`AUZD%s7lt_7BWKfy|YpNN{u=C#bo
zzJ}{W?rsOCCYx(iYt^_KFEe~9^xtgE#Z6XcRknc796QhIC-w^!l*S9}Y<!9(EXL<A
DIYav;

diff --git a/__pycache__/app_test_link.cpython-36.pyc b/__pycache__/app_test_link.cpython-36.pyc
deleted file mode 100644
index bcbe650129c0c9c8100b570be9aa5937b104357a..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2320
zcmZ8iPj4H?72la%E|(NZSu!m<j-xPboP<ea$#tFdkhV#yx(?7fK$IZBrp02lZ%B@`
z|1dk0C6zuYR~6`~mwtg>`WgB;=2rCNQ%=3~(*9;h+d_7+@6EjT=FR)R5BmM?_V<7J
z<9~Xd_iyjYvx)Vm_?mw*&m)gm?iDO%%&s}sJmzlg=YA2yLD7m^MHq*U7Ub<Xf?SYy
z;x4r)%-4!u+*|Sb@c^_oXzTGhXf2BJYsE&qQEbMW#r61lF^q@Bjra!hME7V*3`KNw
zlR9=yUBFwkcEP6nf>Dq9cn7pj*Jy(_>H6Oy8q$r+z{zgW%}eH1x5Ng$cFEoP_6sU@
zuhHvthu)y=OCP)2^d@e4oksLAZ1U(W`Vsy3GPF0jlW)^qoaIxW-f=jbFnX8XlZ?jn
zwq$?he`fI=(K~uWwCEPSf5CybES_=^P=`JM#o`ZFcn2K+g3~?P{m#2!@%HNMJGAE{
zoQ^4j#C`gSlX!C_ao1@NVEY5;U?N=I7sB?R+WRhidPpC+Gb0KPyz$ST+tiMk8PrOa
zI+@JNOv|bSWj#G?s(h|RB8$3GdhDCl=Vd+DCj4TqEp8p?REsCiQ3zIrpVl=HpQhuM
z2_ApG{~Hq=JpSSvGnk4}D2OIHJ<Nq!o7Z`jQZmDhrdy|~5ecO_jXTpcS@O;|_EkC^
zr6rB_RaK8FH9GGdh+JfP^hoBSIS=md?cI%okM`=**uP(&nvl|FCMfnF+D#@(EmRDt
z`g9zb)>BD(X2O|})0vLDxh%!w<$CR~QY6$jRv=z&4)j?r;@*<;WlD11n2r{w`m<b4
zOA{8Un#%IgI51q2iL#l@Nr}?58hg-0#XQ%thKd0^at=}=%Skn6>IQ;!m24d!b4OM;
zEpPbhh~=$f*3PN|F<)vt)Mc{TpZ8Oju${xX*2vpZlj&r6+B8qnLYxnNKS!F7(~(Nc
zsfahBzgUryCYSJi`lsPPe*3TU?|x~*C1D&ogN$Fu5+FS_t&=pL3llV2)ao|uG+w+8
zO)E2;ckvp@lNXewf=*VIIz_P6`KI+|M@|%s+F9m7ZCOQ;l|i~16HSoX5`5E#`8p{o
zk`pN?^C4#+ivxVW#@ApndD>fe3${REqnOzf#CHHHN)_>PN=@MO1-M-N-Ba&@``>K$
z>qe+%_axohyZ`Zn-F?v<>#E+Zb6cZTtz{u0u-lwv)kKyE&`tq!K!NRblBu&sr+F?L
z7uG~qRlbYbPqcu|sI23A^_l6vs_SH$eu{e=4&Zgv`+zRhnQa{VSZtZjt!r2;Finpm
z)zjXAr`ggquDal;H2`#3aMV<#b7u+0Ae*&jRy|FYmGC<dnh?PABNj0Ap%sWwH@VD?
z8?}w?%dobwY2kDC$5<@b@_xeI+B;&{bMi0wGhg!~f8iemy0!2zX@dp7j!Av#|A9XX
zp0ywwE`kLnJ7hy*i;&u%c)AT7QRkAwlkO8W!VPGZI+q%rgq4!W{&VXc64#Y>#<+Q4
zIwz@0Z2p>f>s86lFsY7{3F^L5IFC%{^P+6x_9LlF(KKIy*r)1g>4uEW2L=GI$#j&!
z)Nz69SQCN*m1#m(*^LR1P;EN<sM1HaMwP9vaa-*GsSg0+^;b5ywlSP0ak~^xle(&%
zvC_`BCJt$mfc(SsbgP$b`z`b}LjbR9voqiUV92hq0gJf$Iq1*-hiCkj=_VM;dagv0
zC|e`S2QV9U*xe&h3zTP>Nzo|V7s_T)*{qwPl|VD%pzYDBbRFhXmaSMbUF26;fhD-y
zsK_b^YfRs?Q4g(37q1YC3RK<8I&>jYeJfzw&iMQC#DrhF>2BC(Cj6BfO85;xmkAG+
zQ490*titaj%FslIX?DEq2wR}e^DAMq?W$a9N1tFA%yaPz8-u0<=&>FjvIuXFN4&@G
y@PKnfkt2>htggNx4_TM>@CAr8Ah`B>@pk<I@8Nu}9Y9}~TdiARz_tf3_WuXhTY?Ax

diff --git a/__pycache__/common.cpython-36.pyc b/__pycache__/common.cpython-36.pyc
deleted file mode 100644
index e60a5c5869be087c3a80d1227229dbb9d1193697..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2862
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
Ow6k~4`_$cb>3;z$G2Ng5

diff --git a/__pycache__/common.cpython-37.pyc b/__pycache__/common.cpython-37.pyc
deleted file mode 100644
index aab9ff70aa1d5004fdfd8053feeeeea03151095e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4303
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
V*5|D1cwY5Guk4-lD&8rN{Ts-3NQ?jg

diff --git a/__pycache__/main.cpython-36.pyc b/__pycache__/main.cpython-36.pyc
deleted file mode 100644
index 0b2c3b5b6a4600f1a0c4a7d4537dce4e28ae580c..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 731
zcmZuvv5wR*5RIK|Hn*ESjt&|MM3dq+i>{zS2niaRqc~_Roh;vu*?2d0BHKCG6W!AC
z2mAov!C$zg;uokG2XVRrN1mBCvHj+aeYRN4njhaT_cTd<CU?dJ<Ci$y77Zjo+C&pZ
zG-Xt$EY%syNX*lAvd!6aj0$!n$#y2E+c~6=9VkX6Odvnd4LMMlLh&Uz5VnxVaI~ZL
z1FpUYGnhm9mEvjiBB>U?kT0pSkcz$!1sdLTT85JtDWkj+EnjyALaxOpt<3pN*^7-l
z#hjPMhhp8R7OXTO9c&wlUiiicE!QL-j3atfo4ms5o}l@RI(CIU_Q{r9AlgzO2Vx)j
zG~&P6ik{yTH8O&_uB*(ZxR2$n*mna`N(1hr@{P?fT@hQL`<~bty5E=ednc`{uf=Nh
z^x0YcTDqO@`nqq0m%Qt}(h3*UR_LB<XdOqTr&>7wFS)jR=SABpC%ozm_g&XwDatJS
zeJDXWJZjHl6C$sRtVvdooX$v|+7eMHIFB1Re|IxoEyu5-VFL1M*o3U<oUcyU!?A?_
zvDw(KQS+$K#>c_#gK*6fWRL2lSu5#Sc^8Eg5j)0T9VoMLO9e)Rqg#wOg`%#+ddKp&
wgYO5=CT|S7+mhq8aUN1Tn6a04%zRY!Tz4?E@<lAqMWGMKj1*Z$9+w6A1FW{mx&QzG

diff --git a/__pycache__/maxmin.cpython-36.pyc b/__pycache__/maxmin.cpython-36.pyc
deleted file mode 100644
index 7d2b89c55943874a5455c472f1fc4498177c8814..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1336
zcmb_cTW`}a6t?4}NwW(=LgVrPeys#+JA{~~fnW>?Bp8S>kisRh60b|i4ci?pN}mcp
zhQH)jo+kbQym0IeF?iqsaOLkDpX2Y?J^7NWOH1MXFB`AFc?f+*Cx!$5Ett|kic*}T
z0!J7d-^rbbSnEcvwO-^|+lu^@r0xe41*w;|z_wFo7j^t2sDe6JFV`X~RlGkc6O~ov
zPC`rqM(cRq0V`hvDAeE?o)U$JPD2_rbEfWiTakv$@HTq2KJ^;hc;`{$rZ~kPoyOaD
zU<DS?X3n8A=<F}~P4xESbBMr=ocB6xA2Ja?*y<Xyx3xhJd7>&o)d5p9sY=DNQo@SU
zA}hNE8`DFUkGQ1OKFyS*H507hii@z#R|l(fAGleWsf^{6k6BUYe1nGVF|g?k`r_%_
z_Itg{^a)F1!Jq?>=&i0_rVq13RPp2L9R&K<dao!eQ_F=@E!Wz$-?@Fuz5kQD2Hdc{
z({VM)d8tWSaqteL_5>>jywi#n%25$ZdpoIH^A61I-WKf7ipYokvE)kQ;U^>(;8}c)
zyL*xg37zWo`q!^^x4C?ys=8a}O!2s?RaRuMp$iSE<08#v%<B3|!6bBN9!$hUDwgM&
zG=IB{RaNDtr_hwudZHJSs;Ea$>%qO<Wg~$Q00jYFbe8ct5lgU2K%;iF0bQ6@D=)!O
zXowpp#qi{bMKmK*?>K5yK~jSlqAiFzFiGPLaMK##nKQ#fcj`BgKZB-0;}5+iXk5^n
z-}s;u^8P5KF#eZVOszlY#iaj1GIRRhsKzh_hHf4i=(My`);h@H9jIBtwa0{D6CD&>
z9t=d5YW!6D0v4?1owg3kV@<{56aGZ_P)h^=+S_?{`^j!ZlDKbRP2-0;_`$L=o5P~n
zy!b;8=BP^$ktU3S6}&>uIUoxnF2K4I>M(|{i5dwW$HIKHv<CvOC*qXx+ZhPZNKI-N
sG|D5do@_t5D~x)qrfiiHha0sEdxK!JsM1l+Z<@>7(-(0t|2e_w@8P{?;{X5v

diff --git a/__pycache__/maxmin.cpython-37.pyc b/__pycache__/maxmin.cpython-37.pyc
deleted file mode 100644
index 4123e54cfc8b59ced14688928bcd60c9d308315e..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1337
zcmb`H&2H2%5P<DC+0CXu;!qV32>HTcCFt%JRa6KNlp=uy1yKr8Xo;-EyG_X-wzuq}
z?5Xeoyg_^9m3-yYH$a>idt32y-~c%CjAzDUJL4}|o0|&|w2NOq?Nlv<z8K@QIWV{b
zT^f;~1ZOD6A;xCxWKKw|c0<={FZ8T#gw2E`?gte5iI+4$w-RR)wVTJV3Tk6LUx~C(
zQGZy(DlLnRn3w>x#!0^iTD}IMP>m1pgeZLI)TBm7&cq$9D^imKypDEOCti(f?>wsA
z1Sj~TQ+s^}EYKir<Q!T+XMc&`L~k#>1P`3Zd9Q=kJ`>TSwT@9+Yd7dVk5wtC+GUEy
zWuaJFNU%7~)1s5J5#49mkV{(jX{scxm|!_qTm&t?G+3g2$W4n>r7WX-#PTZRH)zlr
zK{mZbUp=4dUblONK4Wnt7*qfP-KEtl^l=)CGJ0CR14nPAyF*!#*j(7v=32e{dv4F>
zKKzlp47ovTqwQ*v@j{cN<S^Qm+7ql8@ODGb6vI4{_H<G=rWKg#tu>gR=3x`&N0KXz
z_dX*r3wQBtyR#*^kWi^^w|D(oXPwJ8s;oLy#uSgrN~L)U6FPDnm;JOzxVV}#38m>k
ziK-|TW2sn{rP91}5vj7wOhKU{OVwD<#ARL$VWCG4HqV&*w^;f<o^|H&DiQPGi#-sg
z0jL%h3(7Va3LWCwNibYHu@W7TiFe{PNRY%x4BiHK9q6R?2Dokv@R4(b_uNUdhWG-S
z_;vHptNq#q*qU_{Fd^@c0}Abbkz&^R11u)|54=p%{{|V8DKJ#?*a*PHDJtz}@BvgT
z=GtRIu(9@YE_VkaO*DS4n*t10@pelG#R*W+=%?{m_^_5R7pA?97k8g+h9r)9Ml5Um
zSo^10ma(arGm~dec`#e8fJYh#k-vx+$vFqGAmRep?LY?+{7TeN@F)`IkEK1JyBZ5a
zk#3~`pg~P)7Xam<SB=-7+!rncEmL-tpEftU2zvtmW?m-4jNdjS+TCZdKYbkk@^?Y2
BX)FK$

diff --git a/__pycache__/maxmin_grid.cpython-36.pyc b/__pycache__/maxmin_grid.cpython-36.pyc
deleted file mode 100644
index b31efcd661f1f6690835a54b0b7f0a9061af0911..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 862
zcmZ8fOK;RL5VrH!O;=ka9;)Ex>q=#_+X}U+06{4SBwA1(90FBjCEl%<B#vxv*`V~a
zocSO8C0{x97a(zB?4_c@k-zcG_?z)eW_x|T_iN|-`6NK-C%UyfIKP0cb^&sf;{ug9
z!PuU?!b^N7gCuY=OhP9+NjLZN;2TP!+&e*o@EX`?fX$s+@=B+Zd6j7{s-rBl4p?ij
zAvbyjTYUo1Xog!a$B$6!J48$WD*S8poYf)*YX__zY`+bsxa~~w(p%zLaMf+W{{US@
zZFd&7Q5!5huyx@*{@3dsfptk``gT9I;%tA9T(V3HN%RHPBomdUyi%YsQt~P;=>qN-
zbEb%x5Uv%esiY;-OuATXI31D+(0Ro*rv+gPTGj>IBhI~m7~~oGc)F6~(P)z#(=3$~
z8Uc>caCeg&@=S{Kz4!u#@srUxp;dlEhxCr_<ktW6v7^8FN8bXvODr*T^V-6oW4x+1
zQ2}MuG-D>DQqsmmB~uqu$#a8GO;>_KYc^Ojy-K+XRJyozZcJy@wv{~FH{sETm&YfG
zpQU39TLvGR=!W|P$-9vIH;vB}lL~r08jW|h;{&EXYf;B_K{ZQ7t$E4eLadrhOn8+u
z`M9JCnj1rt>ok*%(zGbJvi+)3Ekt2|33M~HPaoEe>1U#>=Mc>rY*N(+K+y)?@E>{+
z?)&mS=(e&HMo`ZsOH*kl+=SJ<tQ%=3(5!LDYU3*tz^hmi*3H4Y*D&gWxd5)9TX4^^
VqNk<E=LLJ-15H`z<7oBye*nS(?nwXu

diff --git a/__pycache__/maxmin_lhs.cpython-36.pyc b/__pycache__/maxmin_lhs.cpython-36.pyc
deleted file mode 100644
index 4d153c6e2ae5f9f4963bee5308d163bce06656f8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 790
zcmZ8fO>Yx15ViLsO|~E6fCOBSuaQbNDMF2^f=~$(NTnc3g|w&`Yu9OAcJ0M>N`khh
z!j(V4iNEA4C;kEl#H@3m;Faguo_RC&+qt{Gp8Veadi<?}&<}KF1h9Sx(~Q9ssK6zv
zaE5Wa4$2@4Jw{pNG0tL-oouBDi|8}Tx<zn^`teU-qds;UwHDIS=}hKUD0z^Ftpf(s
z_45&+c?-s(24CWf(BiY82^(}7TtxGU4V&;1PtfuBB5rUK-$G4P-~xXMns^$(4iK#O
z+(g&Wjeq>R=)>*TZ~`|9KDnfK&NSWMOItYF+ac#Xw@MRx$}Gv1v`k0?J5DMg(~8Z>
zIV)$}5H%&j8d5XODsH(>dVFv)AXDH9DXd^6;d55iCEp=QZw_p7pS*ds#L;lLNnWy?
zY6c2`V>lRZl4l~<ioQ@E;b3%ccubfqJQu2ZuE(waxg*bg`j@)}+@yEVk6c)C>B2&B
zSe+UdYbH;4zvEWrtfI!>&bZD}fh8X8LA<E46^N&XTZhlSBfSRy;@7+M$Z%~yso`+6
zeK(zO^WLgDtxIM(RkanBfPmC2ay1pQ;QCI*3`moLL^aLz!dO<8!nALe)GAfBf`TFx
ziVf<8Tg_Ef&mh_Ulf!Fm4<ukvw~N<;4LlC@2JHGhmr&>(JJXy}-L|HS;W<DLWbJwa
t3bv_@i{L`s#r0zH{IQN8&h!0Su9)>UL3g)O#jNBH+Je678tyK?;1BJv*yI2J

diff --git a/app_dir/__pycache__/README_cache b/app_dir/__pycache__/README_cache
deleted file mode 100644
index 8b13789..0000000
--- a/app_dir/__pycache__/README_cache
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/app_dir/__pycache__/__init__.cpython-36.pyc b/app_dir/__pycache__/__init__.cpython-36.pyc
deleted file mode 100644
index 4cc1c738b5bd110daa922c5e7e068f7082c03ab1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 927
zcmY*X&2G~`5VqG&;<!zd^oJhc5Q$SzgIo0g2Z}%qNJv#V&`M}8tF3pEZ0dN;?j~(~
zg=-%GsV~5l$MKa@U!f<)PLYa7o}Hha`DQ-*u+<8G{Ji7Cn&bR&9z9L8-{EV1qY{pA
z6Nj!&my*i&s4obufitZ`18TzCbx`}ej;M*cbVWl1qIpY1DAvUKEg5^Fb>q_jf@zaB
z#Ri@sTdU4>v|5$5QCV%;79H9VUD|~<1gs4m)E(%e?gE)^f<N67n_^3B-;mN5JL1WW
zJ0{;<ys<6ZFHV2=4(E1G3+LXA@<zms0c(mzJmDIxyf(L^!Rx&Jb#VTEaI9t-xAG!^
zyz%M75r{GLNghtD%?9voE*Ds*QVXf2!9v1SrnJqUUrAvnM*<cyhC$`*^<*lo<jKIq
zJb|NwJ}LZ^&p;!)PT!;5xlY&xH^2~YQf6p-H5n^2Wso*!U^%mVY|io*pEE0G(%^6^
z?Ws}kSTBv`N%AjrtWtr9DmD4jQ)R*I_0D8wdOQ`q6RfmVrJ=!)TV4Ve9s+&Dxrh|B
zp<$%KO!D=Nk74kzW8c+5IqnXAUv4IJyVPuAX9<guD3u})hWcgTAr~tRk8_@gV;b@-
zV;LgIYw8cNMG-JouFP2BVUE@f=mqGaj<_Q^rq9eg!~4cCBrmz(@g;-n7?1&6uV|Q9
z%M5{ART)cEd230%*qEYbrA?4a1K3M&y=1FEh(y^3+Z)OS4NkDEY*^G2zEpGj%h7FI
zwo><}(K$9Z(Sq;qAG|t@hF~tO$|B8Y8H@j?o>`@m)f7z6)2Q55NF6a&{sWA?%$7y)
sW~RhEfwu%9%s#5XMIpXdcTv2$N8Gwk+zs>tH*`bdyC|f}qP6b*1$`A9B>(^b

diff --git a/app_dir/__pycache__/app_database.cpython-36.pyc b/app_dir/__pycache__/app_database.cpython-36.pyc
deleted file mode 100644
index 698fd94951251ea8c5599703b8ea4970ff5f43df..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4336
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

diff --git a/app_dir/__pycache__/app_home.cpython-36.pyc b/app_dir/__pycache__/app_home.cpython-36.pyc
deleted file mode 100644
index c4cb5ef29e779c284ab5aca12a78adfbf44bdad4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 4604
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

diff --git a/app_dir/__pycache__/app_initial_cond_grid.cpython-36.pyc b/app_dir/__pycache__/app_initial_cond_grid.cpython-36.pyc
deleted file mode 100644
index 1a641c4fcf9dc05fb2bdf0fa7ead4e25b59e0b71..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11643
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
EFO?*B8vp<R

diff --git a/app_dir/__pycache__/app_initial_cond_grid_LT.cpython-36.pyc b/app_dir/__pycache__/app_initial_cond_grid_LT.cpython-36.pyc
deleted file mode 100644
index e77369974f67d318316048e849496afb56974e06..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 10948
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
H<ahgDZzym_

diff --git a/app_dir/__pycache__/app_initial_cond_lhs.cpython-36.pyc b/app_dir/__pycache__/app_initial_cond_lhs.cpython-36.pyc
deleted file mode 100644
index 5f55dd404cc933b13a87ef81358c264778aa4d99..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 8819
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
C8JU6r

diff --git a/app_dir/__pycache__/app_notes_and_tips.cpython-36.pyc b/app_dir/__pycache__/app_notes_and_tips.cpython-36.pyc
deleted file mode 100644
index 8b0ebd0b73ec55e8e0614b77d18a875862861239..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2563
zcmcIl&u<(x6duq1%p}>gX=tJRa)APYWRo<Ama3{+8X+o`f|MfAN@(RBduN?^##7sq
zWmn~t9=H?<E)^0dZu}Sg9dqT>zW}Kx-t%tSU4eu+up@hHkNw{Fp5OQF?(%Z<@aHG&
z_vIk?BbfP}f$<G!_9qeqJm5qH9l}FiQDIu?R7k+9ohq+&YP{a5^9FA|3`F&y!55Cn
zUT{o0O&<BR+RWMlU;NuzB*?+yv@MCs!SXTTOMLlJ2x~3gIwt;Gldteo)3wvnH9WZj
z?G&`reD#?4^~vna+-%K%S>-SAv-})?@lhoSk4aL2M$QHNrDvAUPc1LZS$=uW)+=+f
zSLbH0&COn)o6))11)L>~Sp-R=Pxu@BO-cA${37&k^LO~W@T|l0-Y+#t9#?(<#GNyo
z><8=bKf%ko`vh($SSMwL<vHuZB)XkZH;|U*ED?013mUVG_GQLtVMV`C)XCgZ-KPUR
zq)y{19Dt^^q71er!cm#^wMi-K>B7+>=gbMaK_h8xAuMG)qw#=ciLh;Y56*&f3N8nN
z9Z5B!T;w9-GE1n=5Q3qx&YY3G!bzQhAtAw|0k;fXSsDStObn^yg3TaH+2IVdR2y*;
zf;QBMTpQ;DnV@RZPlQmkZv@8TJ+j!*C<S<qQjy&+q>;kjNVO7ip_t(^6`4gu?O3N2
zB8K=!0LTYvM1or&2%k<&Pn$;L#~82A6#y?X4q<R{B$Up<nDYrNFnO-XAZd^cj8sso
z0Y~)N-W_UVK$zJ{@C-g>+R+i@oE<T#SWgL$MCVSX(lX4LPcmH7$x%ENfnC_BlpX@c
ztI?R!ee~gPcQ_Ck<Z1$b0{1G7u~hIELaRc%1<js?E(sn4-?Y9XE;t|$pfG<7?^pMO
z--7k9tPWhNO7aB^!}fMbq`{NEd;0a(msS|Nb;P!}cP{U4?FoD6biQR+ns;L}vW_V=
z4WWxE>na^H)ip)71r^if()c$dK-eynUKhc)^U>4j8k}=*Df#tP1c`|2fr;QX4x{M5
zM&jYFho*+m>(Iftf#W82&jK<FI7KHYep9FayRWt9zB(-{fGM1rQCB)8fY+hqW$h-?
zu(Q@<R>obVW*7OyWF`!3S%?+0_AX0Br+N<(IR5@)0i-vc?7kA*C_gEMSaYa2*o!>F
z5}MSMuUniBq#FtamA;>|7^n`MfGR|dfc-JcCEO`h!a2Bj_>v4975%;dq5;*>KrReQ
z2g_p79{+hWqrw<8BCJJ08cGE!ljnjN>aig)fM7r~;1g0|sLdfx4I1B|pc!;1rmhC;
z2#3}RP8q<lqD^o2@tC(Tu?wK5sxygggGvYf*$L-jjGo0tTTn8vpCG*^LX;T6z~}sa
z@QxCifm|993keXsrpYV^Y^azr&5ed-jNj|T_}8z%1+Y|U?Sp}o3_(p08En=^C)eSH
zq&J!x##L{+F9h$g_z*M=MF~<ikuSWEe-!QwYKsKq*z2puG^3CH2H+1t2}sz9FkT&B
z_*Y4MN@!W{_7uwwy%a!6m37Aq{6myA&)QDyE|Ry?xMfCqU#oHbv%Q_o4=zvNS0?X|
zcE=4|-`U=t4tB0g2bXruA`qa{N}-&em-ToR{&Lu+?1Pqw&4IvLD1)+Q-AIXX<-_fZ
zW%bf_{%u*0L3M!!wX!yp+zrY`&N!-eSx*6|%*HDR1*D}v+C<L4=J6s^GRZcj6RBNa
zE7v%)gD%P(xQDyRV2_<h1<HV_Kv&lMKcPV}Dyyhc03}z_m68A8k9Q)UlF4`hH~C>%
z*^@_Q_~}l$@|@ic=?#mQ%J6elhIgcwrIOq%>xw}MxEWRQ`h?O{Hm{|c7fM`5CAWLf
vHOW$=TC0ZDaE-uI!FRK<6gEknR7ne-C32qBXXdR6tcEReHatZl62kKrYmxK6

diff --git a/app_dir/__pycache__/common.cpython-36.pyc b/app_dir/__pycache__/common.cpython-36.pyc
deleted file mode 100644
index ae29e7fc594267304a97302eb992cea1e50d8b57..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2843
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
AF#rGn

diff --git a/app_dir/__pycache__/opti_models.cpython-36.pyc b/app_dir/__pycache__/opti_models.cpython-36.pyc
deleted file mode 100644
index 438f46d48d60e77355b18fb07be00800c97ab409..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1322
zcmb_c%Wm8@6eUGzq>&#*fxu0>Xt*7~n1_R+hLIMnI|W+6cH7u)0HrBGNc31!y-IT2
znLx9e^ds^K`6X_%@-HNtUUD4N%_57W6nO6Cy*wm!d8GSWTk*5!*Zg&W&`WfydEkEo
zU0KLbh6_~U1Y_%ag_jU#{ls@RNCIa&Ntlt$e}<AM3$hN_Zswh$UU&_wpdL2cjm#^}
zE@oA#^SU}oiA_N3-1P6js^0-LYVis$iN;f}B`sQcOMgDrq$MjnMo;#aL5thqQ`Gty
z&hXz}8(erW0t@IechMd6$$#<>(4U__f(V?*durnD6_@PjaA3{(;Q_r8sjel}mt51d
zt~Adp1tUSryc(2zPOo?|6N=UsG}nqYT=G(AA>*#-Px|x%xOtW9oEKEgdD#@=fX3Z9
zu<2Ly@!8srhQnR@kf%&?r~o8}{rz2foTsv8Ki7XjVD!cC3FTGhxUj3^I=lBacjUM~
z{>$A1ZrnZT`GyptG9;@7c$dlql2;Sa>m(c1tYpfaPMOZS0&9DI2=ntY31L1{LK{4N
zf#e3<#j9Ti=SoNgl^PC5U)~>#h5AF+%>W9}uv9LT=0%Y!`$iShbzQKcPI<xPtQzp9
zVOcH*b)$1u)|n_&zgd`#v@V;O7VPMU(`|d{F#w7pyy<P@eImDDl!7W<>jL`FojQI4
zN24ijy$r)$6NhL;mcdQb>VRYxF+@8M^`MhBnBcZE!7Fctr~Wc*A%6!gqc)rdZPfap
zu&@n58|3MAOriZ>@~~^YLm@W(0U}w`-$y5wDKS*@+Cr~mys9x#0jh6!Donto<O>s(
zLS0T|o*8^*LJ0%jh+fyk)s2eS{Fc9vA*>}M027@2`t8Hhgrsa_Vb9=W6TM+MVXa})
zPTqW@2fNihh$tII(GK1rcRi2=k)Of17n_*D|3lBDU`*QIlnFr6%|d=;{ca8)q*b6Y
uzRpXL1kGan)A!P<$7#x~a%*#|Z|P1DJpgsi3h}i)yxV;fN9)InKK=(I6JqKB

diff --git a/requirements.txt b/requirements.txt
index 5a7c961..ae5fbe8 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,39 +1,41 @@
-gunicorn==19.7.1
 asn1crypto==0.24.0
 certifi==2019.9.11
 cffi==1.12.3
 chardet==3.0.4
 chart-studio==1.0.0
 Click==7.0
-cryptography==2.7
+cryptography==36.0.1
 dash==1.3.0
 dash-core-components==1.2.0
 dash-html-components==1.0.1
 dash-renderer==1.1.0
 dash-table==4.3.0
 dash-table-experiments==0.6.0
+et-xmlfile==1.1.0
 Flask==1.1.1
 Flask-Compress==1.4.0
 future==0.17.1
+gunicorn==19.7.1
 idna==2.8
 itsdangerous==1.1.0
 Jinja2==2.10.3
 MarkupSafe==1.1.1
-numpy==1.17.2
-pandas==0.25.1
+numpy==1.20.3
+openpyxl==3.0.9
+pandas==1.3.5
 plotly==4.1.1
 pycparser==2.19
 pyDOE==0.3.8
-pyOpenSSL==19.0.0
+pyOpenSSL==21.0.0
 PySocks==1.7.1
 python-dateutil==2.8.0
 pytz==2019.3
-PyYAML==5.1.2
+PyYAML==6.0
 requests==2.22.0
 retrying==1.3.3
-scipy==1.3.1
+scipy==1.7.3
 six==1.12.0
 urllib3==1.24.2
 Werkzeug==0.16.0
-xlrd==1.2.0
-XlsxWriter==1.2.1
\ No newline at end of file
+xlrd==2.0.1
+XlsxWriter==3.0.2
-- 
GitLab