From 6936655d451a1d5b7160b0d06e235b313b3527d2 Mon Sep 17 00:00:00 2001 From: jaseg Date: Sat, 21 Apr 2018 18:54:41 +0200 Subject: [PATCH] Pretty graphs and stable results --- firmware/Run_analysis.ipynb | 74 ++++++++++++++++++++++++------------ firmware/offset_test.py | 45 ++++++++++++++-------- firmware/results.sqlite3 | Bin 0 -> 45056 bytes 3 files changed, 78 insertions(+), 41 deletions(-) create mode 100644 firmware/results.sqlite3 diff --git a/firmware/Run_analysis.ipynb b/firmware/Run_analysis.ipynb index ce6bab4..3c4be49 100644 --- a/firmware/Run_analysis.ipynb +++ b/firmware/Run_analysis.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 4, + "execution_count": 193, "metadata": { "collapsed": true }, @@ -11,6 +11,7 @@ "from matplotlib import pyplot as plt\n", "%matplotlib inline\n", "import numpy as np\n", + "import numpy.polynomial.polynomial as poly\n", "\n", "import itertools\n", "import sqlite3" @@ -29,65 +30,88 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 222, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "def fetch_run(run_name):\n", - " runs = db.execute('SELECT run_id FROM runs WHERE name LIKE ?', (run_name,)).fetchall()\n", - " if len(runs) > 1:\n", - " raise ValueError('Ambiguous run name {} matches run ids {}'.format(run_name, runs))\n", + "def fetch_run(name_or_id):\n", + " if type(name_or_id) is str:\n", + " runs = db.execute('SELECT run_id FROM runs WHERE name LIKE ?', (run_name,)).fetchall()\n", + " if len(runs) > 1:\n", + " raise ValueError('Ambiguous run name {} matches run ids {}'.format(run_name, runs))\n", + " \n", + " ((run_id,),), run_name = runs, name_or_id\n", + " else:\n", + " run_id, (run_name,) = name_or_id, db.execute('SELECT name FROM runs WHERE run_id == ?', (name_or_id,)).fetchone()\n", " \n", - " (run_id,), = runs\n", " data = db.execute('''\n", - " SELECT channel, duty_cycle, voltage, voltage_stdev FROM measurements WHERE run_id == ?\n", + " SELECT channel, duty_cycle, voltage, voltage_stdev FROM measurements\n", + " WHERE run_id == ?\n", + " ORDER BY channel ASC, duty_cycle ASC;\n", " ''', (run_id,)).fetchall()\n", " \n", + " _ch, cal_duty, *cal = data[0]\n", + " assert cal_duty == 0\n", " grouped = {ch: [(duty, volt, stdev) for _ch, duty, volt, stdev in data]\n", - " for ch, data in itertools.groupby(data, lambda elem: elem[0])}\n", - " return grouped" + " for ch, data in itertools.groupby(data, lambda elem: elem[0]) if ch != -1}\n", + " return (run_id, run_name), grouped, cal" ] }, { "cell_type": "code", - "execution_count": 76, + "execution_count": 243, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "def plot_run(name):\n", - " data = fetch_run(name)\n", + "def plot_run(name_or_id):\n", + " (run_id, run_name), data, cal = fetch_run(name_or_id)\n", " \n", " fig, ax = plt.subplots(figsize=(12,8))\n", - " ax.set_title('Run {}'.format(name))\n", + " ax.set_title('Run {} id {}'.format(run_name, run_id))\n", " ax.set_xscale('log')\n", - " min_x = min(duty for vals in data.values() for duty, volt, stdev in vals if duty > 0)\n", - " ax.set_xlim([min_x*0.9, 1.1])\n", " ax.set_yscale('log')\n", "\n", + " min_x = 1e9\n", + " max_y = 0\n", + " cal_volt, cal_stdev = cal\n", " for ch in data:\n", - " (cal_duty, cal_volt, _cal_stdev), *ch_data = data[ch]\n", - " assert cal_duty == 0\n", + " ch_data = data[ch]\n", " duty, volt, stdev = zip(*ch_data)\n", - " #volt = np.array(volt) - cal_volt\n", - " ax.errorbar(duty, volt, yerr=stdev)" + " vref = volt[0] - cal_volt\n", + " volt = (np.array(volt) - cal_volt) / vref\n", + " stdev = np.array(stdev) / vref\n", + " max_y = max(max(volt), max_y)\n", + " min_x = min(min(duty), min_x)\n", + " ax.errorbar(duty, volt, yerr=stdev)\n", + " \n", + " # reuse latest duty cycles here\n", + " ax.set_xticks(duty)\n", + " ax.set_xticklabels([str(i) for i in range(len(duty))])\n", + " ax.set_xlabel('bit index')\n", + " ax.set_yticks([2**i for i in range(len(duty))])\n", + " ax.set_yticklabels([str(2**i) for i in range(len(duty))])\n", + " \n", + " ax.set_xlim([min_x*0.9, 1.1])\n", + " ax.set_ylim([0, max_y*1.1])" ] }, { "cell_type": "code", - "execution_count": 77, + "execution_count": 245, "metadata": { - "collapsed": false + "collapsed": false, + "scrolled": false }, "outputs": [ { "data": { - "image/png": "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\nBGQAAADA4/8DuiqlUTjgcngAAAAASUVORK5CYII=\n", + "image/png": "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\n", "text/plain": [ - "" + "" ] }, "metadata": {}, @@ -95,7 +119,7 @@ } ], "source": [ - "plot_run('test02')" + "plot_run(37)" ] } ], diff --git a/firmware/offset_test.py b/firmware/offset_test.py index 5f87d20..fca565b 100644 --- a/firmware/offset_test.py +++ b/firmware/offset_test.py @@ -7,18 +7,18 @@ from datetime import datetime from pyBusPirateLite import Buspirate -AVERAGE_READINGS = 16 - if __name__ == '__main__': import argparse parser = argparse.ArgumentParser() parser.add_argument('channels', type=str, help='olsndot channels to test, format: 0-3,5,7,8-10') - parser.add_argument('run_name') + parser.add_argument('run_name', nargs='?', default=None) parser.add_argument('olsndot_port', nargs='?', default='/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0') - parser.add_argument('buspirate_port', nargs='?', default='/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AD01W1RF-if00-port0') # FIXME - parser.add_argument('-d', '--database', nargs='?', default='results.sqlite3', help='sqlite3 database file to store results in') - parser.add_argument('-m', '--mac', type=int, nargs='?', default=0xDEBE10BB, help='olsndot MAC address') + parser.add_argument('buspirate_port', nargs='?', default='/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AD01W1RF-if00-port0') + parser.add_argument('-d', '--database', default='results.sqlite3', help='sqlite3 database file to store results in') + parser.add_argument('-m', '--mac', type=int, default=0xDEBE10BB, help='olsndot MAC address') + parser.add_argument('-w', '--wait', type=float, default=0.1, help='time to wait between samples in seconds') + parser.add_argument('-o', '--oversample', type=int, default=16, help='oversampling ratio') args = parser.parse_args() def parse_channels(channels): @@ -55,25 +55,38 @@ if __name__ == '__main__': uut = Olsndot(args.mac) d = Driver(args.olsndot_port, devices=[uut]) - + uut.send_framebuf([0]*uut.nchannels) print('Connected to uut:', uut) + run_name = args.run_name + if args.run_name is None: + names = [ n[4:] for n, in db.execute('SELECT name FROM runs WHERE name LIKE "test%"').fetchall() ] + run_name = 'test{}'.format(1+max(int(n) if str.isnumeric(n) else 0 for n in names)) with db: cur = db.cursor() cur.execute('INSERT INTO runs(name, uut_mac, timestamp) VALUES (?, ?, ?)', - (args.run_name, args.mac, time.time())) + (run_name, args.mac, time.time())) run_id = cur.lastrowid - print('Starting run {} at {:%y-%m-%d %H:%M:%S:%f}'.format(run_id, datetime.now())) + print('Starting run {} "{}" at {:%y-%m-%d %H:%M:%S:%f}'.format(run_id, run_name, datetime.now())) print('mac={:08x} channels={}'.format(args.mac, ','.join('{:02d}'.format(ch) for ch in channels))) print('[measurement id] " " [hex setpoint value] "(" [float duty cycle] ")" " " [reading (V)]') + # zero cal + uut.send_framebuf([0]*uut.nchannels) + time.sleep(args.wait) + readings = [ bp.adc_value for _ in range(args.oversample) ] + mean, stdev = statistics.mean(readings), statistics.stdev(readings) + cur.execute(''' + INSERT INTO measurements ( + run_id, channel, duty_cycle, voltage, voltage_stdev, timestamp + ) VALUES (?, -1, 0, ?, ?, ?)''', + (run_id, mean, stdev, time.time())) + print('Zero cal: {:5.4f}V stdev={:5.4f}V'.format(mean, stdev)) + for ch in channels: - for i in range(-1, uut.nbits): + for i in range(uut.nbits): fb = [0]*uut.nchannels - if i == -1: - val = 0 - else: - val = 1<7U}R))P*7lCVA{>Vz`)Ib089)F3@ivP10xa}2a{!9dSIAu%sS z!BEct!(Crb3Xbn`@A(pR;SQLQ!d6v1XGI zBfGe$C}WE|ID$c9Ak2gkp&$_~5eYF97UuXPFfTDTRUyPRA_OyPlJj#x2?~d7X=zD( zZelV-78Gk4sTI1#B}JKe=?ahzcu8uCg0YcqQf7$)NMU}OLPKo5R?W$ zhLIJpnxMY9Dt9si{{#L5{0sOS_!IaY_!amW_#W^b;9J1gz?Z=1z^A~+!25vr0Ph0c z2Hpf-2VMnU2A&5z2Y43pH1QD@4S~@R7!85Z z5Eu=C(GVC7fzc2cdLbaE%ElncpvYd5T3ljeVr*_~W@%|*U~cMoZQE^u^)fkI?{5=Nb*J~^0z*|KEf=ggd}f>Du3?lrye;)BzXf=`4eIWJ#q>Nc|%K7c{8KS zd*$SjA=)q>wB(L$Unkl%RA2IY}gWQ&jm$w*PL)N#K_6ZR&p@CypeK8hJOf&)K)gi6P0O zM&8Zz03%^JQQYzg{}$eq6G4(kjoh0Feao)O3FDU6Keo9;P6$aJHFR%^hRrsV6T~Th zW9fqG5IF%PdDO&lCC#(+jvPNi-T*amTuI1bu9D-!Egu^6u|tj*x4dthN}n7LZh2Ro ze{FKyNb;zO?~0l4tzJ1U-0~(f&C29Bamrs#@8si@<3N%}O}v*qPCA^BV@HxlO<$MY zo0r$hvEi0?e&x4PjulBBHT_-IcW2d;V?mNfO<$L8&rRPW$BZP8n!YZD%zPm&$Al!0 zntm>+c0Ic#$A~14nm#Ukza99Tm4ShQo&P$hROROX&Ht7EJ^xGo$NYC8LLlK$JQ@O{ zAut*OqaiRF0;3@?8UmvsFd71*Aut*OqaiRF0;3@?cte1zC7*$TfwM)Nfq{Xe*#^|l zZ%SccU|?(FVPIfjZ8QNb=Z^u+|Hm*qVBo*Yzlpz{KZf6spN;P}-v+)`z9>F@J{I1a zyxVvu@#gco@JjN$<2lSTgD02AiAS9K4fjFrY24Y|9^5M2j9k~aR&zCQg>q?e{^z{H zxstPvGni9@<1fc8j%^&1IWjnGIfU4sv+rS_$ezY-%`U+9lx-JVKU)r)2b&7(57slR z3s_57Jy>N}KCm2NnZc67;=m%p{DOH8^9<%3W(Q^wrWZ_mm?ki#Fj+A1Fg{@1!q~wW z!)U{o1_JgM9Pazh*ewB4tMNwQs#XM&+5=FvpBmM`YR_EWD(9JN1Xg=4Q(7w= zN$m!x+LwXGAYgy8WYfAweUf0c>o;a-g(0b309E^hy8*=gZ=GOpkO#-zkkp5yN{d9 zz-q&macTu4sV#t-dp#fIwKV&k6)pSDo|p+%Yw`2GRuGcf1gP3e8^H|w&HFfSH_Yz> ztCbG;trdu*HUO-I!Tu~LjWaOVudU@+#N`v!7$T)>BUX6LS1FSY7dw`((*%6s{mEI9hA2i80;4YwB&4` z<^Wc^sP&qbFOphVTHIm=35P}A@nt65&0w`H*Ox2#fYgH1BCGw9Y*5r1+s}^#xnUMq zO}f=;EpLz-a9U)6r$zR4kodYJxX9S}{xYyy&x#T)FC?|_w74AXVEZejEhkU&JO!)O zzUiywiKG^m7C&Yz13A?G{Dbz@8UMAxYWXxrjPCJjMZSZ zTLqVBxgx0r+swdVe{VM=%nqmv1eoZb1*@H&X0PRfq!yMIZxw^Wb*BBUNnFgDo-4s> zE02q5IU}isrNyhWAa2-lA~pOhM;KUb49^BFCnUA7w0PkvMD0e2Jwnn4$UM8KX$4XOQo#;O(e`iUHiM$l{{Wlc+j zQdok1<_k&CCj^fQo?W00Qu^ly&rD4Vgi=^~eqR3!?8c+MS)Fr#E(9xmHhr3=IYKEc zIX`fOB++%2uUdzM-aRicktm%=aom zzB0Do`H?|%`UGRJ(oH3^HBAsoVQKl=Cy2MUa$L7kk~{)dx{yCg(-@%?mXt4~LL9Jl z*~i5xZi--~{ge4MjSxyLZlGlJT~w5Vx+r*4t1Yq69Y8 zi}$3W9!M!Dxv|^dn+#F%_LENA@{KRRN-S1SQ_=+~0afd4Ob*QJAtl~jll`-|9Vq~- zQ4g_I)B&jhr8YMEZ?_oNrROB{>V91Qxl;SmfD`ofu!LR|IVzKx(rk! zT=;!|{uWIQgi=^)yW0wh>_Z&JYbQVd053L0cgi=^)yUPa&>s{VY<~*2Q23ES~ z61%1vLMbe@UD^)u)=r%jQHOtkL*V!7d((E^0<+0tmEd{K!eU_-EGD0aVwZW3m3{GYFm-*m?`MbIls{S#G4GWoLgB;VnO-~{>GVAdTaIgk=iYGY+`VA)y> z3UvF&IvL4T+Nxk<RS`w;b)? z?}0?iiCc>`w#8|Hl>Yji+@L9qPzpHw%1S@^To}np)Pzpu&z)T6O8g)tpwz~~+fzak$<4Jfs-*#Gi})J|8$ zeQx`)#DJC5?o80+1t|fgHhA06{^QjikgM!3sBT>tlTZg%n!psI$%9Y|OKq=P!4YJC z#9mNiqZl{_e>z2YXmTTz!crToH*v(@{%!j$aP|08WsS5Z7eXm4wLO-FWU#}>bknqp zlE4mN{r6jw6QLBA+U_wy(#5_OzqZeUM?p$|yfE0N$$?M`OKrE-LkfYN$&IsL{5=g; zdTPQAO?HG*uxA(;?62Je1*ft7=7(ozCvI*6D_!%%LX!=l6qed9XhD>2Dtj)tNzfLo zv`;@plNF&9mfDU-L(;{Hi8If5h(8A_Ehs9~WI-r}rM836U&k>#(JUKiLJR;mLxc6{R;7;MT;1=O}!L^5L0#^!`1s4zJea=ms zt(*~@+8qBlE^;j4sOJdcP-XwYewuwAdm+0EyExk`w!LgK*s|H|*aTUhux@AVVvS`r zU}a{x#4b}Kjwu-U_cYCGHf|NsC0w~w$lw({8h*YVo6%W5fNJG2^&krcxk&zrL# ziql?MEIHq|3#3?eN>7zmqY;u~SnGL11|)IE2}b?cb?YZcvC5IwCZ$G0kYaEwu-RXX zY6Ybg`>SCLyPh^wfD|czd1|87XaG{g&d$!x0Nc8Em7s?>T(w8Mgv>Mfr6vOiH zq2+#HXB6v5do=t#3|7pvg;%Rl6-hBHY3@ECY;0_7WS<^=L}SW+eUM@)qrM=mMinH* zu%x+lJ7~=5tbK}x{KC>0P?>XCGU>~Etwv=e#jvEgxu^{6jO<+(KRh~Y4>DO|!XFl; zMkSD9aMEP8znE47_Sn^s-Gvo53_yy+4+<-3H7bG>fs-b@Dsfo z5c}9BsMV-|q!^Yo|L|CY5{3N%jjJN_UW$QC7E|0lN2^gDNii&GewxV!c1EwC$9(4- z;vmIB6HdR=YLr7#42~}b2K(22@4+V5@qPBPW6K07<_nk7(Q1@MQVdI)&-`A1-CSmF zI-BVRsIhgKOU7oiR-+7(Vp!6AbZr_qhm>eO$b5du8)P!;qtZEAjnYVpVM+4=lNZ?J zq8Y5uDwwu{6f>?csMKndLQ)J%nzyz*0GnKB87FkW2RyR)H}?*kR-+`6Vp!6=ntB?X z_p<*^&+eW8a>k{fCNf%DjS@(TVM+5s#u;$XWj(t%>C&vnpuYK+ANt$18pV+m!;fqZaAjKc{t(dFTD2AjMmNXBBgPT6~QLmR6U-tC}DSp$k^`KUxD3W4W z(%ijqG1%nP-KpiDe_DYQzwr7ksnsZgq!^Yow;kLAF1E71*4||{v<4}DB50_r)F=#6 z3{ILX_AA_Wf}?ri)k6{&kM98~x_^DnPOU~EkRnjhWM;L8Me~z>cg&80P2O{)XV3HJ z3LwSB7w2+lHS!}VhDG!B*;e2*vHh#jhD-NCL5hn$i3Vyl@*ydPMf0UdP|NJB{pN_- zE5omVM~aGs-WO;!@**jQMe}K6P%Japuf6ne%ldC=Ad?G?uWZ(82dsE;O-;_008o$iQhv$o6s<-sB*n03-mV31 zz}hc7UOVA>4ye&_DR1(pF0DpRB*n03-h4j>Z1RHray<7ggB9m)jb~D7rT|qVJrR?w89$JlT zNQz-4(64QV;K;Zl^!}py?0S&N*%G2_<*9${z&ygpS7Dn1>vQP zs=ek~jZ8?2VM+6mP!HJ6hg>iGjWd`IGC6(LhTU3?j7W-MN%LO8KCt5b4@`c&u5bn^ zPTSRFq}9lPq!^YoZ#IB3sImR7(;e!33&G>FskcL!wCa)6f@6Y#!T!oga7wb@de7pw z=5FxVbIKp%d0KTyYGDcU{NsOMM{M+rEc)sKPVyj9ZVPEGtyW#q zuv>0B$id0BKNPiUkkrDG<-weZ;4oe~wYTWO>tK-Dq`1l+t!gB-uvEEQ*AlFD(L?u# za?p0Qszd%N*E)gX}Cm}egil`27M!D*7kerfk-Z~?Kv z>ba_Yp&>|3#DU_yS`{EQpd`rzAE|U;Tg?M9(EjRG#;5)hAA;2Cbot3?l_RNzr$|sp zrKQ zpW-soFUtnc8R-~$-qk8WQVUCt&y*lJ_^818r%!^@!EO+qs-jhlq!yMMAMOMvHT%Pf z8jC7Bdq8TnzufKBDne2VR>8nv|9}Y;1vBjr?5|(_$}1JD_PWU)twJQVu(Wu`58~ck z7q*!F%J~ddyR-e5RsoV)SXzY78R;vlPH_YEG%sn-zPm^(A4x4NEne~iiY9 z>$G`;Rt}O{SXzXQc`ZTA6=zqo0@SuAFOu5j#pY~ zNNV9}(HD}(Pe{CdHsvP74aMv)v{I4O!qVbn5lFZmnBV_oc^+tN;*wTqW};RKl3G|= zy!RKBC5`R(HXKV=@BwY4xuj*j?z~nql3K7UL35HvAZmBaYu{fc3!V?ulKjM`m4u`g zmKLu@fYRbw`{q|ZWie<2ry0!yKQC&m1g6Rwq_bmKQ9$S^8KKSxi{inQt+#Wo}@OX4Ye7WV*t%oT-Y* zmq~%~GvhJFnT$D%_KZRdPZ^-8k%2*}3Eb!bWe`p_`(vTtV6=Z&WWP8@{Q;;QUg~jD zK&uJf*x^L{4j?U?YnlbY$YmCRujC@!-;6yKK=!1piPTDoFQ@JJILhXlRSU5n&6Ed zPF8zZHhHkf2JDPUY!-^I&x4BL%f(Y)mTEPz!qNvPt35oQG=N&5XY40lKdV~x8#K3i zxj1RDk5&`B(Zk7V56dXmgdyQPk$F=6DR2w)awN+CX)kecyDE zn3dn3f!tj5C%{*$3Et@8WVMH7l@nE<5f5Yg4#DiA{5_!M2A7LYs`hI&!5clCtoC5b z85ryjCV&i1vv1)1aM5-CaX3W*BB-j{;64@)Cg|(fRiSx z{jrM>MGx;XwQb!6npL@6c+$sQs}bJd;Y74;S&F}dljiZSU*=q5bOgDzP)x^Es}bJf z;beg)O~?dqn*H^~YoD#qKL%1<@Zg@bRwKO0!^r|qnxAw{z-eOcqAve6hfBbUqt4iB zHGro(7f*DTn!^XtwwkQh?51L zG_SHjD!zKVQ1?w5uR$i~v;=+7YJ|6dI9cFH^Za*64PEt0ee=N@(CpCV?E4dLYBd(Y zvl9zEX&#S&m|PaX{&`L5I*`fP)+e89HNx9KoGkF9c@VlDDMzNmxo!@4cqVIxfSpz& zyb;970#BN|k|B*Yr&TXS`s3t4CTD&Ld#lw5Zv}C(z?0@S=#)vxIYs5uTfyl#GobmV zQX{w-#KF$a&dFlG>;lANHJe;6Ft~%NhRYdiUftAcgtvb<*bu3$Rtyx+_Ul%fX*HC7 z1X-U}Ce)$T2yXy!u)$N?$2dh$KC+*C;G?3Z#$=G<)Jtirv>M?pAPzQoYI|9c3{LbD zx?K-%-=7CotT!h_s}bA;0wqljHh5}#;s$A2v@W%~evAp6LsGg9wQDuP+d>>{@YMET z{Y|hlnjA%?o(m*^Oiq5TXs6W(Zwzs;!BgAq2yh`_-%vMAs8w4Atk~IMn^q&dHN?RN zPir6^g207$()^}itwwlrh=UED+AbJDn(;N$7pHvVSphOR@%Mf{twwlz zh=UED+F)&l;+b8ybqzuNuFHuLEa_T}@CFeF8$7ig5Qe0Qg2(QvN+_@5zf8N>)(MD zsYWc+YJ|6jI1qI-TRV8x)_(t#)cgcfaGr~0oN!#L5#Ai)K-AH{o~{6uvG(iu{x}4C zfeV$G*z;Sp8sY6B4n!UO5j^a4)_(5I=hJka6@#1+y^BXhs}a6nkONUizcPcAK>bs^ zg8kS)z3a=-V%|Dhjo=l7;H1e4Pnu78K(+rF`&J*D{X71GhG#BE74-yaHNuw;av*O`eP3~wk!m7YA#2#DlOA$gs&dtK-AHftU)ZG^ySdN0u!x9_!2@6L>;|(6DZ`;>?2n;`dvK(8k4*nvUYd5Qez;f@CGMMR{N{g z5bG~}jy`|wCTLyNriu!!M)*=f4x~D|0o>fPZ{V3;R6n-{ zS%9s z^GRBb@D+s|h&p;}B}8$VMcj?0z2KI&*W^MQrAF|QLU7V#v0uCtR5u#ghk+ZU2S9H1 ze80_Is}a7IkQK@LbjTQ(%Y$C-hen{~T9<8#GK{nu;fo1b5!P=z2Wg&X_Sq{1GMoUJ zY+>=@qEaJxH6h4)Ru=osK5sydv_E+L(X+47ejr6A3=zdzjqqiJEJ#g+4dEci+HY*X zS@g&mv?%AYUgL6atw!)VLQs-qL24qDZUSXv`-M?A#0~rYflSuj$TCT*(FT@&S&*6t z6CrtS(!BCjQdfIHigg~&daTuGjieYhqVOba7dRVraWoVu)q)EX9ie(|twt*(#qhq; zJ`u17Th`Cly(tHt0@QYL^V4dyL{bdzD;3E=6i2gLUik`IKYm%O=<+?SMhhgxu)fmO zvms!`&3EdVEZITJW-eY_F23aPwjQ_0V!5D zJ|~a2|1Zes0w^^$R-X7vdRjCQw9^znUXXj_JU-Ac3aHiR3 z<_o`?tN@xxy^=UVIZ&$!+ztX|06wI8B_rMvgCU|>@ z52+rRHVk(6fi-ivDV? zCU|>@52+rR4Vj>spt? zqNpp;Q(dgJn&9mrK14loyAaa0sNS;G!DH!Mkej1E=9X$T!P`T8NcD&`czDKsPJf&0 zC0TILMfq;-)@p*chxp+2hy&l+X-X7wE*CP&mYlXmy z!ENNORUl_XvKb!JYJ#_i_~1#?fp0Bn1m`TIA#(N{NO43`g^E@aygkGRPny^ihwoc? zT&oG*9^!*1O$WZU?%;5akUI2``K39?Jc5iiJ&QdS zJ*5?#GeTSfXJ|FS+e5sFX#VgB624!wKG`>|1I;{K30^QcS*r=&9^!>Zvjd}aGuUIl z)h|ER{0UkqeI@A66T$h^H5sB!un)Y7^VkbA~Ss|ns7;zf>T zjF|I3#m1`D1aA-VB1bcZoBh??YLuG5?IBP!^Ma!JDL9$~OdDst&+!DM1;3^)FRdnc zJBSA!zV^@mRD#Qi_vW*>Z%Tot9ETCE6E1oTl=2}hgb`TFdeCTG zYJ#_exZ(AjgNX1_aQaQpj7dDR09-!U%hh*kHNo3K-0*tNK}5I~+%(8wpIsW90otK) z#jfhQvsRM{tkJ{`F901xgcZRiXX>gYimkf|a)#}7_Cl>D_+mkBcme1jB77EHOr>ot zn(#hg7Fe-yu%%WLe6b)mya03%5l#l1oRRwY1;<`+6Tzl`>S?Ve@M1wwV&{fuP;Aby zetq|>Rug>DAU8aNI*17U1bZ;E*W9Uc3uwsXinWJGrB)Ms(I7WGgF1)^dxG7Zv3t!P zj%HAU`ij+(s3NT<_@Y5>cm{P45uO2#l=KC;%jNn(D-5q#F-)AS)dXKO$c@OLSQJ~v zTsW@P1Yb1BjmV%P!r-kG_L-c%zCE0vje}P#c5(=5HNh7Raw9URh+qfU8M*F@qg&sB zW(u!Zh=y@0HGvlmf|DkTgK%^USkaNA6%rXwm_U(XUbu3bRug=&ASYtpp2Z~ytoYR0 zo*N+(LF)@HSI>TNUaJYdSdfz)J^=cY8?;K#*nZdf>ezfC(9-hD)#;~aYc;_a3v#j} z20$$!iv?Gg=35&w{{^+Wt4(J9)@p(;7UX1y4}iW(f#l|Shi|-a=4ds+ z7YlN-BSx7HK$4EoUZ_s2cD zpeF9+iqqL_T21i9f}DtHeCB!J$zJYfc4jW9qPblDL@Gn83BFj66VdVhz_SJ1JznisqW5x{8_2EY8~)tYYJx8o=6EI!I6l+~X~;J$gW^3BFj66EQab*bLGVoF@Bs#i@8uNq@QAtL>{+6MV5C zCt_^=em`WaVzRwVwpj>h@8#ukv3L)yCir4OPQ=*!%?*&eH?he7@C*|PkekaMJABn@ z0xuS12Tf-n#^$dWLfR7(&NJjS+JI+*$~Ler)@p(;8stQb&7VCEX{q$iRuL(U2bDmV z%WAfq(rSV)8stQb%^v|*j%V%LETea|R{j7x!*hMVRug>DASYsMey<>;k}O~UqdBSr zJO@%H7Is9d3BG8M6EQZw^%A6xE_|Vu_^}7H?c#Fj)p z-pf3JIhomvnUm=b(|V>Rrc@>eCSk^Bj5`^pFs3tFG4c}L_YaOu1_lPLW_Y_v5Hafh z$nqp8=t?{?A(njz8+j!&G2@UAY#=0-t3!T#i_wf|DXN_?UuiBsbljqt!8+; zNf0sWep3gMLIc24(%T)cZM$*dXzD_(W^lU+ltKj&qwbe)f(nBF_KEG6d*a`L*3#TK z&nVfW)C_Guaj*-*Taor>!Nnn{b#vpa&4vkD&G2@UAiVWxf7BVYpnj%(nn9UKTngB& zrz^4#Yc<2$O@fHl<9<)b_)$ogcK)G4(4x~DCpZ7PtJMr|HwhxO9`}Ilw+A9L zO@7)AvVQF+vuj$-@b-})yp?Fb_bbS$#`ekf3cnR1K}QhWSfhLUmsT^peIy8PCED+d zh9quC76*sIs?2FgQqAD@5jZKb*dryy6-$l!wVL7WApxY;;iX(~QaqkG&EItzXw~*+tvpu*xx^P=xpw3^}VApu0|@L8=h*yKrB zEwjHhgIZcwn$s68&}xRahXfFpqYcZFjcKaZ~jiP-ryOnK5WJ!`npyh}PkyCU7ZY-~Oq;e7*o^f6tXB z=hrS;&G2@S0HSqxCI?alH~XFRcP#*Wu!(cZa;;`~yGQ`hIy?$(Sl6tY+hE$|1ad~> zd3ztNW_Y_u0MR-;$OG|UNxg~M`^BAL#Zw-f)@p{giv$p@!<|ndMQDq`qP@2qLCY4e zG)7HlR%!;fi$JYI0e1U?mmw{HyY90ELfk>kvMY@WMjcws@b-`ZqIJlk{RdRh*&la3 zemPnB8p!&F)PH(f&G7b+0HSsHqw^pr>g=}{g*M5A-3BYxUh-e78QvZeKx!Q}KpK22 zB$(GOuw(!!uK(zMTdNt~9uh#b4qt2mZ~C&I&A42!;UhSF>$jcM*J_5hhXjyXhmTf* zoiXXp@|3U3=73GESzMyk3~vt!AX z2pOR3Gf-7n6aZRcb)}x|Bb!z;ygekq2Jg6B?Sagt_g1SioDIDPaz@>mzTH~Q;Pr&y zq={%9Uho1>(Aakis+1PJ1)E$q$!fkYTBAHk7EyL4(Cc;_{Ys! z&G2=F0*Kb(ft?T!&M?-A*pL+hc7|;EcdcelSZ7NB(K_6D8d41)%CsxB6KtMnHN)2x z3LsjCTg^c^&j^_PG<7OY}iUldI zs&8Y^YKE^T6hN%p_$`qFGTMIKnJHoV55ZZ#^7dW>t!DUoLII?e8{f6TW!v0`n=e`> zfHtXIsWkt&POBNdo=^a3<;FTl&vydfmXEggwt}2dF-7vJRx^A(p#aj#jSf)9<&1r6 z?f=bD_dtt0uav*b&ev*&uO}2hYC{S_CQKR^O_$Q!4lZKLz4qm3HNn>t3Lv#1!yyT% zp{KL_!79-7;+3*xn=G}O;Ohwm5N*gCw;^4kx{oj0X1)RSsjrkVbK7e*f!7m)lO|Fd zvJ=v$uC+0;_5AS<v3Lx5& zM;?L776$v0sCUmRUV!#WUnvp4j?!AZA-T6^&r*u``^9&d*`+ZD98#@ zj4o<5!PgTCAljC{`!vDnc-@oRJl0B}O_^8n4@6JZYJ#sP6hLZQ=0c{r<`#sD@a+P1 zX0PPSOy$&Sg0CkOKx$jghpyZxV0l#X3fxr4tGFz#)dXKpD1g+q?1HQlYI$k3p7DDU)dXKpD1g+qoCawwHpu+AeQ>fADCn|Z-af3=1YS=FPMSz<%M3_5 zu9n*FV3T_ntk{h=K&uJ9u26slKHPJ$A{ZPgl_$4v-?JNRa@HdMLaiqFx~y$G9&geXf?st6$&8Q znETd25`7lOeEr;O;EbBFmHC5K6MS8v0HTe#;}*mj6~1nF;l2bb{ax!q}6P4M-E{76BT1#+vgea*K&va5c9cJEwC%{=}?s|miI zkRK_?${{(U^823dCB9&fr5t1L)@p*UC*(&8GHysurr658YzaSjem6zIY9FZoAI)$H z*8lh6m*;2VyUVwMubD57&yr7s_c`w_-d^4WUSnQ1o|`;tc=~y=cwBiDxPNnBK z!yV6U#LdcegKITc9akWi4(ET)OPp&t8#seG)i@bBu5c{psN(SDP+RfWi4QJW))+3$#R5cI!h6YD~km4Yvz5-6PZ((&6&BF z?lNs)YGw*!vSQ+8e89Mwv5hg3QHS9_!zFNBp%Gdw@P?WcB9-6T3d+SZ?Yo~I31}?_ zO@7>*s>=ISs|DUrlR~8OtB)b^+WS<}%&P^oNc!ef-qKlGE#QV4D3wbgqU@qQR59bL z;8lsBamt%hzW#io)dFv@Ng<-_lp(|!?XffdEh=nryteJ;lzRygS}pJfn-n6-4uc!~ z#`aAdcXw;1fDZq-Ipx@Od94$=Ac}rI|FZ6EB3SYCL#|pa@CKU{B9*WE01jdMYF?ii`^2t*6*rh!OSXU-Y#gAT zloV1&>gJTposC*8@b;NFyxg__w-d68@^EUDk7f{P;PYm#Y0^ur7I^zi98vCm{sd_l zZPDC&XzB;ha`KzGvbWf@THx(7aYVWM<^-fdSsMBEL6riiM8BEK<`bsX0&ky*Bg)-p z2O!yIwj%3K=lh_QpEq;f9aPe4fw#}Z5#{cq_mB)ZN$~zFZs|K9&*xk>wbyEax6i~8 z#nL_~w!6sKSUC?TQ zx6{OtQsf~}%j=AN+w}Z}p;q8X$w};asMP{*r->s{CieRM{XgiIAT^x}j_kx2NG-7l!N9w_6trmFuOdOFC z_m@CYVoAbf7i&RKv41m%Iedar3%Gp-DsRPE?2kduq?&r^uzDgVsM&He`}K7_t!8+; zObjVWHbX`U4wr@g{&Nzvul;7m_MFLD&G2@a7?vbyuq<}bLQsW$Gh_bCzgo@kc9|Gb zk~|MdWlJ-46kSR{Q?oZSIwF>9HN)FwVn|7HCnVv_m=&JxX$#uObu**j%xA4;c)Lst zOOm{8d}5jM1W+VoM4H^uYKFJV#4wZOgrzq&{GI~Z5p^@eaph{QW_Y_y3@J%IhNOj_ zS?g{*bOrSSZf0mH7;81d+ht;iBzg4}Br>`eUFG?C6LcKM%?zOhleC(_?J`i36vIrC zT@ij7f&QRY)XntY(#~4V@b;M)Qj&xo$Jib@uj%hraL!17JoCF&GrWB!hDef!Z$X^V z$SRcjnH!vb(@+2ZtJPcr>p+PilH@+{D%_d&r5>kmoLC3i?{PDIOZ{W5W_bHd43Q*v zfX+uSHnuN_NPfB02UKI;OrP^cRjV1^J`+PE&CSpQrwYHAR%djAOQ7`DWL2eRaQh6D zG{so#VT+K3PihgjO@W{UwY@+@H=sHjqOGFF}J8H$52Na%eTf+h4+n#Qpl| zoHL*kKGXFd?|Ho)bkM|2H=EWzt!8-pOBj*3pREG58E4ribbAYBCV_^RZn{*mq-Zt6 z+h4+n#QoR=)Zssatk`MG5f-gxaQh3C1ceca`#~XOX(f2}x({5bJA6o%Q)-5`!#LQ5 z5sCXY*ni;S$Xbb{UwY@)YrN|>xa)mm-&GUINS6c{aVfN_LndsQD3YF$0xKI z2x_d|v|b!MTdNtqeo+{as81z+is}+yMmb z&bnzK)$>)W8NO~&7?GIwZi5s@ka1qnuA!S|VVcXdn!)Q9p+N;67-wLx-!lbLDmJs- zY&-8>z{)**WTn$IJ!%# z8NO~&kR3k5{=5v**GVf0RQW9gIzjd(@64!`TFvlvi-L$T)FdO=P<*&Fw8Iwz(LQAO`x^9t!T@W#bdKXbMa`;Gp zR%(W>R|G2pk18-Q*xvvf2rewx+P3H`HAB}af)&Bm3ttA8?x2a6n=A*D)Rmf{>l49> zz~h(<4EB)K;Gkjqn@qp?rYSW;*Cm1#!IIo@aQXlzIYzUI=}OJe^@w0a;N|+DbO}DZ z8f4Oq|3x|%l$yco5ZOVKK!`C>M7@9G@7i-RQqACXh@etVkR7R2dE@uX*0Wm8@O6iR zZ1&*(Fav`Fdmi{iZTp;aTceg<1Fbf{@#EJ{?miRX=QzQ>d#jo#b0ABw6vPx>kb7GW1z3RAp=cW4GMFg znuF({KF?Sqpw;XHtA_*;W1vsIfp_vF&p&>=65^!Q3}1IBh!_KX7zI(B_}4x|^ywFn zGd>7B^Ve#IuR9b(jDg;{4Jnhr>pMe0gSY4}IBXZ+u*|C1DX81ZoL8P%x6G-Wn zbfb61bJzEvAbPwhd5==FGsI-D^{~=y6Czzcd?$2Usu{e#5S--Lkdxd4&9&#Wn&ImS z1rcML?92GT2_x_EsSdQ<>()t0OBSsbcq2*?(I9!C42r#(_Wh>}zV8tNZJD}t zl5xGGRtvllrHE*d+|~glqBQ&7mFIS4&I9d?yLIA~vb|Odyb+~{XpmfkZg%V0epfWo z5ma#9I&pCxw^j?h5v7P|m|X0DxEa!01g(L-bzMO3ZDZJBDXHLg zJj8=8!TXe2z>O(T14Z$_{h_%K>nEB_E84pev_bFI3Edkrv|6BzD0X%Qcw5>2AM~K< z!!-%Q^H+jaZrw7U+_F}y1>TraK(v)V{{s!9pRwN(o*6u^4|ICsE%WMEH?>;ejVT30 zTlvi)h~lN$;S-L#qYes8T>mnwF4ohI9l$%g1k-y;~is)dFu+DIg`ysSw2- ze|EfCxC~UM-ZHx;b6cwg-l$SQB+XObA=#z`UJ&^8u3yF5~goCOJ~!;{2xHopRG=eT81TlH6~1=`jED~26U z^7#QIq_*(9tx2i@b(wD&q<-wvYJs-7z=|PlLqW6MwZ@;B7H^M2ft17ZMtM`8%gB{RcYa z;+Fmgo5fl!@V1ydQi_BgMbYc>xZY_sXkEoE{TutmwOZh9F?pmE30~bX)4m&=6hL$6 zxAYI{bZND~+hX!aDH1wp*9PvvgQmG|>91VPpw$9zi^(IU$Vs5kIAdRLu;BK1hu* z>p;QAIY%#m4K#XvUaJM(G?PP0nU^3X+F>W9zxiK5=bPWs`4_ZEs|DUPlS7o1Uzowo zKKm_VvgbO>L5-AKI?r}hXth9_X6)>8NM+^CG!U>~3ctPJmd<&@F0B@D6AhFy<&aV) zv>KnGzxL7#dC)?xTRPj9f6;1zH`(NnQsy^^n#yh3R*4jCYu~m%4`G$Mw)$B(nIb^pFw9_+|qG;8mrX;U(zUt znKD~zKBRt|0Gc_vrK44}RjUQQq)`qjWgdqV7j+jdC3nYxHu2oj5xT!#s|CKKQ4T3( zLXU`t)XbnYF1NIQ`@L3bfi7v}0L36YWr9Nv)DgX<{rF&kRtt0~BRHC2De^G%tgnVS zf?_8lKqK(Cw9h!MQEUM%X#}T8Ir}rKAt5y{-07kfNkdY)$24#&@8>jps|GrLk$RJ|*D0sl>tbHZ8Jk13=BevqKRttP#qYNUJ4@E9utrqwKM;Sycp9F7uVzBR5ynHI3G!U?_HcKa;${^!VYnw{|h$Bl>Pm-QpRk)dFAED21rgKEH?TEZBVV)ZMIq z;2F`WbN2q$YJo3nltQZ0V6824-&_2xpq9(csjZHtS}pKpjZ!S|EkMs8BWw0Ecg5YU zjR2h?e{*W?s!pvI__9VRM23IN1s;a8pEQ3{?E0DDVZ^Cn3M;f);L94N5E=gdT}V!w z=v_TCj}NrI;^tJFUOiC%-++Sy*8dOTSLbKqyUMqMubR(~Pm%Wv?{TE_{|@p@;mPN5 z;t}P3!M&Tik2{gugqxk~7S~#?2CiT(GcHcfC!G5^CvoO-I&eyJeB(F?y#YX%g9DrZ zMv2i77!85Z5Eu=C(GVC7fk71lO0Cf56$iU2yjA2N3^_H;@!GcADm8Zvm0Cf~Dn`(p zk1D)19D5vb({nqIsuZ}gZ~s}^P^-kiIL(ZPM0L z%CuVHs|{5V?d~TIpnlsKd&u}S=+wm9k}q!@P-=y)HUygpo0h!>@ixdri5V(^TCMO^ zhN_76_UWgf#<>yHM9`*!+v0ACl1i=6Rfb>_VWXRf6#=(Jzs&DaYK5*Y1S^7dWA;G$ z%phw;7Ck$w)hYz*>!>2y*V~OjbNv79qrhPex?AzKaG=&1saEi+LeQL<>VNwMkN^ak zB*c(;RI3%ficlGml!VGa=dzx)UvlNkr=v>XF8XKhy**m3pjCv7pni)oB1s7@0XLfM z7lTJ@z#Zw&CN7a$t?*@q%7~;Ta1wG(-SRIJEJU_~j!?YyS!NBJRx5m2p)$OI?Z9sY z&UW^j*_71mn?a{7-TKU`YM|8$Usk9LZ(uuc>p`4xF!O-0d=q#8@6+2^Tw1O0WrfO! zq{e&z;=v1L`}!hmIY52&PuIAev|8cI3Y8H(>aR(lsXJr)Lw1w*><9%9?R?tTrK8mf zUskA$=<+@1gtYTF{WM?tg9khg{b|`RcCA+UvO;A<(z|&M(#~J36%u**F=&aytxx?0 z$Fy4E%LPt5;&Dz(9rp()dF8us02@v_OR*589BFjymCRe<=(m= zu(&|01-`6Mi3PqWqwXR^Xu0l#k02H#ufe~Q&;wZNAZD#4SaJ(h9I^AG!^wOZiI z3Y8E^^433431e)J7`M4~{uJ{vtrqyQLM23!#4;Uuep8K_RttPtp%NlVVwsLSKkI$5 zRttPtp%NlVo`R0BBaLI8Z_fCm)dF8usDzXxG3R{FXTMd_YJo2+R6-=l1K?YeXW4_R zpi`hDDsP<+@l8=`fi5fL07W;fbVQo-Id60Dv{nmzIiV6FNglWZNp0o5N^$#_gU%nj zbzU`Sk5UVGIUy)XD*d-V0Y2K~jQz~bDxGZy!2{su`S!bMwZNAVDk3GxRgiMwu;0lt z5nj-us#_;33%+QzfR_=1N=ZdTlKdh78HU)R!`=71+YXe+PA0y%tknWtP6(cig-`lG VljM>!?7}*npcTZoPI@NH0RT}sDCz(J literal 0 HcmV?d00001