PK\NP8J  py_dbmigration/.DS_StoreYMo19lR ڞPqi%!T)T$.p6MS/9!~ ??Nˮ[@ԯr^3c[K( r"RBM>hL uCGn[&V>5zNTn)26ڮ\W-Yƺi| 4[ߚǍrgӴp_F~H'x({)۪eI|T|wdF#==EM)jvv-;]'ãV}tk)Bs(^QLRb B?_gWN|tkN<ȑ y v7:2! T=vyȷ]6O*y ?(T"q-O5{vYHr;v,G#W$.3/ylx^BGա*fȲ"ͣTfOqM# h/U-~gѓTh Z89 eBWĂLV p-aQ[u t"$gטЮ-X7}\k[ǫyЧ$g>![qPK\N:`6P!py_dbmigration/__init__.py_org.pyK+UKI/-)V-/*QJ'$Ƨe`&䧧g#dPK\N.[XB| %py_dbmigration/build_travis_docker.shVmo6\l 6Y'm H &En_ HIl$R )7އɊۗ ̗wLJ7/C.|&:챐뛋هKYL̸f聩Qdzۻ_%b2ArQr_P>̂">Z./gW([|O`<SSOIpE8JwV\+&/V )]) 9O[T js2"YAvPhӶyMq?^B` U'd'ޛ!kp1DP%9}@&]`2i!Sj),+J|OpA"TgVjT*՞*lr]B*k9>&DK W'GG;캼&5"O|`aiR/aʂږ[ޝݜ_r Sa{:5bYe36u" ۂ;u3(H^ xMR6=u+M Ӯu06Le>f6`as{o/kim0"+Z )n0l2a{} lN+;"LQa3^::}xͥH DD[PI;dxm-_c'dIQ2gf<ό3ϥsᛢUh~ NBAI_*̇ UH(iAjR8a:2<*N X0Fy`P}'BPP9 .*T`#*]m%!l$5>,=^HX QRR#*BRL!5HTãm?]3#` ]-X5f#.jj pBYJe> -ڙm»ӷQpezd:O߿|؄gSC^!Z›7ؠ C/B*AI0zIDO`ߞ̬{ CPq<(+tV,ձmW,) $f!w3&EF&Gڗy)M9݊ XdmP4 {a/ K\Dʞ_L.}6sKuyx'WrQ_13ڴѣe+j@쟧`|Ŗ˟y=}_דE_yԽMbsv<,N~dl^Q|:MMX7o;1ã*:ty9|wZn~"n|-jϞhΕy=C-~ɴp)ueZ8avpJ@JJimIteհJ/)+/1u_\ҿzH63QPK\N #py_dbmigration/create_virtualenv.sh,,*)MI+S+T-P(,PKmN%6py_dbmigration/data_load.pyWmoܸ* 1wt/sFcǸ\Q!p%jFU&h)oU9y8p(A*Ck½Kކ}YG#Zz|lׄiRK;5F1#d̰-/Mo삦{Aֽq/F EFɎn)J7DAɊk]&Q0'MhO>\ᵊ~:a1mnP7黕kEVt 7ܼ31[׷W^R0]t\mxiEe4ed-<߁We{bÏ ^}O\5N;rN'v(+#W 3%^~V蛖5Þ /my$DO|kZt:E@]?^HL75۠ bbPg_wh4Nf9L5c)z j[4[ZV9/S +w ?H́\)HTu~\!4d{$n`m^`lFig{;pg4KdU2cUN#{K ^PrB"{뽎? LilWp~6c{sggh嬮KiZ!$rrJk,$M38TS<5 yHd:~yިZ W, =-NS49ꄉS8y[r+'kj9ǡb@JFt;0w'JX5>SNMi9;%qjB:B'`amK>eno#vEX3A\sPze~ t6~68C1Iѷ7#]JR~]@ ]u;aP8{5MO 6m([ir""n/[NZ_Q4EfWD$Ň">Q/3)P9G^*Rx fHwY?:XخPFg׳cr *r-\VNb]A} na;QP`5*o8}NO4! 䮗ˣ4x t~S0uʢ4vYy[o,4R?3w 58q/Ԅ1  5|18:C@J/;qAԸ'`IYeI$;K'yPK\NMmpy_dbmigration/data_load.yamlXmo6_qh+-03m4kTIʎHJe[IS:^{!O\VWr&F(YU 95~5cMAFcxͮ_2%# 51P5q0r 9ӌ[(` 3t4[Nl:ϫd9Zh fD, X8ǛːDg 3׉JQrgpº^|2Rڦ%\eDg/޼Jߝ=K/xvMb2# 1L>髳ϯ܃8*Kb.D(]dV,-[$/<":Q`҂8]gfJV<HRg L]YSB5jUxB2<6}|Gc4B$5#tDcU0 PEo]up(+gE'~1QR]~!qjVejt|W^ 2Q* U! ȘliqUM :U'uRO5ԿyJ$?LKOJW%G/YA%1&(9Ԛf.`5"!?P>`rE> !p%w\j0"C'⵱ "9J$ŘR]kSm7c'M]Y=' ]#&1Fcm4$4yٖ|OA)&诳M#\sYhd7uԥA -P\JdAd]*uGQUQ2-8W'j=lXmZ_LGuKeiVK}IMaH2D'Y֑]9~ߎFzDdwɆcABK.]7pF'.oCB4H>*,#u] . b_`A]2 RKaMG3 gTEvv %^oΞAюeԞmCRoaJNQxģvu8Lh}L u7[k<;!8^`'}9X"3>/8p}e4xM#ٺ̦ V-UV}t>@8@ Щ&:w+;]h>Eyo܉IKyټ-MWvxN[<:s ǭ\=K6"/w;vkax]ʊ'.Mͅݜt|տ_Ƀ0׽Q?]עk&s?,jIS6gB{5.T̘l\wƫt$,n<@V]Liod<|Gr=ƣ Y:.h cL9J<^!q`  zY9ʲ"K&j] |qϋ0jx0;OlCsm3c]eN~X˗y*~ї:[ @=y=E+4M>} ӘQXABWl'ЏcYi)ele8m(]m8G} ePKbNӁd&py_dbmigration/data_load_bk.pyko6NCsxScq h%Z$*$M~CRR/E$=qҼLSggnS޴Sl+f<`6AI3QQ B=DJ DҌ`O.`4wUK2{җ,-Y~{3 O_hKw ` D:Ha<̕7'@W? ١= ŁI }t.!i~"\:k%d BR#Nu_FX¬p)!_#,OWxDGSX$)@ 挸'O$݁ OCBĈX--z}=T2f 0WS1%ztqjN"!024-\4Ƈ FI W"o/!jI诿W<fr8lBr-Is<xNi5JPoA5ZF vwKIOj(l cZ0;)S"TP:‘o-GG6Og*)mFQuj{V"Y67 [t=|C IbQNz-R־*hQ-!Y=6|sL*/,b:CR?<0Nʮ8 !}(#`Q!fR$:5#QeçըJNPyA.Ú )bX4Ѷ`9UvqiR/$t^œG:q ,yw}Mx>biU|M0â:8=H IWM:YtIg <Ʉ: vvfVVgR}FQ6`y4=9 T%ZWmbxN.tL n,HѸ(|KKGZJ2F,ghD74]gXhk_ 2gk$ĝfh>C;QiVWיfe>7+uin8jin`xeѸ2`Ӝqh*xz4N Ⱦ~lI϶5|Zys0V4z isGiVf:TWKqz5ppZ `ͭLrLAܝHt$ E1rdJu)Ɖ[ 5NH2=z:⮃>Y,iis1v~td>sG ʏ<f&uPjW<+윢5B>eTw IOˠ& $e\UxiECdwǍsl`jKdן2uo7o6:FXyݛ_~z MSV RP} ܚz˟:M~mIC]/`~4A-?Q0|. 9XL}e$;|]w>;/.H (k 2*Z)I\on^]:>:t8`W}_yV-Hhx쳢3U/g)9n'I\ :OQ\U9(;}%m`EZ;n)wFT[IWTHdiAvN(PfaXRPK\NM py_dbmigration/docker-compose.she̱0Oq"`dp D؜I m_H ta5l{% VA\<-$KϞyd'U~Mn#=ѓX>*iemDۗ(>xqL0p(J \vK~ PK\NQ!py_dbmigration/docker-compose.yml}A 0 azĩŋ2]'i 2tl[C/!|yWh9B0*ψQ /gl*Fad/TSd*|;*u ƣp !LYI߮Xo p0zxUjJ(JQPK2lNH9.p-py_dbmigration/extract_db_tables_to_sqitch.pyTn8)A2 iwl&)z0F2[cCR4MZ a3of9cYvJd?pے \7ܕdŕ@+qd9nÎ5r6u`,8ijU{cs٣,hN(8G{eN.UIqnt+bji`gu(-]}^dY6tGAo5z]~چ{nny@,yn0ZSh@K"L(ɐ`W,G(m:]nAOQ#Cʛ&EK Twvrjr3aAK y.t '2RyI0Y>*_s'˩ZId8 檼W/qhu\TWFC, )AQ5)YWGcKϢanT1>Nk`Oj.pF)FO,=?j!ּ6Stk n@߷/CYqSb^R,%\Ί46U5O^yHO 4vt}B`ເG1dDa1a`p&C}\^T G߃bߧ D}%Jύ*99Z:ŭ:R qo</EUL'[ ~bnyJq1TkTzܯcWIj%;Xh*?T0IHƽQtoa[E[e *3+cyjPK\N[ !py_dbmigration/increase_ec2_hd.sheAK1+[hw![ADij"6,iՂ0dx}/jc˷J7,&Z|#L9ze OER#AV7H(zﺚMX6ucxj`JFWrV'|HI LA ę pvHyNW`B Y,0 YE&yt, 0>UQ{A~ 3}f#\p;PiuzQPPKbN'&py_dbmigration/meta_source.pyWn6)R˨@iİXDleIKR}IQ;5BbӜpՕԨR~Uij(T"N%uFrBZ :ZRֲڡZr Zn-Vw6Qn@X?Y1%qU&!5d6XYޥx4}æ=cp_ pŎiqVZ^.NCM6G?F5 P9 x]ؐX=MBWW 惊RqynHq$Sr)+IwjsVՒ,[ć+aJ j# _?gA|t'PHqYU^vžOcXz9a2`XO- Jei< 2Tإv2fK=(جGꪆB&FHKpS_Ѓ%%n94trKb4Ei*&A\D9P!׍P#EV@ނ]UxXtc(2}Mǣuk !eM{Т*6mj@e0.ؾo?U)Pk26(S ~ ֨.q@$Zĺ d!J@$TtSy3+520JwE%^+2y4 Sh8U/ 3ȲҐM:]qH?8:-UoT0'=؀\0C!iAijB:7PlPBFԹ; 5.}xN/;Y#%d8}\-Lo;Ek_pRt9S<d%-bqG 'fǙˠo))hGz}?nGü@2G9Yf3q}lG]Z)z9̔L/vA*Lk.,tDO # LUY̭YFR.[d-R>ƣ@fSEћuQ>| }8^`2eoxǝ4 ` yPnMa=b)@b #Ӳ!wA`ގVyjO0-[ Cq>ETdi<*i6tnxJ ?q+|.?FC*G~`Ee1k~5k*{XzFL_&89q @`ȺUM0WkߵчbbI-WMtbb?}ӗg38WV2.2ev 1Qhv2Na R4^0TaQhc03(o7߰Z@VZa{ a% jLxscߜ 6|sOh:D80E0KcҺ(Ќ 6OH>@@c @0ʚp&syj&t%jo5hBjI e42q'q$!2ҍ  Bζs*Y'27D߽Ie~/sŬJ12f>ɾ}`#u"u}H% {*MzVq)zM1Lڻ{`x;ó{Btz%5gc*n _'Fg;c,#\kB>תiHjvYXט%qRV! d>)+ލG!0b=pD;-&b."[E[z{ uw'uۯ5[) V!7ަ.Q~#h$ET1X+bDl uh].й;N`ϖk ]0\O|/p|:\lP+ǻ[+/8PKrNh$py_dbmigration/move_schema_tables.py=r8 \u(ѪٓUxǷ#;M9)%6!)_?ݍ %G"Fwoh4dQe͞EeZ'EyU%-*(˨-w^oݲNҝ2_9gAkoK^!xR !Zhg^~-L22oo%(Qd4ϋg\z;EU2?̳?QwtKxU?-~;ם7G?`밎f)o~'炞TsI䁗n%Av|2 /~jij̳`z _Χg<7}xyiu@fNëdzà 48>9!O5!w|oWUHv?<:7 /^a#x $v;FE/<|wE  N?|NWO=f^p:AޟLN'Y$J.o|]b\=D3 (nyTG -^o"Pݫreg:^V?ͣX&зG?sQ8 Oqіg-`1I<t !]Tݱ29 2c$b012X}W;85Kv4fQ)kh~d?OαZwvvW|^ӓſ`ƣ~"6'[ԇQy_d#b`/~2 ٜ 3Z+8Ԃp-xQOs t$g{y__XG[ $J^/K{0~s3p04mH4 %Z؎;:<ƿPʠ$ t5\\CΆ 6O=iA > VP'~ً5k_?Tla_~P.4$ǫ5q?񎗼8x_2&rZf#?%U]-2)m/kw|hNAW`/I.laVppr56:0+y˨N,EU(6 (/oo[◂gnC)-Ǝ>( SJ&-B@QʹE3'EH 7 )n|NAT<+Ǽ7H0^C 83dVпEQX\ۢG"g]rtbJE+4I9 ΀;.@H.9껑3NJ X}`)γm((nk`^i΋_N5>ao# k@l'֠@~eh2Uۡ߈e0ժX*y'&m>z81K;`._q$GICr,8ny͢eL3&]*~DTy Hl20F=@Hm $:h Z' cŎxjXIq0=FenwQ$u! Mb7Pw% vLIv{FE!vW:{71ShLrNU(_zVpoI,( b9Kl;k*܅RA^B6L+Y%"uVS({p9 Ϯ&ӳ4`5afCmXf^[W0d sϲOpAh+z4홌˼!V.9z_OEY,Kahx_CPe2ZQTY׵Uj#{ 7̇PwgFy("HÇ$ \oiG6I`DL& E/"\Bo6Pd"m g8X1Q l^{5Q}:8cɦh6Vrd^[wNa6(V6 )ZTW5p{qYƿo7m3 z.NhRVm*/,6 `La5Y_/?5qMMPBdߌ }p#si衦iKm 6h@C ;OW2YߞK$Hx2L`՚HwrHeZ'ʅ:Wk|R;gk񎰑u?(cHT+X$Ţ8Vn=rv=WBYVB"a4L( afiܙLh`w`JAٽi^ Xd4 ,Pv u{hk ~ w X9_07ٰ vRkT`o6"Z&N7O܂LSA֏ڗ `snԧgs0--?x [;Vs]s9 biwu;*OTY;_IG1oj :#(pe5(V6- XE}bI]wi7;ML/}(QGY3L3dH5eiʝ]lx3S.rh7aUH$@30l,W٠B<ܑ7ĮJgA͠S]a'4L*BM)06ɪ䧛[7c#$b-u~9z=i$̽RRp r[cm?I[m[$K -ǎb״ý7/e(,Y"%'F3ϒA3(6=;'[T MѦMZq dFpe.~ wRaف.h>nYcj0J苵]<8~;9>rSsvv~هwLi_p;7E5|fx/dؚ>0Ck> g xNkT++s ܑ q`4ag<3v$G!];>}(v,Gw)Nn9D"?մsNd)$M~?==Q髆m C|S"IJq"bڊNSvXeh*w iǷj`{dPh`pb-AHxxC@LNWVSmkepu o7f_@{an#즿OU%Z,j2Qt8a *~A@j]@RaMrvU;Q<|&]]N[ٟOOλX-a؁x/\tlYG/9l d!k+['޵ޒE)EqS)+`:EZ ="Uq Oڻ.}V0yoS/恽/6&gG6|;q  S`,L&gqHWHZ8˧x]Bh+}ؓd䒿P,N~ϖ{7JsKA` qBGOӳ5Igtz>]ژ{'[r1SfPݻ`4̇%^i>B%KDA9ȕZX/Ig7oct 3j r }N.Q BCJ2:zG:.WScTXEߙ5i_C()[»8t>=6pFo]X;[&2mUjuR1zU5UO P߯fͰߠfzJA,5J֩7qG-ߡff\co#E羊o;]G|FJ-=' k!!a&CX뽯f8(^1_bצwW#WCBÉ:#>ϡ :jl9^9"{}ȡN]:]lr,) jnBCmKl-yk~/-6Z1lr\&JɞyXrơY. ixrrw2ԅxX<{ 4+ɾvǿ#'I^MpƴSN8vt67%Z "kImc4ӗzyeZfXpUe뮛o=zǭ 2G1W- `HV96Zy-.88>8a({WЭ/߳.TUHb\s4I^%Nj"5^SvI'ۅ0}M@i˛tݕz17{B%]9DN{KDSxVBcuyw KfsbXxenL'E3%njIɎLESsυeKusޜCEIEX8CPr518TN{$JGƒ1%ȲPej #5 6ЈjZ QĪNaQ\*zvߢF\| ^]9.XAyī.T4a=q$L/]^tbmF@PVBj"C'qP ZtMb TŠcm)rcm=:nlɋmYZ[Du--粍{]`z1Ds2PK\N|4py_dbmigration/nginx.confWmOHL~@"!bzF@A-JzR{~ubygፐ )\d@f|^H;q 1h>f<,Q6OZPDE,,2t%BcXBW ԗCS$,"|}/PXo:P(82YjT8؄JD NѬ9T&L`LXdg3RYٯO u Y [>",wDAgn aCA8_p|ERYgHth*u ,}i]%ԭhi9dhABL+=%Jȥ6gq3*{\H,y_am?'ZlbGÚL\X=WUFUZ^=+^>yAlwgOja\AEچx*ƳiNNz{BGnKW/_䇵Uk$CUVNכh7C4["|Ô _( &:VcFDs^]WjHt)Y 0L.?o.F.ޏDV-p6ng  Db1#FGA:T ~p({9R>+$ilMQkxY|f&رkmSnڕ=*Kn6ya k\@*Jg@8WI~˝u$N,sHVy 6\j m`yD%.)=CjQS 1XFVtSKDA1^l#@'S^Nf;95l77VU(b_hMtz;4WIoSHI߫||A8F`}*r}8G`2gN/Ȇc7a4wi׃"7y}15\?ܴLܮg7g?}j^4<5'}lr0PK\NQݝpy_dbmigration/publish.yamlX[o6~8[-`wmҡP7`v=H\$Q%nËb B;GigBCw4G@ Sڨ21 r(RFSqS%n4U뛋\X!j8P5&9TR[I\DkY}JQ~?y/he%~YKOb5LDʉ Yh+@.Muj* @"s#,`݊0II%POWHAO7(F'2?Ku˕~ }d{EAFFX`p-Bl3 (dPBԎ0LF{ֽY-lCMeµ/xBbxT;EcLS`1ΑvpF -b Vbqޕ@l U9mʁ6OϑS-H#K,M'@,y8Im"0\ȵyXg+W'9Ǧx#픺ۯ:(C36, :9>!NV8Ɍg#ˣpqTPWiAbwB;"pxyé}dٺGjI$hVOZkHeBSӛ>-kíJovywDAo6ܬ, MA(@l2CE)?1Mnu')\5u~]S7 AZ[B4j9q6-wP?a3p~jw؏1n%rπs:xOfrp3!.BGɬo{@51͂6 ӥ Ұ-K$Q Y!pVĭ ?ߝ۪^7DF^_6j _qWЃ;o\藄}yY{tYGg7(-\ѪWjV[ۜKaT$wę!dA5Aj yR`\p~vHp!&N+ p0sGlI {u.-_w/ndm3`h>d>n{۵C&pvP6!K9qq啒0m/peϣob?8'gXJ++/ӡm{PKbN"u!py_dbmigration/publish_project.py=]s8\gdx]ۗty2'7$g+ݥ-%Qǖ4$?HQ{wK$AAtQe-|'ye>K*nETE *yUw:ܔBOaOjd L3S0oo:?Q 4ˋ'(ݙߎQ&vt14& '%jУ &dއǧ?FVY H갎dyO}e9K8|rTٛ)v~?/%*- ,Y2G&ëWo_$<>R\^ΏTã3U<8VR?Y/X&;..s(&>rvp$3`]^YHٻw0꧓_'P^LN&NGƢJ4.o%5.*YbO g'' gQ\zqrl^3W6mêeUy_ږ8B<@eM_ğ5n[.>_'E?;bխfH4;\gPI@;)sGVN#M`2D}W;8Kq&XDY,ʤG3@.e8SE9APPm@O  Ζ C<ݢ_HuPi2ا`4jMЭjߠ9V!X`廂~0Mn2Ph`M%(GaRi0,cGPP0{)`c , oDװJӪ@z NkBi~^sO@TA^^zDCK2ef |Eؚ#ͦ_=aCxD\}œJR5 ̳y& x(5Wi8r]8d gwbxj`fA/u}AWdD'Z/"0/"wIمZ'Y rr(@]"Ab$rɫqV~ӒI2Γ-F60YRrR~ _qpQ mZh,NqIXZ/Ք ~OBF GcШ QZ%Fx6%<jxkwvlۋ'R, *_4/y5P!6ip4VF${4jbڥo|k@-#6zRc0F[.C-Kp4 eУyC%@`%1Ξ!(j*w!*3 d0J!w/C\hW2 v84#D q\yGh.cӁn813{P tfjl&P8ٖ+ZޮY~]Se?[#>pm00.lh ol6]qVpa `)2oѽXBq2dhƿ+[ @[2H}6; d0]9X&8ʉ1HMe#c" V.݃)TA7/[x6;N qԵ@_9#ljHmm{7CqzŁI{OXM1W6Mizl7p1R736Z_ vbhҰ$cof@S 62ؙ~swELU?mHR؜lʪHYmla$7 ŕʙ6.wѓ_̌(C}&Yrx4Aˇj} LN6|WWG9b<_o VfkZPè%,]]|s$|/hH5f>36kﲠ^ڱ5ߨk7?v3g_1jU巃ރ͟LvES'mw {|Pq K1jP3."hq)~=굎ެ2i/yZiߵ5{J8.d@K0ɞ FY |ifedu@4B5\maA"{6TND߭ܶ jҢ\RyE˵:EXk762/@3j5jI[>|uuu)ޣ,2Y>1JI0ggv|6|d}g q(הӉ}^ӐH >ͦ6E8Ez+]4.*C"LX(Vi8I)4cV%<;>)XC^;|6m n϶]BN˔4PM:h)ޡ >^s@ xr!Z(ko6j#Q>}=py>ayR ڽ)h\j?`\ùV:WU,# F dOAQxir{F?w r- Glb}:=&ɇ~{n$UxF SX߀um;pU]j옗Mԏn [Y}źmw\{|9ws>Ȱ16Zhm+b鹌Xk7!w ~Oڠ[ 8SV,sHqi&409X0^Nٽlj Sm fE-nJP 9^3t ,Z;/#aiF"XR\j$%/Z=trqk@߉6*_ʁ d[?=[+[mnShM^5g4W͑s9iWL:W׶=r?͢jI7hMF..>S%Ug/γ챮`$UxJزVa??ي up~vybr Ssx|2̽nWm&O7o,3lIZ9MO}WB8t'H]8<~£f? LϠ<LZkcTse"{dOtЇKnj[ %"N'^Oz}:ċ2x ;[S^zXɴ[|4B7,!Ԝ!3A@cGu5~dU&+X5]YM[ֲs6ݿ?϶WdF)}B_z-ՇNd}-̟'myMT9*o^^Ҙ'=8<;Ggwou kL37/ν9lF*M"Ӹӝ),d حN3l훱\qK#i"u,IH+4).7xn{ <$k$ނKqNt1Fwc&@t^ƙk,:d>%`ODC=O[muU|`F 5UB17f*~Pl@ul,+Hq _h3?yM@E>,CjG[݌K`f_C{aM{smgT>dYe27ؓIl<4~9Ԡ;"4k)f/"SQ0Esm7i&V ,jBHĥlbbE2C&t; ew<1Wj:h⾓d=$`ƗhÚS*Z?Mm D,x Di;E*p% 'x>+󊧟/{{<=l`irzv+.)9c" -nrdpTp&GnIGwSaaY;f,(gH5ݩ?{: }]+:~pq=Vl?8pY@ Cifm0DڑJuUMPS,=v,:(BUІnn=I/y VTRZɘRP%u>dl^{$0oiS8 DCБCYg1!QUԈK8yTA) =U| ZKp3m\拂>84Jb,9~8AfRN´h+S_JISE-! 6<Ֆ٘s<.4Vj0`rtŒt/fcSa}Dߵ9y9p*Q4l|Og7yi@w}">2/E-]wZ\_6_ם{s6T]X} v #@\KE:RDda6cO }XSI'm.E9Mlϖn\,u,|j.%cLJkݧ߶rxsdS^AMXMCq fW偨Yo0lS#=qeCpo.dg14ǎd5"ȦS>PLȶHԉi#uC)[7o]=q+h|.@O KEUQM~֊o!&jm*X1),@L{XB_/f<NN'``&06&G̺hIF*S&d 5D$&g,=\ OXa^(  ~e2ÿCHes*Fl΄o}IA=+~gQÆ@6Ɵ:n(Mobw"9B'9AmwSzUDQ:@+< 8tL5W%!i\%# X/d,+ fw 4zt cMs7?ϼ4GUFE bnV>9ZJ KAJ"U7\ ԟSw^%bЅ@ XAO*㠪yA[]ܴdw<+9XOO)3e3f4b~Nݾxͼc% @{$,pKT}L"K+) EHnTDtUE҅occ: X2:Rbuu"ɷĀ}k# ,zL.)&4KU4"XUCWP?n#Y(J٨\X9%߹.ht͛9ukQ9ڷioi꒴Phs bY$Z2Qjjmo.W/b(˅:B= kҪ]8fNzzwj)e!ZVuf$Mך2I,ǥjb3&vɶ@̑vw }4ĝNY-&i>PK\N|{[lpy_dbmigration/bash/tar_venv.shM1 @ѝS8C(($rz[;*9|x) ȅ*+ S%-|G§yM'3j|77@$7PK\N1F'py_dbmigration/custom_logic/__init__.pyK+US-/*QPKbN]1py_dbmigration/custom_logic/abort_if_duplicate.pyTKo1C-KQڊ'מMGBՊ6) jEfU G;;l]HM WZE }qc^&z |'@X P$:ƺy, ѣ`!v*G7`@1i qŭuaDס+Ba2`ۊ5INT=c_4 _UO߫[1\ʰHck*M>,/VR z9/c ͈]5)-ZʡNMFG22)6:aY}0x{AC0՛(KRo>ԓeZ\7N7ʶnbJK+D5w2HM=;/&O e.LZD-u&'忊#:kFnO!kpFFCq?K+ 2--Ֆ;I˽ JI l>H!v0!jGuy80Dgq{E$硐v\ȡ &5 8˒4,@@ ځGIx`v4JAR{HnjP3vQ96kO [0'f!nG`=rlPKbN*`L0py_dbmigration/custom_logic/abort_if_obsolete.pyUo6 Kopۀ=`OE;do%h A,SO$=΃ML3-?}!+MeKYg7 ,x4A'&v83|V;>‹V1>#0nU|6撕T5jVP˛2 Z咵׻oihr77o_pryhTzFÞ 8 ͮG[ʩγp\V/$2a$ZB'l!OQ /b@ WSd-j 21+4Ď1ߑZ^5a=N_9u|&'o"Fe U):"hOɁgMb+RJ0+5;kXۢâ҂Η|` Ͷ ur5*Z,+pZ\'NZ:%ۻ cp.}.5&rFb!"ŏyx" ?E]%??_vo'~694Kn;gaeÃD_QYɯ }DV={aqydu-S6Y‘?$|R+pBr{cՅڑo+#n6#¥=:g]_!QwRejZ|8 p \=Er\Ρ)"7NL:lAdEMy-ƻ?,ŁOw,@Y  v<;: \E0pK !黙ݼO^;䋗%msv>PKbNy-py_dbmigration/custom_logic/append_file_id.pyTo0~_qBIa/Cm 4AƗlgkaC{o'n,yжxn^l6\^i\.k@1UE+k2)K1+ ;=z {pkGd=eγ9DgYl%1l%*ZS*xz1^|9O$ w9kMUAIArGWG×^?`Z8TZ|0H3avDWj<TC $7JkMFFU$xˇK8\*[t)$~khvfm#b+9L$ka@ $j \pCq-$i] NM/HԪVƇh7pDZ p2O̊Z!~nnfc7wT Sm~Ր2>ܽrUҦ+_wyPc)hW&[aBh~)5jL-Nby[^\Ms(&SںjXi10W+X^0AV#ϻ-83+ןljy_Y~ZeR}%!hrGE>O_Ξp;]wG0.լZxӾ@=>UГ'-xK QMaÑ6B4N^c 3ZyHP$b7Kꀮ]*ÚlǤ_j^5)UxFz9WNq6"yfp1}Cz|W 1 Vo0+4a2k:_e"AI %c{J@ĽPNbuiq^s6L~+I/v(4EfJ6H_^_\߬K'Oou먗u#r:ӶuS~&OK[9@FSrO]rCc6RL;MuS ZvODdԝ F#prw} '{dq{IndرUӶdHM$1u?\I)ܯ 1 {G7sw}5\4It ^b>m8.#=Gi"^9 <ivٻiLXr0Dw HaB!80I/0 Π9g}lA T(e!ab8kXZˑrOz NO4ǖ=s 6X|߾ZcNS__˓))PKlNP 7*py_dbmigration/custom_logic/client_copy.pykoۺ|BC `I\86-ZlJ.I%|wI=GV DxENxI)6^o&SM=:m5/oiZզ#=bdw7jDU:WI4ىL߄%{de0_)&3+""iUkI%ghA$9#P#{!i fv%^+ "_NgiYy5#h@B5ȄdHPe<Jo$C9>H,sM&O,ɚfLL,&R<*8g*\(D Ha$<l*]L0xLԚ-K *pI>p&ipT649 B:bB΋TG|.Z3NPAN?CDD ǹYJч:!7 11flA2’'TPM%xED+3f5D8Z)S%I_l,yu#MaMʥ5 .7 44>v(cqPbXJ-@) ))TrR{ i``B춍@Y8}X y`iu1Bhk}Y:DvE83SaіMP2qyEp7| 93b2:]mٺ݄yrAv/Ӥ?1z Q4t:P*;prY T;/md cɃ(QMa5Ʈ s2"Ц@\L<6X.=b_Gg&ނ-G'F6Rt9w?ү]M2m<)Zb"@1wΙU,u NC(,0_bW.1\8fR?&[w'6}(DRB3hSls~6H#}KIe&!U&41ptxE@сTڽ|q}usuX=I!%ݠ|ۘ>GفR#OʓSʾAK<t G'#RjHk:mPݟSF_ͩ ijP[Zxwr5[$% v dq;[ίn?O/`d66G9%c4Զ-v9Lk2i<uxc7ykݜLNJ\+%wVRv6mj4TS͞`iq&j LճRɨg9=QR!7\Ӡ,ܱl_iGϘ9xpl&O?NLp 0S 97mgxh/Ec@+B"-7J_.DwOe+'p,=)<ăKJ'+qܱӋ?x_p0V7H>l@9^(SYH{\1hk!>"w҉T hw݌J{G FYR8Í' b-(L`(F˥PP/,{xLPKbN}m*2py_dbmigration/custom_logic/count_file_linux_wc.pyT]o6}ׯH$d2C8ـ vOQ;F{)צ K=hutj}YlînV1(a ¡ fU}\UDPT '' 88*piDu4}gB+Ȧ6JXӪиAo?ey]bX[7ߣMwh-go>@oժo=w<;zD/s0@XS)uZhel%H4i#06i!z$' qhR t,: uǭu։a@15YهW_sH{Ąύ t-->خ Ȳd5RhV3hANËd@&L{1 V4vC{Sk5Z"\\靍dDaeF…4np߯ j)b2[';ѠS,IkC 57Qx&ؑzĵ ˘,12 łGHrm4[GaIT~'F8w> (xDvlHǧ"&S #wo(1s^ݾ~uyPKbNwP 6py_dbmigration/custom_logic/extract_compressed_file.pyV_o684 Um [.XkXN2kH*V-ɱю'qP<*tGmw;UF0a!]nU'RD2W?*vbU`gO+&wN8Nd:N q%!G$qdc2ϳZ9ZAXeb>.ߞ_xwSO+uPTf% iU'K"l%&FV a--O&EHHtYS8^*)y4-2G!=K0 dbIm.cMBȴ !l>>XGT"$82d7IᓴTo v6XB+JV­sh2hϳ k': ȷ6zDImLlM(sF Ёo` _Z.nDaq3MU#4z%&Y6vgR>YOB=pGCH]S!Tw(]/0 N]F؊b++HoF)iu*%oS7p ǰ:ȝ9JqUWwXp}7wן_T{3|Q27sx(Ӧ.8Ǻ#GۗRT}Wڏ٭rHӫr4zMjY+7 [㮶!TFE*jN3G~F G9\pN he"1 >,2Qlw5U2܏s m`h7 LRnFX|fPS4ͻ (ҏ M]!!C5m @fDj$4޾?h@ҶJ0`dָ_]|mh+;>}3"3qPKbNi07 3py_dbmigration/custom_logic/extract_msaccess_csv.pyW[o6~ׯ8p,fC8[^%,@KG6kTI*mV1/\@)K.Azަ1q i;QU|R93,-xi]a[Un}_^{S,~ 3 wC X3X@b4[aM[Gs٘T3Kxl()|_\\x]ɴJlI4;='LЙ۟ܭlxY>2 2Y D\<ڂY!xw\Dj)J. H=`<)Z FYΚ0_DPHA^D$87zbMwijQLJ0DjBb-Z6/ ɻZ6*þzMa |䚢7PH5 [2.&-gYAoVgEH*}d5JZeF5>(vB{礢qYm֎3jD˂4z͍]rJY+ڹQm~U&T%j)h$F$2 NOcIHv׿O!^DlJ:tsQptocOj~{ wwOϣ4ŪewGpTl9W:,rI:S Yi'8Cz[|I1æ n65 /e2Ef0Nyɱ/+_~G}o,G5 # nY}͢Wu)zx+V ub;qa: חw|0.ֆ: #_ Hj%?Sbi`37p;0X; 17ȅ塰`&5P;Ȣ3iqM+/لvTu[0)F1Ԋ )*ECf1NuX%le@b>ý+$DaNi{.34'f28X3T;C$[tوJҍmmr`p;S.'hY-n"Xen +>X2*wĵ7)ڱ҅?PKbNHbl0py_dbmigration/custom_logic/generate_checksum.pyUMo0 W `kCڦl];0Kvʒ'͂}dg8H>>*lZc=(SRIӸdxm_t^* 0|Q[RYDF֖yi4yVTR3ː.V<џM-kd매%_0'3+YjOo.Ii sS.n-t)Ai~)9xL1.+j )1R֣-KtYIq P5A7-v]6/< LV -F]u G$-sdz/CL!?6!a|mrl2TbqAs‡ :ITQnkyట>)iXcRֈwmMbLA03F7WoFBl)P\ )j),v1$7MHDcȰ!2ֹ0gCѰ,XyֳQK (JŐYz0;H5n_b}v/F1򭶂 ՗eA,!xQ#֬rJCĆ2ѭgp k8' dۢt4 $a:AD2?pfWAs#oQdaW _SxBmcNSfAϺ N84M#' Y㏲%2q"(s/h1`b7 o{饈%C\4 EZSb;z[α?"Nj<ץSޥ w /m̶6_oPKJNoCJ,py_dbmigration/custom_logic/log_file_size.pyTQk@~W Ƀ^QH9^Ӥ6-) Rݕ5̮ܥ TDwffHSJѴ54hnʼw!NZԎ@y*L)YZhj+NiF@-r̟Ϣ"FWNf_~}Qq|]qв Ԩ1$.X8z7v{]Mg-,ru\>c$.ǔR3 U%m`-.FOªα-O` ~!H]B;P|kgEփLo X_TbEOδSJR̋bMCI+Sp2gѽ^)[5h<Ѳ| j2_t{=OmD|[>jxKrrqLڜ=u<88%oW u+ܹ;&6|mK,ܟAaVyFpP,nB:uddޠ5"@N+¤ yx7 TEaD:k $:H)Rē~Zx?@\^JiXc=PKbNR ,py_dbmigration/custom_logic/pandas_import.pyYY6~ KVX7m"@ٴ}-Q^&Tn3J{ߌBjrYw*{W_,hSE"2+ xWj*_ƻLPz/wg|/"/fiHȆ,14Lxlk_i 'bϣ\7Zd`QţW"OI7W/u.++"a$DјD9Q$f10ׁI[ 5M82g_0k`GG̵)fmTSY %۳ȓ Ē,w~(Ϩ Y^& y{lŨi( gө4+vo#JpHَin;=2Ny`u40}uݱu6Ӹe!4M:+eU?#S D7I#d`edlSrؚpp]%/#W4{J"wF ~ rQ O,xc 5|L3St~_:[<{꼧xGԫQ6Z¼z`,R5Y{dn>A홒r:2\[8ZP[:уO2X)ߘMx}pq ~| 7MLV#w]=3͈3}<ޮ+'Ezg ;,|%-@3hZlK 3HL&W_v&7#QM.qlc$ [Hӷ؇(I9Q n4quXj*c dF 롌!G55׺9ҝi .^Cj%3 WS PR1I='3+s=Q󂽹|~MSU;K\%,Nn7[ `S.>1>\$g(9{&bJq$2HX akkJ(]/1VVţ9q)@ȄU \QC*v92_L!mw 7%WקtG[uZfxx9͖>'#L}rsث GfnLdy{@ | SGϮ!{cTEcaշP bڵAtTBxU Nobr\7ϞX?''=2J;x]d?[>Ib^Ɔ{˗GwCoBkvws܋ 8 O<;FE?Y}I)I=jC*J8yp1qk=Shc IBc̩^k[tzڪ c&:V Og\9GK4,q@ڮmm?7XPK\NM˄ .I+py_dbmigration/custom_logic/read_from_s3.py}TQo0~ϯ8ևSvL xiR;ܹInV:ɓiݴfڮCmMTή VH@Z\ur ݌i/=-\xP4::,Q"|2ߊ?iv6_p7ؠ\QV$PKbN &].py_dbmigration/custom_logic/row_count_excel.pyTMo9 ϯ Ìƴ%>M-Pn@8cc;F^R3n&)րmI$GUڎ>$0~yq?SmP4 "MWL'VA$]D] vvp<6p樓6&r 9v#ܡYWׯn˪\nC>+W)ҟg_8fDL`ҽ~@`D^S$F ҖƔ.^ gesڕ5$R=@HN ù , aqb1TSL0kX,7.?_İH%>"I)}o1P#!|NUU)A昼JFmV{կIqy,ȣQnъ$;"l]gtLIFP!Qwʊ)#9d,"B[2%Cq8Gi8hk(~8Vdǵ[ǀE;a21WC7gNt Sd[<:h^˂|lvo=.pA.IhЊܱYN nRE̦[9as'c1si /K_8:툒]Ӗe}Q?#3ML9:LCͣ` ԦY_PE;1(v<`dJU!${̨2mRwouo\W9/j *g\{͔WX7r- I3Ӆ>$O?U? R-:弚~$t?DH5P,dYAj|rR rB@ U3aUyr-LВsai~FEXcȂ䖥 l,cʱjf Bkymjy+ŅqB΍VQ~,Al݂klǩtJc]jbɌiE |:atdܵm-{߮a #J^ _ bU!A 6ԤvH"Bf\,Sk9>?~'~$0ET靪ٰ=/Ga,ˇlsi0E] MiQ-8 lv6񵬅(EFntCF;(8ۇ$!Xyݬf~M } |qWdAX%ޏdUh,r/ImcDЊJR{T<*ij7EUqaqڌ!ޞ --i1, C@Q 9q12ڴ[QN84t X2[-q4K&-NE^Iap-j9E_\jGj;r󞺜ILgOB^khXOZQpHE}XvK4M(5-TZA A/ +C,m =O"_U(߲0A7BU6H'R|R3~H˅6s9-᭧F0)n-?8܁P(GOC8?|J'ktw]iA_o F~-r,˲4B(d}~OHdt08[۶qF8wl44ڸ\t26{&Z}+ u&"g{wKyqOl7mI PKbNٲ[Q 4py_dbmigration/custom_logic/upsert_table_from_stg.pyVMo6W ևZAsqIEh \ҲHl/;EH{  tmh)ϯþ.Tu1HmZ4 r[=o1\&T Xշ8+fyhkXH%Th!@"-Ds oӎ=\_~pi%zNI_Fu;p* \9xO^G^ּ/OULitx o4U|0π4)Ԇc 00(X8kv\5Gu0af";lU3;֓ p\;xO> zQȆÈ ( _fh%@ Ȏ Ez(=<*2 L!,P (=QQQRFƐQYZ5)̞GOf QW۴)ϡnrRٜuUR.FV JR%oj9~+*ۏL6ؼz E?ªX̡,軖%nH# #d)+\,GHTvc/ksPQUpЊİJMi@: ,6{r*RrOE:g~gu܂'&)rXPSF~Ĕq?ŶT\42]ݙ;s-&ToKs<$PnYy iHR`ѹ][JiFAQ4O["`[fb˸b_Tv,9wh8r-m u&iDʌ;q Wb4Sҙ=1:B{Du`QF?SbbO vW%^!͘`Ƚ;DJUͳ yDvlYozq :)r'˚!Zs?"*T<_cwQS'' 8(EB [&:/J>  ?0-R쮟]an3zN.c;~Kn`! Rwm{ڱxW.[o7PKbNc c$py_dbmigration/custom_logic/wyman.pyn8_&HںJE0^`Mg EHJRnΦT"dE%a^̾rʍڽCZ2*uke]T\*쐤dU,t\Im6JtV6Lq OY.bS:[9r̾ Ofk%)8kwˤS#@kcp×h"+QV}Z4Ia֢T"*lFlQկ_~ W~VD-?noKgo>cwby]I (Kz!)\i~Hf+Y[pF2%LJYiL`  ڒ]l6KŚUJ։YI?-OOI!y^KDpd4[!߾ҪV*b#mUJ<rj8"g%0;rk7[g >n~}! rF}w~虜{wn '%w@6J9e#nZYo7[@q, CM\H-YplP0T4.|jN'Nᑳ=z^q 1 Akq9n?='!FȝuNxEQP@&Ό(tù~;gjц i?b`}t!{+s&t(OEB!cѡiYMU/(ʄK(OGHstςx"1 _l7~:luNܰ݁XWyfEݽw_?}^aN"ny6$@a !cH-V/s'J4^uXfEҷ6)hQ hXUW>G]K6P (':'0X#;g[̌^*(W0\aOŲބgۋu zjz 6A Z'(GVsW1pg7p\;vxkɍ-#Ѵ>6;URyYg-t*04V>sW4[SkN.;Ů;G0?f;P,y=1KEʖɆ̧^ *e?0Muet~"HqGB4`)B۾ˏ9I{[cĉBp(J" j~ {k=#8 #lNi3%+Q| '䪓,vlsBuf\ K}6|?==m)hUL0 Ұ9(9tx^DXWl-kҰO'k(MI񒚼)q..N&ߍDG#y^j9n*Ǚs,f| ¤ t4y[fih0?n}@z7hcFi-tʗ0BB?-@m#V!5b@4 A~nҬt'C=UB^mE#S=Qy8oY^ȝuMTa/5 :p. /a?]VL3a뒕H*v4m9Mm ԯbAX FەYNq]Dž@ZDl@!u\q]H@qbԵZ<R$Z! ζgA]5hx0:qjݎ+gbmaˤԙ{svլy(x>qMBb^[}6QК,P un;s:>2wzI3"൑+Y&@j|tsMq9) JHc0| avN\=#pC薠 lۡ =wi~X:T^,ى ̋Y_/352B4Q{=6N>17%Vvg=G~y[5û_s}gt4#aKsz-AgУ*DuJ}Uʖ T,Ah>oHҠX/~0?Cyl&TӅC5 U$Sl MՐ26` YqyOXkB+' 7EP-BNUQB @IJwB܎û5IP^.*.98%6bo/tc8 )1o>NMTP:{ ٗz L\PInؗlh!x)U%[Q~}q7kr_TО Em={dbT"p=,(_k[Gp1jl^ uйb 4:'T MmRqmfW"j pPK\Ni(''py_dbmigration/data_file_mgnt/README.md ,V(QHJU(H-JUHO.M+I, gPK\NJyw)py_dbmigration/data_file_mgnt/__init__.pyK+US-/*QHI,IOI-RPKրNpG>^PlXO(YRwdg5+b0 wPvzIL Ih-ʌ $~ ScF5 4CWa624^H`7 t,x 52Q$C* [c7"}v{ =KȔNoc#~"Ptٽ4pU)WG"t_^_(8.αfKSXB ;fxo/f)/Z vxD@Њ"$ ᚝J+q-<[^ ] zlu圧)"Zu7eZP{2SY'(/h& Sijj7ôo 8@5ʪ;cdZ ]65Xt0 gF-fw-bgFMƉ*EvT5]8 p#+!K\r;^A N&IL_f2~t^VnҖfP(kU#*}ZI,Ooѵ1rޑ/ ب/'lD%W5GVˑ_/1tTá񳲣]KF!zs$ d 8"8"w9oV{oԷ(Ŧ \ w\wd3Q >m2?6?)AAQj{Wl+Ta# t@Yϫ4ƕͭUo C!h/ 8"C8Wyք`z m+NtfY[}ߧ5=|L=N*4dm(;ѩPcE-1U2_odZ;+w"v;jܮNh}si m*)\b"뼩yU tVSԓbbK 3=]`߀nQu3^E5=f TGDEMPhj5|Pzࠛ.6{ޖz.?)+8dUmjnq9=+O`3Ke]fvKoQVkWeU9[-'4!Ц\]!6[gb'_ ѕ .TrcnFkw*v~P'tێVIb2vxqsFT~< X]oϿ=cC;0S*,oEdǖ| 3Ht]A@L];E\ @6Gc= zmK2-_x6^#/w1phO:oNVIik՛e0MO/,ILjK!gjd ~it2IdpO:hhz^Œiތ)ᚐ$PB߿%JDY8}t8m8%_dWE)$`$LKuن {(IbqyD'Ȳ暡2*r*q-`&AԘ<2NqwX-Us햶\tY+ɾ2-MFð!mH3#89E_vݾGEjIev`+X!.:7k#F6Ɛ&Bu/SL/(8zvr &#,^Hc~{{#D{"5n*j1'6]W[&:'E햳~yFuڹ"m A0xr;0S=jkQ.Z"f$tiE9;^3όRbk`M˹U/Zc^Ev!BQ>r_(3oYY7;ܧD<ɨo-9)h$.[W'8idn:$+VSh7tf^AG)[,lqY*+ G!9.1Ȑ}ٺ>%EWfOn1sz pF$1.u[8ԗnjόL*2(ݨLβfZyRi5Ἰp23*R+7PKbNt /py_dbmigration/data_file_mgnt/redactionrules.pyV]o }ϯJkNK<iK{*8f`^]M;Ǝ\. FQPHLAd2MchJ&Sg S\E/܍3"/Cp/՝ `y!6uADB41 ms5\фĆIqj2 M!'w4% MyE"9]B,yH$h\jI(Y,<%Pp*i0H=P>˅J/_qrw~7- IQ!仄@jyiZTAfJ؞jt)}Λ6;BGp+֑jaov,l!qDof^xKpv)D׃)CJ9Λh`gx DBHb{dpx-nuۼO>p= ށo=g/svuq~Ӌo?oa{q -XuQ;!T>Ke+*yXϜJKb1ܚW?h|goͿ%œGaNqy~9?݃˴^WGos0}|m٬l9xq|5N_mr)5B8DQ#uGk"*ɜ¶z+4`s7tHBEI* b,zen(UPKkN@A :&py_dbmigration/data_file_mgnt/state.py]o8=Hlc okҤפ؇$hu%q7oҔR\Ej83!%o6ႜ~n);3lb)Wg"tQ1B;b/f˲bfU Ce!񎈆rH(/#u\Jp _!cOo~#s2t9UͪjBlpF|t,V..*E,"'o6m+Rg'W'<òw:$Y]/]kդkz3Rc#5IDŽDdzӷof;EVej$hܮ%oNԖӈ%-+T&iO 3PkA 0`ӳ3J{k]s0OOwD~>? ׏dsգz{Qy0I ۔t4r_u #)Hmif⦜?Jhˆg"nP9W+5<3}/ϛZYo;䕜;6q,M ֳL; IӪS02ĕ`KRdٸcr r*!|Jq6CIf;fK,] 'RO%c2݆ܳi>v,7|Y,NaHcWM=L/[u>de|݆3}`^ʈR dK@Kr㽈0-2Дmg2=SѪOin֡/@)3{ Aؙxlz|zjᙼkg50 燇c7V==&rL2AP1ژz퓳%gZms|.cmR;h{"U"Ծb29(f-{iI D1Vh+ A: .M%x^Ea.%6F#FI%94[~! :̸yL[|Yޱֆ70^s\l߼;Pɭ0HC&G[Jsa)l6*VPk UT,#t3L_ M)T%uLnaYn1$O&]q'V0T +|.VE43JŠ$!y5Vgbm-9Yw/DZBPdm}}.%lgE?OQ d0R|ue=T =)An^%$!Bݣת$ 4`WB6t*&dpzKCsri({x;.?u/mя.uم2 6(\;`h=Lߢxd2$jhYY [\{#n%&l!bEh3pKk}N;Pw#NroN&e}s6}ϱ޳ݭ(XX&8VH Pj ~n)XN~:+Kt|CHuJ({ B})93>FF1Rߕu>bmn-T ~1_j+ YhDFS2MMg\w3TdD^naj'B` B  B r\0A`q`É$o2!.LFR⤁ c晙L0۷G_y ?UA%1 jN$e#Go2U\?zeNu.Mk70@èFb #[sCyNbQ0@ay0A0~p" ,t!&1-t( ٢eĄ P\PHs!&dEW9F\FZn4UP#$zo p(B3VZ5]:AA2=##Fe$#h;ѱWD6i)3n5Nwa䏄$vtꠞlCO6i>/Nhk<#q_lm'.2Xw5n5t/TT45>~fMzZLj?y  Ґy_t@֨iddG U^B^`uҖӀi;;̏_XCNn\]c\GSЊݱ/#6q * 8Bzu (H(F *ׁI]w,i&I2߽ǀt /Q`Iq'O$+oSU'#Vw=gr cz;ľ+⢩GSJgd?ć̗tԭ<ڇ]}Jt>0BڽUʝn4xҽHY3;:x&շcl}aF3lӟNT\# BcyBÃ)U/ԟdZ]YPJzt \@ͯ! j!&?l41M?iUWaݔN&^QDAI "JvYA'q >&)vQRAO/%GZJ/TBoیL Z[:E 9@a3eo5 ɞr xݨ/^Rrhҫ34.s!jqݤPKPmNrS=&py_dbmigration/data_file_mgnt/utils.pyYo6_A8Zz@q@u6wK-QITI*~H,'MXg| ECVlj'x'%/͔feUٵ* ȉۆKLU s|a~ۼ7TۮŎe5VeWNց6 Ëm)FSxX,H]I$@h3Iջ?jX=}6Ԓ@BrebeJ2$NHm)UV d;+Mbew@I59pf+p-gNT-+`$J66@)Y6g1nt D 4?nsA@a+oYP^Q \SW|~^ e4J]͸y z &^TJoNmA:*hPjmˍ&:'/PCȱ!7:e\@ b.Lc1ǰn v|b,G!iސq.f):fc`G#XC85_<}LsF"r҂_[{;#LL52ڜsHymoJY#[BLEAc< -Ԗ-MKLv7<i#Ǜx8ݩmһ#4M($xGfˊٌ/u uLJ!K*5 3 >D.+Ve=t^aG=$⟟6i]ܘ -k";Zq#I }]=PI%^ AU,kYl{+(td8e $~Ƽo66ˌYO]FT;DJkzt{ *4{t>x9>&PSa Wl'-2}^Ʀ͵ V{J@N# VQq\53]Ip_Uf`Pl|?8d 1&N?TBOdt8[Z?Hvz]!$~:2bOEQҪ5KHPapz@z3|Wo8cSO8ppL o?21XaɵNFO[L@ss8tf9a^vKd8L𳿒?}|!ivś+*kN[轝 ڠ VcG}%d~3ia2P(Hqla?C.ի16!f33nw]a~^^꺽8?o6RK8H,&p{SUjȌ˹\ZPK\Ni('#py_dbmigration/db_logging/README.md ,V(QHJU(H-JUHO.M+I, gPK\NC%py_dbmigration/db_logging/__init__.pyK+US-/*QOOO-PKtNHhҹ#py_dbmigration/db_logging/logger.pyWM6 Wڋ@.]趇ފBPl&1Ʋy4D 2*᠙ 欀ף)>a`F.H->szgY6kc)`."2=Fi`21M^Gx|X'^1b(-BAwa&Bo~"P()9T{&|Il˵ߣ0g+ej?x0 m:ܶU7UdVkh^Y@M*Ggne{43LTc$|oNϱl $y뎼n<8U/c14eqEJm|Ŋ59*Y [)A'UL!O|>Clg@gC1cVl[8b0zS+i${ҤDR1@[.#|^ޛ4.omhQ@ !a-צWЕe0xDuqhN{@rj5bG:I]iݜOo9ENX`t,+-x*'zK[f%g$'xOz}x39+yXtȐzf*Mgs;\2{ dk!I\gY Cx!!eINv9b՟0q!goq!)η\`RԨ8ynXSD!!Ӓ+Q,]*NuBzF+MmB:e:AG/;e0;JYKIUj%Ɂ۾%vbao`H/M&"z?iw+6ؿ⧳TPH O % Wh%r{,k5mmyѽY,IgXK?9UPz8M2<բB *?6-;DoTL>jl:h^R,׫Vп4"eb3 o(ޓa8 CJ⹥W/1]Q8d_>7PW,GD54tauN_!Z zȹUqQ9Ych`Tۦ@8яcJYqֺ i6{I:!oIˑnTh(P;tE--34ވ!/O&ɞpf B|(J;lhQ!f×LJRb9O|3ÈӨ%Rb8V"G-[:"t&3Xg% Gi$fџHaO`B Wm9ifߐ4dGc\;jY'r8,[{TAH0UUc+A]U\0`P-ّQ|-J ,ymȖq v0huCy;RnBWð%j_C/,lǝuViWo▧.TqǼƻh]p \r޹10w%9x_~0Vb0 davGh?5X=uaT97 %__Ҁ"&Z SF=;2␋ ɗ3j |탗2la=E~j8FcI -Auτ|a-'1nL̔pP/F{vM} fl 阮D$>),$K4޺Ygi·8ϰ8~|vW*{`@kK ZHj[ 2%lcW:SV}Ui%\C^)-Y#>h%e: ?e#:ucv.B8dMؔ "a>xy\rv/sVM&;iBiWn4rWXK4|1մXjŽ5,GvW2عL_7NZm"~b1Yߘ}`ᨅ=56m e4Jѻ`>iw'Rt3yRqgΘMX-PKe`Et",&z%47nॳ4Zb'f0) >#_\Kp-]̻mǽ-L<KNM5Mө('9Wy_"DS-fr @ @}:u]􃋸c^(2/y1dð d-4i٫K]9++tT8Q+`(\$7@ TgDa($TK_t8SiXd}Q R(d޽פe1.KdHy,8@2"&q"^@cWᴀDƑLqIk,9Gn4k qΊ$VrF@yvUpFlD$WcV&-` MӤ}5 $7lOh"MyRwsUk$2E%ccmE UJ9@$>GټlUثD {{=Fsy^Ո>2jjѬrҏ0EWI+gl,e~muf_m9x{r縑0DxwQF f:9? }tr aE 2$ATNdNϯh().\hf*iBk$&|~46cF]͉͉' $i<.,D&S$vdb"q9aQo¦oRy(Яk 3eqsT{M4 MYbh|j¿KZ+"أ4#ͪM\΂nshR :t]y=0n`Z'Pmx-.8 u5;CzZf VT *A!0 rS"m1ZnI[%9XdbK<<̒!>$]MBٰs]*(U4'MJT2aq 96f7{u^i ?~RDERvF5A {PB"}QA5MY!kLE> k<m9Y5i*- /Jw7ՄTk1ٰikۈջ`?Cƣ,zҥ.']\/u giM6٧PkC'0 ]f^^FГ$/ͭ[NA nnIVgc@3[.3 5t,,߁%.9uN' D mP8v?J<׌͞hDP{w]tw{i `٫N+`GN 1cxstV؇ A/0@ݛ~/K5Q 7@Nm0~;=ôW<&rUeo?T57z|q*F!$@Ba $r2Ƭzee8DRC~H <" Pe(ℰ_Y ;J3U9xa w4¿QRuP1dW߾]٭88KICBsAa2 prqT4Q>B@Z.y *T ٨01)k@#"f~@jhğjW tD@Z:䒬媑@9x1 niMҐU^E *,v1* rfw+?!oIufUUV 2&6RǷ$#Uw fC|ufQ[\U[1e?0rB7Bԗ9@ *Z5=!dgs1 :uy^v%aL/b ]K!i.-$H;x}z^|Px"_H5 __P͞ftL7^N~{^$UףiLD?Ȑ4cL f枳{3-HR.l5' EA$gJť%EwJT~R^X| {zL\|?Lƹ;C1u؟ t;6EL'K6/x܃QKvcIfX&۩9"d7:5jX}|W*K/Q}3(#0Zx˜ )J& 5%Y{ؔFj4f>??7|w W.Qd/R3rz,EZ=4)ůy+RTe%,((~ "qL.HߡU׽t_Xz<ZdP1 `R,NK.JqeM.LZj"-F˲Χipea]IC_*׷o_>8=>߯׈^=4 ^ ^'CcMVONTHQMaY-LyQ+a%=WYU7ThݍJ6)`GsD_7b;er :QYC&[{Uj͢Xw^6-Ѥ3S\F7*zAe["1,H"W,?F JS1Y%%*I6R 8wRbg`1Dl7&> w08}=spޞ_#eZ$zxw]N2yϏ7e2 וW6mX](EIO ?ٚ,b?l*~ggspA%N.&e: v}۵3߄5faz ?y]r`gq]aʊqOAĤ[y8o5R_i*am}/[%h({+b(=RQPbqˬʔy|;ɮE캫,yʱbjϳF4_F LY<UnXB]Y"B}׀g꘣ VJ EDu5.GP@ .yIO`LmEmN]'(,o1*u!uS(9轕%kUTEQƥrlC5E120B.e4b3>cUHGE#ЅauS?tyl'|9\W [$uK7ФCٳi< GLfYl碜4f:nѨkb0=C>HK1 ҠIy C/b$6Ruel7c-5[/l·[ͦ(fJ7`h?R ;A W UfI*/;iL*R$ǽ w~8}gץ$;棊UȞ]z2yXQJZSZs^Hp{w_e[ݖDs `G6;uoP vssE7\]HM%%hXPˮ# >.3{ٻWQ:ɄW=x^@62QtB.j`G PW y80N벏_fnɊ_ Zno2f7 b~mYn Fmm1A +W8M Z\¸g|T"X\d!$H]NQtB;`xRh 𒁮5aNqU1\@8Ww:uZKqJ'Ӧ=}Bxh78X530KG%?N22u _u\p6sـ9x>ͮ[Yg(nbFCj96d&9YZ&8K῾)}FWOh%߇ߒm![믃Q2]9Eyq1tMZR[C+,\ix 29inSyV3ЩNUMM+Ў`r/ ϭ-YYۋ? 4߾~8~qzX3;bC/,,4@^2T: Q*.ͻh!SpYt/&񕑖FEX,}ZΥԯI+P~,qEGxS]v/jV:-~y+9ĭ.6 #=/[Ӝ]D]۬zRb1  3Ġ H!C,clhҵU"^C8>۩V*xso}/޾1ypzPׇߟEG'_cqGwoOP7Du11-QWWnvoWW(H2CYAr +!F-#H* j hav_&9KN2+." f>q6!*^3!TB_~a景JkGYǣd T73F )`{y|ޞU`mX7ƽЦv>a( *;ysS=tCD65iԔ6϶#'qX:P^ôw-!sl*t&FWS7PѶag5?P*Jz+t *НM}6TjA{rO(4r.LP>>gTrV$S}AǩqNl+녕5:5v-dB74v;5c+NJKkZ+ 5ڥ9J40xs{c[7GQ}n]v"wZډH;=kmEFnnF#*ٯQHOAU[(aVёܿ´nUuȚBTZ.\vlcޞ#~HwNͿ jQD𪵾1}Q̻4/ANBǠSGê9`O^QP{RT]5ST_5/}ک)82_FZd#^@߾{r\̕ǘ_%>\yr/^_^Rs!Fy Z96n7Po@檳DS_I%&ښNj"rFˡd{-}U\DÖZgw~Zr-..}_mB1;WF\9K9Vem| ](/*"%0bEq6uzآU=8h6%%Ž2yx$[!^b="jl/~wprgϞp Oyo;>;qG6< m-$v`XEGf>mN #mxՃ@<`1g _F b;A2[z)c'@;Cڥ8=>jѧR2Y3 a[@SrrpN21h|8w4=]OT=1Lâ }V\pPΫu:.ۙdx'*3;+8 A7)5V1'eR aG<=F+T{^g$wda~  _‹\iD9#_<}ŷ/{> :gd4MUklG  IϏWܡxDo,sM#KđReyTfj}EoQBܭyA`+'n, hF~i1 @w4loG?It9=EC/BXQFFQHG:äPCaHYmC mޕĢm%!em!$^ܬbVhC]V,mI]XB9>yO_+ OK¤|ԨYD1 EoK a@D56}ǀSk0ů|u$|ᐾ]L-83+vbj6H1-*OԓVf0ʯ+Ԭ($1 S-)z(9 Wu D&XlqJvh@e3i W"yWgWd;7QoD1s vҏ(: Ňٰ>y>,BH0, 5dB= ѡ  _i4HP ePcn4~1:HF2-np\֍HM[k?ОMrڶZ9Zľ*\t< %u$mU}2 4YY$x%qQv@d[of`GXeG:C^VVDv훉Y{lSkX wf[ hE R+,53C8B+5F*.gcTb $ *!O\}5+:kY^V{rFHա6 3mR >qNxn bczGQJPߩEb s|fԓ5+_4x1jJ}NLevdLg1M p4ix2Uz .@-Sl.mbF}!u }tC<"xVpfygA1M"%w1B8*KraW!4x/p>UeFAOЃ݆a߲/|d Q>~E\%!Q _ o%лO4 aq2X}+mV2VِK l Q6`|!Ƣ&|B^s. GkF~Pz4m莒fF'j]gX?'sW/@RQfe,2}% x]*xGWQWv,c%7dB$s^֫[f}||iݗvxޫpŘUe} S߷UI_\W\15&Yz4ٕ͊I+{Say1nbSӺwfh|b2gy'lHϪ=e-0K`yIeFGxZsG["/b6=kT{ LnzO<尨6ZFZ-E$ % ;Mn/Z=9U#lꕟ͏aH'º-hy%al6=LVojZa}6oYkڂVeh;,RU# ev6&L\hߪI]Qoe*֭:ȝ ~OHy8Fߏuan- KiV*ӴykZNULɖA{f}ah50z^aݨdr cݶ=9РV c [=?Xc+C^1~t#{]@C]|(JBkwݪҺ.TDY@Ƌ9*FaGwiX9et57U'YGVߣyα6e s:T\:ȍGp-M: ::>9| S n~b77#)oxW ~V%^-=9<8FT/'Z߿ka nrZ{ zNzg1[~Rk҄*ᙳs=AR+fv$hL>WkRH5@S*W ;~XizH(z?s %(DJy5:K RaL{ D<7 , Tc-zȥ$ܭ17F<| VťZNķӚ! ng ҏW(|Zd9OSӘXM5-Kg⟝L|.n“` ;tPa BCFGm_gIad0GpA(G*!B$lĤT~DwꎍeU9G1(agsU%= +04jAM`/X69R,*sUD8x/ɀ>VL0 r_,{͵ʓEQE-qE#1Gm ULN\/NƨP%4I,\ P,GQyY<}XŨԨH%@MQfY*RL@~c`Ȯ6¥TXT]7≥4Z]@H x<3~5R․/Cɠ5lQ`[F*naP4Ǖ[2Y<_~[1{prHI1©:wn%nf,&O-oГx5yy mLT*/kAH݆h<Nb:c V9Qp=~jX <+r]v7uF C\WO w潖A04[havӧEUˌܫjp\1R UtzC@S=$?{Ʒ=prXk1|Ua2vVs_F iI RR-jרAv׺u58mKyeз^tqce;Z{F}H:\@QCmPr@47gÞ5Uo!jZMk{n;+nxtԐhZ fY[N~uǍsh`+ilxX`Ku7[7Q=0LK}e|f%kNEUq |=nP ϧ|y.N5"~v4# (Z,fF0nIXz `ƹ_F" (.sv()j-B=u -A65o= E!biFT ᙙ@/w'2̯t cSu-xp+nŪ\"zwD<k -sr?(C)kZZ@sSbZGk"Udk]xO&)9:avgz|#iMJCb$_ l`XD(e\*Ҵ^9ܷ+d/ʥ:MKBP me- ~➌;ܠhKhlQci5[y9-B e3 lNZ(-8Q;2hM û=|b4V`E cH EQE[JSS5/_1VV[ѽ Zyx2o[f_}1-ԃg1O- mUWpܘ׮ *myJr&iuVNr77 ACect<g_ Zod;CaIcM3DV]qb9IdO#̖ؐi$$`:̷%%nM~'6I6%fmX%ۆ,|fAz2C%<Ov]^Vamrx 썍h+=Ǡj BDr(#[,xf>"e k3F4 4"ګl4MYѩ[S5֧5ɩ]lj̀nfx.5_vx3_0{a][hݖQcآ61#,̞@f̸\Oi`=P Coy?%ḐF`WR<ܽ9IZU1\.O Oτ`4R*ziC-ẵXRKbtg#K[UMl  >h}1U5]ٽZ9 '.|4 s胺 ss34֊Ul;.O0d>)*Ɛ*>$0)Mڦ(w_ۢJm1RyDMd(Yyg PEN?)ɤoـ r@UY֐39s)@IIPiCzCګCl410 ~s}%T?P0"JR=]>ҐAR ߠ ]W1(lQ=j-%[bg2TzjDhyWv6X!pmq9^ ^ m}jzpq0\@Os2\Q$<)ST`3pXTIvlBqgLuȋ,gIKz:RjBϒ+qdhrYvF8YirR_nKAGOYlWxôEG%AXe|Cӷh,jkN|aT}FצӰk4ӁG?q(NG>=L)c^!&S1f,7/ŒBo3|oaFNGyB.( Ȃ}4 I9zhhuyA(i)VGGVH ZVg<8JӬcRaעLQu5#b9xѫ/c(ߪYѼA!t90aR&&ܾ,5pp`-c gWPK\Ni('#py_dbmigration/misc_utils/README.md ,V(QHJU(H-JUHO.M+I, gPK\Ny%py_dbmigration/misc_utils/__init__.pyK+US-/*Q,N/-)PKcNR'py_dbmigration/misc_utils/misc_utils.pyTQo0~WCҦ-}UCU;0I% yTL*"by/Riȩf\J%e`c\QU6\]=jGC4q% i4ˡ ~"\%<=GOϰ|zcLT4fiAOQsBb1-dN*M4;'$_&Kh$6T2,t)uCֶ9 Rhb-ľDPT]Ef4q7/CѼP(WU (anfH\%YqCa" z[3Y0dk]T!AӮuej+Ym6p 73x]5^έ1o/ذ3+TghƇF^ 0vHς3J(v1fME<8Il=LxIF$B> ~=zzh# *\bu1ϑ~YΝ'={vnwNG)PX^-#1nI7mv(vjrC-zƿP\E 'Y]J;A*I/ՒD0_ۿc׹)6K,>v}.PKbN_]0py_dbmigration/sample_code/create_table_files.pyKs0| p: tz!uӴItrd4BZZ!I#Ĝ%q⋢.#Sc_%l::r*ׄƆKm]n<%\P'9udB)r/k^ft1[xCѥD<*R㎦:Y{ttou8VV' ?WZRXRDzۋ[ш Ow?n~]u[9?vWn^=3h] ϴR}UCccdz 8ᩭljNC0❯i8E)U  #t%5Q4XqVO b(^Ri1談8l#;: R }iYⓐ2+Pl8Njк & @9'+j`+ E…eR@ؑLj̼rauJB$˚>7Y ~6ik@]=M8Rt:9ߩyo2df #g{wl]a}񢬺mV$Rx"LKf$ ]@²2MT^A-d{.&ם`*TX1.37KlbKd'SOӾ ͿN8N_*ӆA¡zA4+PKbN { @1py_dbmigration/sample_code/create_table_upsert.pyo0WXC`´<@ineԇjx?'$mHUUO|h1uq ~  urVl=..5ʂaVՉXϵJ$/\Vʷ ''iTZ-&yPwE.tUqUuVrO F٨ ҂8NZ ؁"SC|0Ԏ[|y-~SM^ ?nכpm3墻5060>`ǺVA؛P_tv5r,fU⩖Fp(l&ܵMI]mqKP-%5Ɓ .V2ldSI/`}pSI) ]'ߦrsڌo=bEK-,Z„j{Uo'v:( |eԖB4FÈp8C^q`Gxo{ ?1by0PKbN-TQ'(py_dbmigration/sample_code/import_csv.pyZms8_b HyocL6;2ږWd^lL\.ĒQwՒx8%4C>{Q%t>ȋ tD(wO,,AělM1CCpM,$x:^O|R4V5,bMnD0YV3y-#sIS4 Az0 }$p݋#u ЩmXcHIН؞mKC~:hr(;jQ 0I`IPKXx|1U <^PnQx]3 |jH}Q%>6b d$><+? j:huhd&5G;_Wc?tt ]Os2?7zƮqsEtZċXỌ̏:ƅTC{!1 -\K2^V˝.(OJAEA19k*6x *ދC토WUk#?|lF?a(#< lE.c`p3HI 9k$Z0q6XZ 2'tkfh1Eӏhv2̉eAMF!Zs71(ǺoMoVGpG]͚n'x,xOW$77t5J 1z]Id]WS6~d(AgAG:@t^Ղ/G'ANRVt!(:wHjbRo`ʮ"Nw¡gȊBdf~_+\ 1L0esF5:ws4V8h湅RmWS\V:չ/jO<ڣR~PLZH2_杆og XSW]|Qd\evց:o8m4 {qqV$+ە7_SJު΃P(g\s9\1+O6.g&)R,L, a j5NAdhAH]c?d%n„e PL%xn2 ڥGKjE GaªN_nLugcPf(d^Eb(?a%ڃi"q h9坼!hc Fe\+v=y?/q7GPx_U^ 3jdcy%>EG4M~Uk>BWRQ:e{$' ;܇xP'VҝjuVj JSDu쵛jyxgNY'<8!Xwdy.[[Z#jTZr|BrKw2:tNA |RV((JTuǽd^$~+&mMI3I1y/PKbNJ+py_dbmigration/sample_code/publish_delta.pyXn8Sv]9Y࿨7"ni'@KDUADqc/ڠ@eqǙh^2.Q"EEUKdA.b«$1NKI3tdB9 NcdS,q<y!,9s,PkbYkNcq9&SrZԿģzIK}sϫ)49aŌ΃ܑlGއӳQ|q< )(gŕyZR+wϩX.V$>Jxʾ'` {#``@PŠ$ hP H6rX^3GPuCE%g "&E2Wg-d@IN /3S R`# m $Z*nWމ, xt6:ьAFG #Za:fnj=E=GYZ]ڼjhOcI~ (n'gy L[ j 2G4D? 7*5t D:K>~ɂ`v,BQH= * VJERZ3YhOu:}53L nLWMOa,%撤}L*[EFN]6aU`k) .VTm2д뒅9GUZR_/U!ѠŝUT"_iV ?h~](ej=TcH=6hje?ZH@OL9 l {lV;p I\(+',/3R mOUU&+C >`ەuUIKNyMWk5zꮙI0W^/d_(l|Џz}2jIחYB ֶqV9>Kkv kHqx~0*zQZcbr>9>CQ_#{6u\=o!,N%׽B=|3RAGcuA_jy}6QM#Ƀ;ͮd~Spoe쓳]K?>_Sx`nݻw/#Yv!M=B6PRw k"Yrx/K_TsOIKIV=za1eW#hbߒXߎDclW-g/ D/DDkvh9\{߆ dtPK\N*,py_dbmigration/sample_code/sample_tables.sqlUn }GGVi]ԏA&-  lӯ8(/=s93঑`ȜG:bd_30D)(BxVL}n<@\LQ >ﷇCؾm'sgzaxze+&7Y'"Q-[P\*vA=Y,K?c *HS )!B;+ō;Re*IA<߆dL3D´aHj}nf})BJ2yNP%r\t]XĩG_DADgRݚu/{נ1[!_/:zW0`jLj`{`E8ZWS#]Zm8ťOQG!KpC2b'2nHee߮ _"Oqv]WIe{3_(A&u)KdrabpUHAN.PKNs $py_dbmigration/sample_code/scrape.pyVmk8M7±`[B 8.9]BkkQr%~3K6i -h43 mo]^tRN?S5=z2YޯVv6ζA ~;<R\M>ʇ#yЩtC3ͤ*VV:zpse~;݅qT˙ Y w)X!g)Ӂ+S`Of*+)`Y~rK%UשzQʶѢz(W]1wTQH{`/&UZō;/䄞1Ei҄z];%Uڭ/ҊnU58nEIQ䃻2Ƃ˳?^]_lVe[koW) 5#WnLG3t翼x mARkZGҟ6*g=\:6_r+r@TY&h佳 >7^EVIp*s?=PK\NÔ'1(py_dbmigration/sample_code/test_data.csvKLI1QHFPژ+Q'I'PHNJ142@ PK\N'py_dbmigration/scrape_utils/__init__.pyK+US-/*Q(N.J,H/-PK\NC *py_dbmigration/scrape_utils/scrape_util.pyWo6p>H4cE3X]E@KFU wLJ$NMbx/~wVHM>)L}jśd)ņԻMMZosǔVmynjv/Rtd2ؒ~/븓ŧ(Mr1!H{J [?)#t_ Z%Fѱ4iKLw!T`9xKgUH{NKJC0#@i/;l%ET ~3)ْ7UA:4EI(VlDTʽR#wF 4т5#kۚЦ"6xP5-kI)$)E_/QT>1%&rh膥sePpzmHFw4՝%fY- ƽnlH)zBh-8(h2{:r.OtpL%ljK~Sqis爉2hzMD˚xtv%*<g1\w5P"Lh4o P;ܶ V` 7v%kÜ!ah9ir$soth2|C.!7t`)2ѸL`90X@|#Sa`[rr~( R9)b^]#CYSe)iF(`\yDtx]:Ik(E&hD$z-nh~6'kZB%/ǚ$y y>Kg>B߽~f+EB~_CKbyvy>K*N&db7a* p]`2%ZPGx$Qʛu*Z_} 7HS^*-8bZ BFkwpeA F2*sc3oU2jUiΆSWn'Cۙ8(p>-*VUg#c'Q/eJ/ &ϸ00~5U'L%({%[]_cW!d/:l>phT /|맖?/n@vh)WԳMA_/ @ꡊZwy6T׋-l\^E!9qg@!3ņǝ&3IK;f%:qr:.PF؎nlf]Ӄ`!,<8E0h=rXiVR q[-DzI>P&)1*)NJKɀ;{ӹ]8v0zqKkv=ǧqc1 &w2ՊFacnE=@lЇ=at0/F)ђ{n^`(mMM*I|~GXu0̨S9G̃ + -Xϗ2''#kKZ@YCwp@(;>ϔ.+|Cnue#QToPK\N1|n6py_dbmigration/sql_files/logging.meta_source_files.sqlTMs0=_K w8@;101ӣFFiUJ~}eHb[ 0E }}R,.+$μ N [h2`ai1NCNƂ\6Szpd䪉A$w4Ć;.nql+`9o \ 44Huc9m NkbEk:3O!8bU@WYJژ@ !Dp5qxT8FIMXkz&u$ḁR/qkcy^ .#&sƱʗj͹ knt'nfM,d[ϛ5{;B\轇^-HENiqdfp{;'@nBq&*Ӵbz>b͕(=d3/Ln4AxaA˗=π?M$'4}lk|[~[nK0[|<.l$!\a2փ^PK\NK%3?"py_dbmigration/sql_files/roles.sqlK.JM,IU(IU/H-J,K̉OIJJ/J+AV(W(/.I/J-PK\NQCf )py_dbmigration/template/jquery_table.htmlV[o6~~T/q ]Þ "U|CRRa/6y.w+,AH4 cJQM\ddf:|?!J02N$' g۲G2 #yz\rz# "LH$ v$+SbYFmk=7*hp+{7s;Pmhd]XF=/$ Mj|V!Զznv+!+CȀ[RكBse+wH+Q~аv9L eI }~_K7mí ba$ۮ،wB~8WLP_<ʎ V~9cjTl IkCK՚>jTQE0|,S-߼m3c;Ggʢt*-DLx*՗smN6_AfBEH*g(  5VSyz R58< yx\^-.o7ߌK,Msے`й{G_Q @k=ftdivUz/mjN @rHUֳ[]/Q =,Ci'ko7PK\NmN`70py_dbmigration/template/table_upsert_file_id.sqlX[o8~ϯ8uZ+J[ԇ -$lfڧ(%"A&N= Iis||&ܦm~_Q/6dtCsM`l[ ]#wjj&K&1"9x-Ҷ¸KtrvK..7.7!D!_h)s2hW/xo7HBK1aS.v]`-%~O>A^w2b88< * Wuk*+ezʾ^O.0\jc26óSơ0 LML 70 >(thن/m Chb-ܴd6حp4d-Vm&\,!0N>*\#(xې{˸ TBL Oʼ.;z Nʜ tœ4lďyܺ"W`0^_:ǝΉlU%fȘà&3^0j$Cha g0Ed4'qw8ji\CY`){Z^zЀ+ nL6AZֻz1*lz?ӰI IeVIhS)^!32rat|s׭m͛2?ј*xrZ+F2N^IVNCoZkM_fFA,JqN(DA4h VJѳ#N}=xod-MsVasˆXZ'Qm@Y~BfH!Y'Aa3/xE쇘vn~i™ScbZ;9Gl뛗9i(U, ߷;b|W8M6aMj wuf:!mrE&,qkP} }1&šnv bZɃwjeUOۭ[iݲ?vsI1 @x iOC\ey$ļ!UlU$}r$Kiz{9YHߠsįM,TtJRC"h bу>ރ7{5FրGbP6IT׊2j95w3z%"2TBZ7/ }a }.'RPvuO?Mߔ/o WfoRmsZJ>T*T<׋3g ^^_rFQ\<dP[4^?o&bF*T;/xPK\Ni('"py_dbmigration/zip_utils/README.md ,V(QHJU(H-JUHO.M+I, gPK\N$py_dbmigration/zip_utils/__init__.pyK+US-/*Q(ͫ,(H-PKbNGO$py_dbmigration/zip_utils/unzipper.py͕Mo0 s@mN[@qhWl $;ӴH,4I=$ZImᅫ xxL_+2ciUś5"B0c@n~ca) K'Ya.|bd 46׊ه?\ͯ0dkp>4ּ'n NiHհ~8Smuc[e .w7-#-kBI9{ &JS;^+qBu =*P%ZXpM~C;c[W+;5ơ$T=9ZD?̄ܡNҽϤ.ӵՈ'-n^<ڛ]Pv~ru}$t:7UG!+ޔ2W"׷tJ.Yٕ}}Rل#ot6,"%wۓ !!dl໅ w:)Sބ8sQ=X :qs-lg;!swMdRa3>̱#)?Iz'jcŽ$]sW/1]K?D!5 יj'-;4&'o-njz>)t+/0:H0XǮ_PKN\F:L*py_dbmigration-0.2.7.dist-info/AUTHORS.rstE.̤Ғb.[d.-Ҽt< !#$713G/9?׎ PKNҼaz6*py_dbmigration-0.2.7.dist-info/LICENSE.txt]RK0W8Jqkol9f)ǐ*(v n[ {c: +ip,K:cy||P[Bp~_8CmZhz<zَ~k78dACR[CZL';:6CDX<"{..v~0GGnh%oޝ]st |&p;пc}B@z?EljηL('?B}ϐ9뇻y~@KO&qq@I;cZ'&R5~h% 38v,?^> ].+H!ûgc>~.RKZ`իD ^aH`+M6pC@-;!,sEULօؓeZl2Y3JISIQJ4ǒ?B]–ҔĹT862\zת(!m)˥FyBUxI1AA;-_r*2gs!nR*-\%3J!fvs\P8R#UI1RUe)yne%ZVtV9fĕB^WT2 LߖPKNOZ'py_dbmigration-0.2.7.dist-info/METADATAuRn0 +S/4hȰnCMش mAz#~#Ұ0|ơ>e:D=3>gΙ4\%`;zSK'= SU-s걺,ncWâ [V"L?}k<y᝺v$iej W>8 KGkleQqv k6 +໴~B]/:gEƝ(*N.ڀΦٶtخjxyL@fۢ{+cn9 "2_fpqd^M f'ӟk?Cՠ=`(cɸ*+(5:IRd#m}/!X-כ_7kYΗZ9];@29c&"[xFu(i,\JCEG{4xG4/H\T Kdk⫧Q=K"PKNxMB_n$py_dbmigration-0.2.7.dist-info/WHEEL HM K-*ϳR03rOK-J,/RHJ,./Q0363 /, (-JLR()*M ILR(4KM̫#DPKN}g/py_dbmigration-0.2.7.dist-info/entry_points.txte] 0 { O v!M5 2|~zjLnߐb>ݴBE.Z_'zx{:rAp f3%tn;lPKNHT<,py_dbmigration-0.2.7.dist-info/top_level.txt+OIL/J,PKNc@ %py_dbmigration-0.2.7.dist-info/RECORDYvڒoyA  3әͬωnGlnD%eϷfk]6v` .KFsـ *,;TO3+5 2.3F\kTv:aT>owf.na_eUѰ*!YIQB1϶"l[5#BOaO/Z|? )XLC _^%dyq'*U y8UX \ev$̷K4{|4JlM[s㮜M僠A!(OqMɵDK[%6I㸧Z.x;7f{Hw^?H a"rRxF!sbdMDNY/~m|j^,N3 fpܡ8oɳ_6p$VhDi^42"6$1WT}pG"r^h1 i2 ]CQJl`;ʼ*Ů}DYIh͝|Qmĕ9Fa xN;C;6ȦW3'G] :U%̶QyY!׭ٝfAkwI/fXl>4te=.+>>Wr Ik;`;_Oa[}b@5WLB>')\t}›P΃Սm7^rܸ>$OI[q#DEóFU-\wPح*B:ϲ(q-cĞtWjq+zr􂃅_p.մ3C2-SR $B<"JW;G,,m1,>%]}c9 ל;r;MT%m0DIez`8N*21sojavՔiu/h/F!޽foq7U=Xش \ArMPIAѵߺ{onO؝Ii9"OCxZ57$UkWW.58'Ucec@bv(xtڻ>A?^ƯESpKCC:(R=:T{VE8 UʛŷylU@5*}o=za&.8IC_vNc>DuqN8xۍRЎF^0}F+&GvoQߧN cvZ&06*l:; m[&&M 4ڇ=tp::1ųgO'bv7wn5Se| :@p^R] }Kg'oRp@f獸As*(~ʯs`\$Vq-&9dX~yԥa^/" tާ%W:ϗdb+B%E-%)^5ShVc`)ލa8ye2|Pd U-+ʔ`XNZ^zU'%;qSYzbۺRK훈7A? BgBl%ZErݳM2d>Lcܭ[V:k׶9T+LOH7"F•B^XO'sU1rbrU5 ?9EEQKU~ ]pK kYmZ.Q- .7'` ;! Y1#w2Z8Q9 wrM`Ot91Z>É2ݹH$U+fZx<,$ 1`ƾM+a4f(8AK>|7'?;`t L?O3>v/3׌qƱ`65J|B̃ ^}%Y缶m_[EB۔Q[.dqzGϭ۪$ƱaC66'*g|Tnp@tF1JR~@5Na@FP{^.F<y9HsЂIxS^7E Im2@HRny6x{0(}ny=l>cRqs!gO n@(I_>Xru˞nGOhxcҜFYOIh\@wD״*WF.@Ld2jL$<fݒxruѬSt}bY9cˎ5e7]S~_$ phZ{|,N5Eחn:nT㟴f玻r!Gb1u 4EnŘǁ:7 .~1_XΡ4ȖCW蟇`x6 <_bxٲ}{CʒT?z`ZW0Ni{ ?3BHU/%zZD-o7?i; )Z Uִih(*{h n4}!{@vDQSbmwAEORQ ׊ }hIjf":-䔌G)L›lq 6e_M Psi tUKS4>;(52FB<$EN`[BNMT{͟ ,[~7E2bNWf_깙m6*\nPK\NP8J  py_dbmigration/.DS_StorePK\NђUg@py_dbmigration/MakefilePK\NƩ,{py_dbmigration/README.mdPK\Nzm{py_dbmigration/__init__.pyPK\N:`6P!{py_dbmigration/__init__.py_org.pyPK\N.[XB| %py_dbmigration/build_travis_docker.shPK\NB^ u py_dbmigration/cloud9.shPK\N #큦py_dbmigration/create_virtualenv.shPKmN%6py_dbmigration/data_load.pyPK\NMmpy_dbmigration/data_load.yamlPKbNӁd&py_dbmigration/data_load_bk.pyPK\NM 큎&py_dbmigration/docker-compose.shPK\NQ!t'py_dbmigration/docker-compose.ymlPK2lNH9.p-s(py_dbmigration/extract_db_tables_to_sqitch.pyPK\N[ !+py_dbmigration/increase_ec2_hd.shPKbN'&8-py_dbmigration/meta_source.pyPK\N3# %큚2py_dbmigration/move_schema_table.yamlPKrNh$7py_dbmigration/move_schema_tables.pyPK\N|4pPpy_dbmigration/nginx.confPK\NQݝ`Vpy_dbmigration/publish.yamlPKbN"u!\py_dbmigration/publish_project.pyPKaN<6크xpy_dbmigration/requirements.txtPK\N'!yypy_dbmigration/aws-scripts/rds.shPK\NBB"큨{py_dbmigration/bash/chmod_files.shPK\N[fx*|py_dbmigration/bash/headfile.shPK\N|{[l|py_dbmigration/bash/tar_venv.shPK\N1F'w}py_dbmigration/custom_logic/__init__.pyPKbN]1}py_dbmigration/custom_logic/abort_if_duplicate.pyPKbN*`L06py_dbmigration/custom_logic/abort_if_obsolete.pyPKbNy-Єpy_dbmigration/custom_logic/append_file_id.pyPKbN586py_dbmigration/custom_logic/append_file_id_w_header.pyPKlNP 7*^py_dbmigration/custom_logic/client_copy.pyPKbN}m*2Ypy_dbmigration/custom_logic/count_file_linux_wc.pyPKbNwP 6Ӗpy_dbmigration/custom_logic/extract_compressed_file.pyPKbNi07 3py_dbmigration/custom_logic/extract_msaccess_csv.pyPKbNHbl0Upy_dbmigration/custom_logic/generate_checksum.pyPKJNoCJ,py_dbmigration/custom_logic/log_file_size.pyPKbNR ,Rpy_dbmigration/custom_logic/pandas_import.pyPKNon+spy_dbmigration/custom_logic/pg_bulk_copy.pyPKbNPe.]py_dbmigration/custom_logic/purge_temp_file.pyPK\NM˄ .I+py_dbmigration/custom_logic/read_from_s3.pyPKbN &].py_dbmigration/custom_logic/row_count_excel.pyPK\N#:(py_dbmigration/custom_logic/sasreader.pyPKbNT6Jo .py_dbmigration/custom_logic/sed_modify_file.pyPKbNٲ[Q 4py_dbmigration/custom_logic/upsert_table_from_stg.pyPKbNc c$Npy_dbmigration/custom_logic/wyman.pyPK\Ni(''py_dbmigration/data_file_mgnt/README.mdPK\NJyw)`py_dbmigration/data_file_mgnt/__init__.pyPKրN