From a01bfd1b30bf927e3ebf70de7012c60c92f69d11 Mon Sep 17 00:00:00 2001
From: Riley McGee <mcgeer@mcmaster.ca>
Date: Mon, 31 Oct 2016 00:41:33 -0400
Subject: [PATCH] Added Section 6 information as well as 3 automated tests in
 functional reqs] for the unit testing framework

---
 Doc/TestPlan/TestPlan.pdf | Bin 126456 -> 133621 bytes
 Doc/TestPlan/TestPlan.tex |  69 ++++++++++++++++++++++++++++++++++----
 2 files changed, 62 insertions(+), 7 deletions(-)

diff --git a/Doc/TestPlan/TestPlan.pdf b/Doc/TestPlan/TestPlan.pdf
index 45ced68215d231049451b8754a3b93ca979360a2..c8d6a0c67f97feea69b63d1657cc3708f96e95e5 100644
GIT binary patch
delta 30620
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

delta 24475
zcmaJ}c|4WR_jm34cI`XaiMuaR$QBY2r4X_vYqo?Nl~lGo<wl__g=|?OvXmt$A}tb%
z5F$m3)Te&)+^f$gd|yBRJkN7x&Y3wg=e+04nYq3|>`SlMDmr-uUGRCMsu#LHJWkoT
z^%K+2;{jP!gS-U@N;}3<!fG-k^YUQT!3McK$>f??0aDTLXeGsqgO$ijo^A~qCo0a3
zM9&Y0=dfoTRS9ABx_Y}wGOMvMt_6WR#<0N)7sSBMq<o4wk3nH3v7^W9TW)6~dma7-
zwd=>G<@em3yH6z7g@1n2-*ShG8Qo#ss1Xvijj^*LhU?=`k|O29v3HJ&*vBcVVdaZv
z@{?v+4}_muyvicyM2qF7KG5^q$JLwjB2C#vN@t5cVr!eGSf`SK7~{7vdGp7oo^Dic
zYT_+u<I$BpH7c*An!JBG%lB(+0)pv)j&EyGR1K#zu9v5OtDzS{MYfemA$*p>gtcXH
zSLd5_2Ca9`B*nj^QtIA?hsWu;TMpD7Hrw+2_-JrhO!W1)q4uQ#Y*&AC5nlNZwEDZx
zHXX6{4E&V($<)sQ-S^^Q?#+!(kB%^HZ*0OO=k=fFUgF;RzGSL)m(pzkmn*KvGbIDO
zPIn*YW^}WkzJI*p?Oj)Nk?>fGjJv-=-2z*v_K^!`N`{Q?o$rM#D0X#To%fR8n`9?O
zI6spRiKad(ozhi(EiD@<-M4XOYkIJML<tM_;XFS3orl^PMZ2rSnzMmXjwqv}t;e3n
z6;?H5sNU)$GcDDg$;pas-53}l8E7c25q0OH!`O!Sz5w2*{h>?;KPxy9;~y4J9^P1F
znq88e*)~3m9O4x_Gw4V8tf9Gc_ny74?FJ9qJoOc<vspZ=Yxka*xqr*gw%<+>E#1rk
z@0%|O&6MAlx&MR*Z6qScqsS2dAt|l<(FJ9~BzIYP$=0pY9H-w>UCd7M;g-0O6Gt}+
z)@~I#5H|F^G47)>BI&5U&}NREkdc{3{Ye{l{CtP5_-@;tjmDO4AJ0&38-6W8ba}cT
zl5u<(d(=a-7`e0A=f1H|JVn&<U{cis8>^@{-=jCz=qP<YlYDKnR8sAxO&Q|1E+@G6
zBvoNsl}^XF$Hmr#_I*t?-aN5Y@1Jzh;;1c?(n=OVo(9ZgS-KM6P|0F%f9>L(Nc-ef
zFw%AM!ztfiPCNGQ%jLdov(bxk^H5r=%*S3!gm#37iguogCTE6ww(}C|c*=SH7CSSS
zo*f-;4?&rC<;l{zE_}LU-4Tvw;&o&$9CTKRX0=i|nSDX<*O@mn>TFRau`!wp56&<s
zB{4+XL<@c_zAlpVPhrl;iL8;ISI)Y9@|)AWd0Mn5yjofyq=H}ns29uZ({W1amP3b%
z9kUmtlUVw$w#v-EVo~5=IBVaapWo1OYw<?N`|Gy)y#6Pju<7SCcm4RP{ywnF;>Hle
zy?dQ3<DwFVPx0}@$+rgn^^yDTL~$T8#ZP6F6!?=Z&PO<m6fG(gd1xMFdb2I!?1!Sz
zKFWUk>ZyG!lPagnW52h0>*X=MsHNx+pkI)e1-+#9n0_-xYa`Fu8JFeN3N$V(|2q0S
zTfB(x%wq6!#XHN^w?8%Hwrw$)d%k><_~G7BxwPQSf@iNNWu@wZ(A!y?{c0mRC4&+B
zuX-2#wDl(*`lKcu_u(T?X>4NYqcAH(yFq8++XE795+#QwsPm>?dJHMu;S!u4RbPdw
zgekVKQ2g=p--S1IVfT1{DIJ-zo<e1%r&Nn}-Id?bfj!NXZ1}Kwep4k=5I4s^R~$9>
z?fhAm6J6l6qvHhhR;JvvMMI_i;)zR(Z%2N_1pMB{fN*j4HCWzoXX25MaiaZpRf}cA
zU^7dhqyAGbbT#t!?6v%HZZ|H=6y1w?c;9s)gpxMiXZPD(X`9vo#842YKe<`F<(I$!
zKJ;PrS4GzL^OzbE)6-EYiD*~vj2>Sn*J(}0O`Nq3GNU!y&+2BJxR7TY<K$TtHIn?u
z*TO-_w`aeHcaaVs&xPy#$6ttW+{B)KnS00Ksc+L^YbfOSvGip;2k!VnjE?lptR1gz
z2OW^1#3mPAQ+FqjzP*{ew$-3N>f%2`9}8K_)Ry!<7CIgIJQlOpA&|e_PEh$}=(f8)
z_za;3IOD_q?)L(}1bqMHw|Iv2#fQlnzR4_=<A>r{O%%T&9=GS#-H_>D{(flZ%lZQ^
z%n$rJ<rO~M_ue|r@KY;-@9BNs3)x51n5b4S?`+xSMaeTg<%{tSoBfb%^p@*-tMAq2
zfTL&MFlq}mx!)ewZG1S%PA-gTBYCz*zh~OJRjM{!xSMNan}TzyV&S6;9<NHyzE^xZ
zQlhixkZHa7aHI(z>v2X`l}qU(awXOS--#v>$8(RnRJ@bl+e7LMO<1Uvm$_yq-FmN9
zI@kKqwupWLWp1nbt;;eUScaOpB~n+%*<8E19A%bAfu~GQF|uwYas=j@G01d%EYtAn
zLY3eea+GA38($47SIl7U9##&zll@hzoFqP$qH^Nx3-N^mw?oYH4{z5v{S6u1r}O@U
z1J7X_In6|~I{rRa8@Hc>2hEx{Hat^kQ>mNyyjW7g5qgSpGQU)Ct^y}h_Bj4o+^Z7>
z_{ApwZB35Us$Qvl<HAtJ_qj&wLSpx4N-L73xKD*zc}?k-{&+EgoITx`dO=Y(UTt5r
zX~SSxXW<3zkWO55a6eIWdd~1T`Ss4N<%&k9jGC(N_wOZm-}G8gAR(VLw`t8u_nuRE
z5KF$1u=pq=l51bhL1vRhF3rnBK2>EK9~m$aQA8*xT#YhkZyE3k#ohRA_mV18mDkIK
z-QkkG?&6!O_2ZldrJwEzVkX(hY54w_H$B;Ps)|{)f@jK=YLs4Rx^ONkOt9KOFtI!h
z`u(`-M#_f0tmivIv#;MhBw*d)X5wQ#uDQcO{88qcSY72Kl_z8+eqD?ne$6YRV6Wn?
zUY{z6u5~?MKvBxr+Zc8u?qj;e7sLxaLz1A0mh&eEpX%&}f0T9~>*XAZLx!VXUyPa3
z%Eh19#kSMF-8j?D+b2rv8v2dpy@WJ@`uEhqJy#W8=J!Zdo;YEl-!+E$X4d1VTK>K?
zJV@F^^Wg(x0=EqDj^X8<dv;dtOw~}b(HQY-JpPWIUtEKq;**<yp+Up;;T-RWk*Vh&
zg(qM7j3i7V_a>=qdGc!R1Ixgdjz~o>%AvHp2g4mQhpt@=srpu7x_QTsvti;}^3Dl2
zYQL>|Sn>YjD2JJW<b7+F8pmTN2^xKld>RZ-D>V~rMEWa9pZWA&>DgKOllklYm_j_M
zI;PpBu1Lk8bNzl4?cPm#EqYD|AM5PjIdN&B<y*_e4u@dYu$Y_g<&Tbw=J`)Bo)hJ-
zoC@0b&*(ML>!nfS$<jl3>d<hwF7xyKR;q)wNnaLE9A>>aXHu&8WZ5NBFL<!-FtH-Q
zRo{_wdXmMZLi`w;Y)6pGaUC<q=hO33`g=1{ElNKPC%xK%pW&vwxqWyScAi~ijOG1%
z^S(DCX^fL5B}r55VJH0b>MjbD>fRgN$pvZKak;g7Z>?L{R%u#O__m}lzBS>DTbR$`
zP#bYScMSu%9Wy=0*k*(i6>Po|SQh;>CHQa7mM4fsRLq;Voxv*Hx_|zI!t;R#P_@NS
z!1#f!Sl6hGlz4tBtBHav=l)OomwxFlDIfgs+3@2?b9qXg^Gr{(Ux{Pmh6nF;=B{La
z+AtpC`8Z{!`GR4lDEfv=ME|C;V$M%DV!OL%XGD>l&c0QehgA`bWGr+u9SQk_s4(HR
zP*6*l5Oh66g$1vL!Qvr-P$V=NqRdFpf_CmgLJFa(ECekQj$Ysvs?1E(BG5msfDe)u
zD1n6yhbpt;QCcJd3E~JNv7*shC=4Dl4I?t5$xwi?D3l(i%t}OSk%<`SUKp7LqeUbV
zAz6wnR1zx2hQ?yG@FWa$*B=QX!?!^}DM)5C3QvMi32GGB^GN)S?{-hAG6`tdJl*~6
zxkAr1?^~>gW($Uy4)oo!HpUs<e);o9)~NNZiGe*Et~-~Y_2N?kMjoMfpBqRGy>3%^
zZFTk%pKUhV<tmJ&am5}MM^DWpkJN%RjtsW5>Ps@e68a<Xrx(OFZu#!@$zxt&N#;Q=
z_wQ^W-KS2Cl*lY2vy2n}n0)aztH6mbzn)VRJmOvNyc-wt8&xooH4-*B6UMmMDDAg>
zYkwr)E0fW<7xhlBcPKn~Yh5#9>nC8>Vv+7{%pde1{}KBgKkg5acV&m~b{M&jS_}tt
z#vSIMIxDy_yLfv(EApBXEpmRn{4(jFPbx#4Ykj0sZLtA`UG`d>?4o#q+F7!Gn%YB`
zE(3EhuW7|G$NW)8OF@}m_hdt;*RLLwz(_Gzgbgp7E%P6~tyn=Ck!b1f%gHG<plHWD
z?h1L#&#S1)s~|7-ILbvdg2lmev}eq@`k2`_JFBEi8@2?tG1}ZToq67SKh~fX8-FP~
zaPIx3(Yr5Z%PBwhRW?2PaIKc<*4w)1$jdytZ*=a_-G2Q(v2ue_lO4vwP0sn4)zYS%
z%Z&m7;-?ll__8Wv$Vt}L2ziz$Sr+cwR93;n%ms6Xlg7F1)Z%hW$=KTZv3ygGzy&#T
zLHqI3?}mH^d_QbRP0b(83x4vtC|+s@IxB3Ws$i6Os)){gO0VI*Z(k}rMvj{_HaK`a
zKbHBCXku5teBAz=f6LO0iFV!ahsgN{2sBSi;pMuP*Y;m7y+Q`)xoJsm{+gav8_<wF
zq;yiz=49%)sC-<yChxg>K?ie^@saH|v3VN(Bxdhg{?s#sjh3}mF8%h_;@%vrU4E@^
z=7OY8jauy&RxP6pE{{_TI-D3eg@Qu(+n%@Y3D?+zSm=Lt|7N<}Q_QDe4ZcuYC-sc|
z!pvgmL-F@8Qsa5VL1eq81=)HZMlHE(q2J+~+)O~WiT2LWgaL2#DMj+zup<xVyz2gm
zANMbj@oL|BQt!6SKPAsccBM}~HOq7u&KX)_tez39zRh~5n{qXg?-bvYpitR^`CBsB
z*u$ncy*BKh%if&v%x-+zg8iz+nP{qRNa~P5+pdpllTV6nUN4=oJ{@ee;S+I_n&%NU
z-D_imU!z|PN-rpIUKjeQ=w#esZ$P@~{=M1I@2;N3>`8BzbMg;|Ie79f7zhg}T)re+
zr&`E%V^pp|a(q5{Go}A-G)IQt_JG-rL#M(lgminNn+h{!c%6N-#krmhls&B^4!=KL
zshG+fWWi~l|BE{)+Ur>Im!9VgBf0g0dCvnKkBDAE{Jbj1vmtaM$Mj3E>i5=j1Ac`O
za|L7loH@jg2lv*qz3`50Xfta%VsxJedplcX=Ec1K#Ru~(oFk*ZRm{%4fW~q(=RJ*o
z@s`wCBy#On7HcZ4JkO!UVNKo}TwC{@@6HqPbm;1FB(yi22hxQ^gwaGfl$;HxwvET(
zfY9Ir9*5<yXgs7RtOV`%6%@jvNuW5u?I5SFE~mDU+&(Ot00r`?L))W}(A5h_sD)1q
z`X^cterF+|NLmC)K2Zod8%3kA;YkDldt_)d1_^aV3Ba{j@pueCFd7uHtuW%y7%dDW
z-++V+qhYZ^P<6Z*6h|u+VkQCvq*ZUB6BzMW=;}jZhzx{+y37C($xtl7!|)XX8mEP$
zNvoz2kSrJi0d#C<J`!5^L&4zbb&yyrYORKFHzm-Z>jVs5&Oh|fAt%l)TR1)Z-QjV-
zq9FsSJcPQA5yN7!f3a@&@b?PwmLuW`APiEc?6R;LLh&~(Y6NdrbQ^2yIi9_@jZwI|
zup}~8X8YKzNmqwzkoos-(ns&4wB*`9bB=V-d4D7d`}&dS5iacotz?Dpm`vHMM{YAa
z%{hAx1UR?i706!BUE-%5Cc8D}N37VDeE4l74*#~fWo2;DeMryNDb;%a!~L6<(7(9_
zT1gaTT<DJ1$K$?N2FNIMjUUs>z437YyY0aKYD=Zh%X14qmqh|5a35JeJV^9JmLw|f
z<aH2tZ_hu!UH8t9RN-@XrL14KBxAWGc_p)!U2S)sm5CG9UA(6#e`G6qa7e7_n5@(S
zj@{wjKa#G)rhS=#MS5JpGbv6!ark27Mh7C30tGV}=oFgd|6D6vqBv~S|7gurJLlCJ
z^IesL^S^Ni-z^x22Iq9Y*f~!e+&FC`{`oOGb7VPsvC81}t))*1EO|*qTi9fLE3E%9
zx4+)cYxru98=1lP(I@^-+gkXdTaBHUUNB~Qpfu4L&Sl8kJGMvNOUS>xHH*be>{UEv
zNK&Sd(p0tU;ge?**M#rQKiTpr4<sKj=jT0^l;sT^lK)|75l;=cxc}=xN6qeV<^#iH
zt)8=wPIc!Ti1EFajeGPkQ0l~GkqZ7>55x93_cDCF7b&SVcxzf@DZDh&;*eBEQO<UT
z>WcJMm-`icVG;Xlu-8r$94#&#x$*VU`77Itf*3Eqq=aSeyX~j4i~q2vdgpeQFI;;|
zzMn{WIzM5K8$PCOdFq{<y<iSomB7;VK$DF<X1s^pZa6W$-WdM0)9>v-e2dGEy-&9G
zm>C(Uh^gp4tW8TNn>EyBUj6tvIF+rh(y~qP={;wc>-tZ|{bi0m<Fu+>{+c{YN>~_H
z)zQ1)(Ox~1NAa-y*8P^<o9|i-N^u!A^9@m2aXj$5jwNoAl4j&v?gu%=8P04Fd-^+e
zi?aq|n?~YB<<g~avnZ^G<kvROr>M86`mBzhOnaX-+A&(x&Wc1HNt`b@Xs7+iWi;>U
zgvJ$J`Jv9Oj;XrgH!Sl`_kI64MPydf&4s<>a7eI+D^z@(3xR>qkh~DhOI9Nc7K*J`
zX2aqLF!n(9CuBg?raW~>FkTQ6u%e?%&Iu&#T`Ex=8aY9uvk)*uEx-$WUE(CIlodxJ
zY5_<>1Ke;pNvp()BLEUT)}qo$Y&aZIi-g8NttS;>nQS-!5d;zeDm<$I@z)45;&BkA
zR2Z^~2SRIvSg{x_ED;Sw#e>@56O9G(&`>@2MBEW#A!4;qXy_aLixm&Pz$g9`tq=wy
z0@SCAWWoZV7{%F$VR7X3AVC0Krtg&u0xqG%K*YAh{^TR-R%}SEnFY1znX>TQlesr-
zJK~J4F!mSzj>)-cwsmW<N%1x5Fpe&-AJOwiWB3Ge@tl2gin>Q)dX#0o6b(+iQF|xQ
zWuJhG7nfI^<Tlkb$S_J7DNj8m7?bc@=f^F*BpD_GPa~V%Qk$*C92?I3&Rz=MobQ{!
zcEdPEOuKs*U&4&wn3Z0VuHCyEqD<mPYZo)xdo1>KO8$5%=^-j{)9#ky(38qiU%Tas
zYgYQ1mL6RV!2_ETwmu?rdY^f#TB*4~*JQqFfr%mYXw2i=f!zg<9@hB1HNPQI$Z|W8
zTd<I8t4i;Qu@gE$*w)F3qSjr+7)p!kw-3gqjlw65Grp^R8WhASJ3C*<ok~CyG4P9@
z-T36rqtFrABfVR{1?tTl<k8i<nJZ}Xz>3MvZMXE51(`2J&v@ByQ37`(wm*uCH*~rx
z8It(yo4qW<q^Z}T@bIxc=gPmv4N2eVAp3g7Yjghaa{W?yG%-Sr<jJB_9C>5BoAPl)
zKh$J2UR>EM3Ux&c@3QI32WD?S(xF4xcUbT76H=R0+R(C}zKx|d&+GeoU5w>@d)k$)
zZ9=IHYw=+|wD0yq2OIMZqZbXWl<QLmD5KJE5(kBe(Sxp)$N6GUAC(qU-iNZC*(@nu
z(!4)Kw-K{ozxjuokErKt*-#<lQ)|J4X;zOR+5I_DV&=bV#_#7n_$}-I^;RI$PIAJ)
zjqj85=>fj_(U(6Bn@nxU`x;b~<?(7#6Zyhac3C(eY0J^_sTbz8p)V<HyR?3kj*e}w
zrWT@)kgm3=O`=od%B9Vv)iCahN|$~jYNGW6;WZzDgYMb@f23LDYKMe&?o;{KAGs66
zS>dG~N1`qDN6#W5v>n|kztZ1X2{@7#i3HsZLqhmOLAaQOfX0J$`co?s3QmL>gjk7q
zEfSdwxh5h7@PGLLO*CAA3BR&+nq6VQ()Uk*0n$tofUB^eX`3jRau85%h6?|;k-DBF
z2na&V1U$fmyC;R92|&2(EW`@0?ZABnk`=+HFxagTfa?n+BLy)3qZddfu+l^4l0=}K
zWSSzZXn-FWu)_kn4bw^7XrL|%L!t!(RCFmq0+QOj2?|INW+ITVuqRh_QiT{PXPd9H
z)bHA`x8-#q%V?oU)D&`RlQLnUHqFIY(ddVx-(!Ig2Ay1=!7q-u<LzkM&*e&rG5a}A
z|K7ee`M~1u!h{bauXc?`sm$r>cTOG>dxN&Eye0YSc@6XODLd<OMP=<Dl*{31iA~J~
zL$U{WF6JZ{Qw`=vKJWVW;p*qe$Bzp|78n-!JA*l&xV^jF8{0>nm=zrv()&gW_q3t?
z2m+J>Swgr=0?-u@V!@Hy5TpW0CyGIm=arzn0B0S*^CEas&nrVO5=EeA;F)|`3_@N|
zh8}_EPVh`g5`$8}vl~3S!ILXl4B|>xhRncoTe=bypDYf=gQs4$IMfE{G1+2}K2;Pd
z&E5>fXYz9XiIWI88U%LRTf(W-#zl>&^L&Kor<$jd)ULX2yCkmbc!f<VOwdyL5}MQJ
zSM+XY@mUvdzN~Z$#g{jRqvz+!kR)G~KrO4dyf3;s<gDI-t52<3Q^_y8u4;bvX}hc{
zv;}z+n&^=pZThjfA+l+5=!gPO=d+(<Pri`Ob{3y|H74+_p5RN_uH|HYt<3a6n{7pR
zM$o7=;+)(4<8}$`jb4(^hBwOKM?Pd1-YIk>`PQ8G&^vady*I4<GplTO^Wcfhv8(4F
zD(DfsZDsU7)hAy3ShNkb0eyye)C6~g?W@qoNtXwDj3b9QZ#Nx(F(a8gwmGN!H^cQM
zc9LarYRB}6z8LgT%`X%Op-nQ^W8~`h#(%q_Ahao?u1JnmD&n-^!tHZf*WcXQTYH5u
zu;q%RrbTT>z4y~-ePatY$8&bcmsE&uM(OI*<?q8=FPKZFutoJMoWK)<#9qEFDhsU9
z{B|<p+2woh3>Y1P^xWh<jZJGB5FQLB4sy0gqN}v^m4^&|-)}sZQ=mwzcHWld@)X9|
zpJID)ynu9g^Iby>R2tZ@gAi!>plt6!<jpeo>F}X1zOH-KO6xU<65A?2Oj<U^x1qW#
z(~q2^Y}F`44ZZ0PD(BPjlNMhTfC6;>aqA!S)s$twVt+q0|5mUcxtOO*WziO=)O(>?
z{oc)IT-=H>1_XWHM}u!D(Z8CicYM8XSwY-&K}klWQ)^JH7|CA8c((qf$oH4lj=kGH
zj+WH(-P6Cv7j4ICW?rVGdLVef1=Tps=rDMyO8#SBDkDWrC>ms((K9l|vl8d0&k2Mo
z+!@%ZIv|kpuvWKcoX@ak<369FGSO18;*po1c8;6#y*oFXq&~Do?FJ>)hxqYjO(;bq
z*^AnIVYuCD_GJBZZg|w7Thg39YV>Bv)0vN~tWS;Yo$lh>?TcqVk&G|8D4eV`|B0Ho
zxIxnI`%B(4*Pb5Ce|ummBI5g{Ywu+5Ot=0X_`FZ?4Qfg5t4{Xs<H;$%Bk$WTYNtH;
zYM7xImTSEQRo}TI2I1d(x|rsipOlbke0(BU5)O`sR_(<=s;4<qg@qm{MN#R%3@``Y
zgMH0JB0w}`i-caE6@!8=3DUpd@CEE#pzKSE67UAaMoxQ=!(KTw8YG?YI5|8Sr-i~|
zAj50&Ojr^&?GV^OX%Wa^hb08fUlIT^-dMsU5}pQunwJH||CbaL*p=aFahLaHxZ$hu
zNJfzEI(JAID!2^yE9e;jc(BPbuoQyE|5Rbc5VSC4BE+AiNatZjfnW`Cbw@(`vtX{9
zen?g#=pdR1C1xr9ua?nR97w-G^XYN`goWXa7_>W^7t-P9070a-i5jKG-Xi4{fxl_K
zymu#~y7ALjb3R<N{<is+eG*gh(+0Ox&n9SYQmA?G^+k9*wsK>6tyA?>yNpfisBTjL
z>1OSs+x)0<)6(yl=*3Cr^V$4;>W`5D!;uOPbGNgXcUGxBFb^1xko}nwBopw)l$laO
z(arw4<-|+%udk=;Iqu=qC_giQ$&8F>e=$1WagWPb*v>AfvM&0;nAMl-az#<6C(WB>
zI!i{FD<XGAVyfjOJ<KXI?R;J)e{oJ*Dm=LSG!Z}eGdF&Cq3a{deCCTIUOGpnlYSnY
z=<W4NDo&ZIlX{%CYuTjomcI|vW!@9b)JePBkoJ-AZ^9)~ar|Y^HaMQ6lyEKxu#_Ys
z4}Ruj3A3!Rs&-ZsC*G?2aE0~WYqCaxUf1UOVpc=n%@uu3Dt9}b{Yww^>S>?euv4Fb
z;fCgQ2FGZ}%K;ydh}5%BN&=_27In`UPn;BQyR<7m+r*5Y^W6BaO?y0=a3Ton$(S3a
zf-%nxb$IsO_-y^H`pb=<x@sROyLb)MqaN07yeV_kHSJh<VsM3^)*~VDwlki+oX-aj
z;hDFH={)D$=`bGiPW|V}>TaXyu?teN&+H|fLnCJ-(}-nT(nL<3)6bQ7X{6<WzJB(7
z;|E21wu;IZd5RomIk5#t)!h#N9Q#!?B^Q-FBXfmg<`9cOZLdDx*745jn(D(8PUhV;
zw@EHD_Rdu#hi5nRGTf-Hz0-_4-aof_l3KZ8-fbgthxciY_U_1rtd2qR<rB=UP9C{(
zkBpKt&{0Ezn%0)Qo|&bCWw)x2-ig_h{(Z={<DGHe)$Kmpbx;0g`+^q9s5z6~^IJ&n
zIU`2-=hJU{IER8iGE2`0sG`CQe&$kAHx{x~lik>_4#vvgdZ}tORCHW7t3jaxTQA{g
z_H~h8F!A!y<f2l{)QxdM&8S;$6gO%UI^=E!F1gq)X53TpV%B^Gm*LZ#gxIqCR{~{A
zZ1#6)v~9n5k-Gg(mPCPB^tGS4FE&%EuUOdkm^gU28ydYB+yK%nG96_{#~#=@Q?_pR
z+0~}D$aDB>NZ|R@*Njh|NM$xX93Nk1bpJ@yVRT@)q{2|DaPIKe*SuZDkUGP~?w^<$
zX`G&U2p`||Lro3-Z%__f4qFWJ?&anwnZ6BCC$f0&i|Q}Dnq6K->h+%Gl%1a(Z_b&W
zUT6q<`ZG{`b9edR)p8EhP<W^OXm}naJ4{+Ha8|M@J;4d-#P#`9#+-vaIWpB~R^JC}
zdeK88$1=Hh>02d2^laq<WuC!&hbZz)_x+6rH^rTc^V+=cO4I2@#xl<`@+(J)QOe;Y
z>(AFVW(V#T==tYDu=kaJNPHZN{H;jyYFob$@+p)Mge&$`Q2fm>Hcn1}eshm4_`N>1
zMEXu1z0f;p_9;Lhg3Cv%V{?e+!MG5_v+uu872GI2?lD7fnGK45_2p5O8}c<n2I5vU
zqgT4fucMm6CRJkA-PN}Vzvl`v*!DEOYtWh0$)925QZPM*Wq8EtX_$S1VfLMQ`1?!E
z498TF@ihFF$mW5%ZG=UzWO%Q)8o&YA0RUH^0r+2OBphmO+6ihotck>-&}(8;G6;j|
zvG+_iFAE$y(<m$i92uNQ#Fh#{H}d!y=|naH76rDd80Z{Gb<O1Q{YwUi3?K&v-7b?~
zA<?pM7##GuOo2`Tn_j#Yo=j&|&0k>!@iz$S0jdLep80$LpDRK|SU^Zl1R--ijTH{K
zaUgC-qoJ-W*%e5}LCyu-Tq}_t8b04ZnW$2p*;^cjf%*OJkM<w+nXR@ALazpkbb@9(
zX103{NvWPoBb_tKU_S8Ub+{;(dV1-m3__NVRYY{d57(P~3EtwTr@k1S_;i1I{8>iY
zx$}1_?2Y?bwzE7gJ#FJ#hjGA_=1N|>J*K`Re^<Iw``*g>ebvL)hI-zU`Z7G`XI@>M
zrp#D2w%fkAFMF*y?xc~LR{xdpNVYxvr5d`!ha*CjtC$$$ea{^)95oSARR12kEd;u_
zwL(Uym|IwRYvftEeFK{2)ssiAnT1I(P0H&xry%n-HmKIt>74hyl5Z0>SMT~Ep7(id
zoo3z6*ro5cg1WuDr%mv?of>Alcx2oU4X4{toc_@-eDTf;chxDzan3)m(2V__#-*DL
z9i`qT+{Bw*FS)~lKayqgOPu&!5ZB&kPtK*A)E0A8t5I7b3ugjl-1GTge@Ur*a%EDr
z_2FHXGl4JPyFPz$_{9~qJK|k$8yllE9jqRbpE%b<OS_a6pod~bzHDwZeRaDzut$62
z%xxx0zr$U}VV#Q;j6+q<{UeDo=Wn&XU%pbJA$M8)LCnm-2=%R0gPm0d+PT}R<}RsU
zjw~N_CvH(yIQD%T_tw6AqmnOM5GQsS>^N9Xy(J+U)|C>0h>}e?<Rh7X*UlhTMp*Uh
zsZ>u(7wMKRDBi>FalBIaw-4y^_s#Z-5m;DEw+T{YKZi6QJQZqeRTZAW_o$vvd(vJh
zaPZ04*m$E=P5<<Gn1Vrhf_wg%M6W?3<?cGIO7EtOp(y^HET>!~ZY@mp7!uD-+N)nI
z&3peKVAp=${(W2=p-Nxs71<-3uFsciy>7o9=N|3pxQ~OyEJpI}^Wdx*!?*p5XZuyY
zDDB)Es6=ru+=?h{+H>-0^UjkC&9*0<i-~efUnU=l|Nc7O{%BVbcgE=|odo%u%XI^$
z5?W#Mi%LH(=a_hZWi1rUZFAL(tMI?GAH{Pg=~<zw<1S2ck$#^QzwCVB+lVJ+jcWUo
z?eXM;`>#IqBh5IyBySojwJ2%et9nAMN<lD4r<S(-q`b)ArAjefd?5Bf=`&%Yt#kf@
z?8$0${Po^@J9nq6*U!(tGff=4>|4;3)F%{d^WHEoK&x-Jir$Zw$mP;))xvi=IWM*h
zV=WYRJ8ce#Jfyb&pADV+mjz}~opD{izvUbY{@ncJ{Ni;>@-T4%CwnP)xlXNh?1-&>
zT-Jy!+51xg#j&@VQ*dCge#`7$iH`leJ)gq71GNLKJ5a9;9UC{Eo4W34Cd*(*{F*0<
z7k?iePdUT1|9Hv-$773NmE35*7LL(+&rhggHEA=lCc8oFqPFBnT90lxHl{XNxF~zu
zQH!gJ_~?ktSN!QOe@)Lq%&E8D2>zPm2q_ynL85+TV3zvw#_B`*cfNmfgnoZ=>Npe`
z>T{D5!J%PLT!o)F6zQ)3IHf=aL8isNzpDihDClM~9U2D;khFIxu$L9NMt|?MWo9B0
zanP}Aif|bljsOlBKv>yC|7O9WPyj#;?2$+u8b;^84mof%$t)NW3MBL3Y~!1JUT79)
z%7g<)v?zWd$a=FnWx`$u8X|CinBQGEE|O+EbK6Y#RroC|M8b~r1l_$*=rp(~$TUA{
zgd%(FN;Th&ZS!a3*yET#M$7e2@fY+poWdoRhx3(ZGpCTOZW+txI<dKBJ~fuPV4R(B
z=S-O2=ZxsItl&$DRg20!#c_?|HT_Am#Qk9utsdvipJqC2vnlRA((MXX3n3QC5y4eT
z%Tn)Nop*TYM>>u)YVQf^>SL`9IIDi9O0(!j;;s2R?LNrXD>1Lyj@VZ;j~^T4@JD*(
zy5|g$@ct6hVS(Ep)tYH-Rg`6|``*5*{$;mb9yxJATvYwJ<jdl(;gyl!Mo%+8QGV}l
z1#xBf#<Y*W9oHgID8FxdE{wP+Y6nVaXV^Z!%FH?ZO>s^wIP(N9F-tth?!EN&*-vam
z-C_ib1<&h^c1iu7ay8T5ZEc1FT~D4$A3w|~QSO?4X{+>Nn*SMRjh;>YH_$KJSUMXl
zHx5KxV;Nw{bD5dkw3{o0UsY3Thk76@)#uqZ+asxwADe7%T`HwmSzKtjC)543_Qs2<
z*M;u&d2!k3o2)}tIBK2()1sg4IDc~Or%chgWLKV=*TgLkv=f#_^|?Zh@IU4AtJx6R
z{>$<Ruj%Kmk*m7dH=`_BK2ZwgVveY@pJP$KVzf)&=PKh46c6485lpO-zj1iVmh+y1
zq}lQ4^s2LvRF<;&8;X$HsFhB<^!)24o_(j%nM(p+m&@<i(8S{Mq?cVR4kOsb+@Ibd
zU&1(YP+vsB>Ra$@Htf-~By-e8@h7K|Sw=2Nb=Q%q^%)Hj`5Ybhzt@dKyf<-6eK1(F
z`6fe}sM{#>t;6w%h?sV=)#zmMbBVWTR`-wAt*Q_1b(cLFx~Moo5eeOL+`EA7(C&Q4
zu<at-nuB%1&nJI;e$Xw%n5-~yWtT702A)!92}RXQ&WOkRGG{py0+;VZ3UBLHmaBct
z-+0PSfutMv@l3nhrG!d`1wY77q?2kGSEqVq+pEh6(#Fka-&|&P;SaN#sk9R}i6D0O
z7D9Q4{r6k2JDopWc=kQz9>WQ%4Z;FWZ=z%_z3H;5ctbLm!c1L#>{;Qj*7A%%{4saF
zI<oxe+}8PqJszSrj^AY!NVnHG@lw+^j+-#hBM?MY<~qA2KG$XcD9gR%Y`fW@ivDdp
zHRFe`J`4%#R68l}@A#2Vbn2Z@WC2^`1FB+;Eix+YIzHFt*|XkA_wy8S$qQML`|k-p
zQD+l;qw784mFeihf_!=9RG$570n#`NQYUjdkQ>QzDcW3$qp&(wG^vBY*nIuv(HkXO
zxEDh|$P67jMV8cJILOHu`g0NgX!08eGd|g~S}{j%$HYyUTQj3Qk$OJ)KZ>vWiaAR%
zi@Dh$6w4p`s@2-|tNJ#arYQ7G1sI;}n#5K%U@L>gMGN1yg$rtHdMv#}21Tl2y!kr`
zn)P;$Cw4IAaPqy0mEe4?9ddPM;lsW~<RjxFN%wkhb*e?*>pga_N?-Tj_h;SN4Sb05
z_loacsg@nF>7G~64oH*<=lhMwZ4rw8ACQSa!^vD>fJo~g6AdLlP*KFtlL`NwT;ecm
zLQWhIaaaS&Dxu|f*$4!1d<!DLyQLuUSpuhDK~filc4Uy$6@tV|;q0go^y8!`lzLAP
zZr)i)f<y)^#C3<HIDoU@@PiSDfiI{qkwHibA9pm`KQ8Yl@i#R$E7XQ6W{T?UfM$aP
z=0rFeFF3#Cnw9q(ey(6y+*WYsceeOrMa!!#`#9>_4jld2ZAIB3H5*5|__|&9SIwP<
z95wN6(n^uVaTA18O!C4mw*FnF=3aM$k#~@r(ngKUFPu4bfMk}BswoYZ^C(jFxv1@_
zcqgTRQpWw@)itHjJs0Gqj_$qSE2Veh_s0E@hq$oM%*Ok7jf%GIcsc1Z9mjWy^~Jmw
zMlz>^e@sd)B>!!koO?*9Vg#|zSW{-J8pFPcW1DMVnQ89iLY%>IDVqsSIBaEjXzek^
zaRKZ4i(6%rS^K5Rj%T(Gu?G&Sd%9}17dh)3tFh#vJWOD{+o|y6%yEaO&mAaRMaTLs
z^yGP*T)OTT=6B>uk|Fz!tWBm>!WjjpOMOZtQT;NJg}hg{Maf=AkH0dU7(4Xd@_0<P
zkH5~7gQSa*9|ac*u8(^-1gI)&ikc)(#C>8ab#}csbl_fyoq_q4!Z!$ypYNwqRPIk-
za_~-;+{C9s3E!FPDUmVt)xB<VV)^&d%R@dPM-9C%Ub~e1YgpDcL$Jq1$$HbPVg(=L
zXhY-<kF$ZE$II^Dj&OK6BKq|9_@$nl%f2(B326yEyF9y<&85;t7nbt&eLXOAqFQKf
z_G^2s2D|uAvB(#*Ur$f^^9idv>7f;^vkeL}gZs~s^aFoW<_>l1lwJL#{{HskO(of-
zuYS}g@+`&Q8GTn^)OV6oOA)uzIRBcOqlvU-(CKa4&>Wj1G2fS%IG6Jd2*&;JsGmpk
z>a<rZp*JhI&v||7*<jCb;M(BNu$i4N6C(5Lt@-?=bW!-936X(u#&$=xdpy2R<q6M-
zwI02vUx#iwDRYgI_h~oEdR`)wSyNv__iWNdZ%lpx|HEJ0o(s_|9k<JWeyYS*4<xBS
zx_Z7uwv^ZO$%kp*SGy$p7Yueh9CZ7Z+5PQ1N73b_)16Jl{&&RpFCv9}+N^#drvK^w
zVQaXD{YAfB+DvR&V4k~^Y)fs%Hj4)XZAPT<qxtgM1|8>AttTmWatCy-cx*q?-hMNO
zJ2AxQSp50s?eeWbX*;zV_LaH0n&8eGo8RN>73LA%dCvREj*Jt|gi{Az4wj9|3O!Cn
zH7&dA5Uu;i0!tntGNre%_;U_D*%u{x)Yd`yW!uLFe89uEBV`RgYR|sA**nEHL*VL`
zpXSmRt&$W?>Xf=xI&G6VGd?WsRNaRhG)P(sonZZtW0KIn)7EQ`FDt{X4Ws*gdp;AQ
zN3$Qj(Y7^z{QdiRtbCP5!S06*k6%PpZulP<gaJpLaM*@fcZUQAwtOiMl$HJm2(7tL
zf&)SV`81%%_XI%x?$4Ey#4^E^FF2$#EdTTMC#XYrA)zy^{Pa4kIB;-;0*B4zLeNqT
zH@ry(zym~SfPhj9OCYbuC+wP|AX<GP7BWhUjDt{JigdwjXfjAwf(sp>Ie~TkhFjo9
z6VTwWi9l-s>MED`uW>ds4yA<$DNz_t4X7gE0A!0O_U}k@Wq(Wnw+vx)Oxk4uUz}|M
z7iS5QdmJs&f7bDOpPhT+))_V(W^F?jIJhsiVD{6z>FJP6<>*<ro#(g3{QTT!TxoV@
zd@`5hptn(5tK1<Am0oMJ;Qmr6@!@4V-J<-?+lA1CVQ|iZ?vL9)gV`-Uh~{p5(x7&r
zXn6a<PLYC={?cIYrBajDB1&w@vyr1ZY2jHxb*1mB$g>?G-ciKm@QzEntm=O6>>LZD
zZj>`mdH4Me&y=9@mD8IXTGWkBw#@Am;yZnj;ZftSgdaEbVr+b633icLc-@np)vc|D
z9HirdL80pUzlFC*Y<5ayI5B%7uRZY;Q+BSg?!*rxP6MMe7`wVdq0NTAlw&)te2v+X
z?2^Cz!t}G^7gJyNO`y+R)$QTFMm(5%_^ieP59<QYM$1@Hfqj$<Pc9-Qa?YO38@p?H
zsJO{gq7e}@GJfrD+nBWfmfnUEzW|lU<O514bKf#a@C|10Y+laKl8L*_u%V!(XLQ8&
z-OZ&5yw}xfn_WR-j6H%M5o$+-DUOKikB;1OL8(kT*<;w}W^si<r8#%?E@^bNkrPFe
zgpb~QE9t$2-Nj(Q*r7c9<=jlOhHyhP_egs7Ri&nVndG`1ST-%<Kw-@L+Ptt281qn@
z?BsK81gFu2i1O>?3le>tx>?iu3QNeD5rJP1DXIIs@!M4sm%TeI`S)9-uv1uhUiBli
zToZQAFxYK2;ZDA_Z}TZ$_oBNW-ad*LdX-$3`Q2pPK;+}@z*9K=7T;ycKAq5>456Jm
zce;-#8R+<pq${!R&c7Ux#}RQbL#xW3AtuEs?rquqvFm#^-8$-(h3&~Y4<}L<+e}>X
z2dvd}KNLoO4*3x@mn7{piypsl#8O!Qfb%cPk-3riuOWz>wnihSdu8TN?(QC*Hfyb@
ztG!;}6MT1&A!)*<S2hm+IIb*R^f$xBh#K0>DB7Km|Mqj>b}S7TXy(3pKZnJ^z`#le
z1_)gvgTRBU9~#in8bL@tN&~8^L4qeZfIw@J;Bx^a4!1UJ!Ga1%Har=xMF#Fw@Nfgj
zOVKEJq85&XgIvKyGR-@599SvAlC{uSBCW)tepLzB1!BM<i}RxuDexh=ohT&t3_jF=
zrQ+b^8Ho&Sf3{MC6$`G0fsG)#90_f|#Y6LWT2;v9A+snJ^S|H*2MO$!17{UjARa_S
zkl}M}N($ILHvQN=HHC1ypEmIV&5`MHmf*7qGQ8Ps;Oi@eh%v4V*ZJL)uR0$V=hFvm
zJ9FMFW*ppv%l4QxJb!X=PA&2u=fI8|yFPBM?9T|wF2E;v$lJ<mgv|^@J4y@o7z;Ez
zq#LF!?y<`H{{G{a&x`NB-HA)BR^yEA6SpwRI76wwQrAy>%X`}U%)oRQe$mLBE3R<N
zF2kp}Dbf1~L+P1!cdOl<&)elW*YNnidzn_TMQ^Bk%e7$>%ak++%i#}2W&@WaQHF62
z2QnS6*`%Mp=73&cEST_^CH#os4=p*~6l1GlX5}fiEms$>mbK+$1S(}I{#HGgD>my)
z@?!QiieY2IQJnxTr_s}PR{5C^N=#1j)hyO=XKp&>y7=AxS5t>$%l&kg$m_j&N)h~y
z8IzSmqYpgx=8m~q9%1;({tug@tZx0&-*?o<UiU7=-EC&jvT;t=c{AXbVPN~~QC*vj
z?o`@=nP2e?h}Pm^^K16xxz25yl{c8_Ug5p=R<^l`^3Ugo!#dj)m#2lIQ%H)b=$?i8
z9hWLyPYU&l^bDfwe`nt0)w;URXXNSZgN9^HD=sa4i2?NTcF8~|n~@et{I>uO@x5O@
z^xuCwZGCpB`+h&V;Lepj2R6%`E<CdL%#1|(eM9*J_(OXxncio;xb^VQLUtpm$Liep
zz1g)a!uz+3P<$t}+$CHO|Ezd#W?A}+vghovFQU!tsKsM*Cj+;PJ$mcR_78SEk>jVz
z_%l8E$Hsducj?7N9uv%e7iv(@uiY?K%aSy}sQcpGeV55?aSNtH`sXkFxa()N3&DT6
zDfQHm*jL&+UhVr4ESl-{xcH=)*u^Dwi?{j(&&-N9ag8e#Bv6{0qm=6AiFG;Ejl34;
zTzfuo_OeM-dXB_Iv^y0DT}*TC6Cw9)-+b>f@>I(-4xRR;`dIv2Eb~C<@Z;yb2^<On
z6&jl=^EnU|mMG=Zk30&w8oQtJ?lZmly+>i{P))Y;u)BnxDYm<HXn%$3QZIA#{I)RB
z+L?3iSOI_Qd5sFnu9noj4w~IJ;@ForaSj%VWLnPYvKvR$j+h(r@b2Ak^KL8ZKtQ(C
zbQ8M}p-o0{x*;L`uH5U0haYe~?&@RG#&VhxI~MXaM`NBeF6<7Ka=XBFvBr1lmgyE<
z%7*Fop3T-prdO}j+;wV_(HdG5*;~x0a_8rh2<3rm$+KPGloYmot%|;K_qCqU>`24c
zF6XZq5+?WpRFVAHvNpq8{j4-%i-<$kbGwVCBaTOyUjE`y717lBA2ASaB?iK+kAc92
ze*kq7D>0C^fxmx1$YHsCayT4qYbNIemDP(wcSL!h$AiU4+}Z#GNQMKW+E)SqH0Xhm
zIP~S;FNq=b6?#P!GvqiV3@z33K$cWaIM86kk*hj~jxsXhQB}sT-M|xFRWy1WJTX;T
z<2fea4sGpYb;Jn-D;|!7Y#>Cdcx|vI!rqn<kEenXjoL31L@Fqzbros=#rd&_-ztoF
zBCVL(TZCw1#1p9L#RxYbjk;WnPzSA2m2V(iVHu}yfNwmCT0{FL!sRl&XacA9ZXfp$
z@56F9Jeq1$g3w{alc=#Jh{Ny`{H&57L^~;2b>o&c#KP1!B?zI-czBe+ielm84u%p-
zi{otMz*QxfEQck~xaGjPHvOASr-K9|O-u7q324ZT6Bfmxi{sR`b`AFM4*`8yB^5`z
z^lT#sLQ|R)92UO51itC_72&=?J08f<q%dMIRP!=~1kXy<m37UsO``T}8G;MJh$q)x
zEJp~^UP>wua<rG8n=3CLD-n~-aGil#gfN&La_#(WL<L-jdbI&z0NsDULrrQ$uv5P^
zAhxO!Y3WfpRkIKeKP@y0ttJPqDbl+3hlGJi7^>?X1O`E%qS_D=)UrDW*8TM1_)`l9
z*P`3t9}*rW(bfDzBETfNT7O7Hm_#%5e>*{fNmPSwga}ow5h2A$z);a`2yv=QBZ3t{
zrg}9ZHt3L6^&1WMo3yImXt>{`Rc)cMFo{UL(uokJ4g$&0KV3Xj-8KX-RiFtWW=UQx
z6YeZ|wM@9PWSVvV=`0%VEP2&fpvf?an$rpTpV$Oi(RsMiN-Jo^bk&Gp;Et15^%4U*
zPCv7=`O^pnbR36T)h>pb(gWmIbRt-&o0}1m(2<o!Y%yTmai~>OfdQ)EP^()3s^Czo
z#vKDx!J${Ff&r?4i>=g-X2e!T0)aLSo>&x2TqO+))WBg@br1`yfmtOD3#&o98~?9n
zSYS7}6^~o72rS%xES5e?*)8z=6KM_WV_`M0bocvH8CC;J^Ta=cg@x6i1$h6p0;_>T
zQ-$v$Hh=^YU9{C*Fg1hE=u@K&8pW(&=!$627zVd$vOrrHJl!CuhHVHOHNO)fAb|#~
zbQX---xz}<Pz8DsLeyh-!4$=`A+!;4)Y&!!p2j7K0fV^0g<s7^q{g-aV^?jbaiq7e
zv?B>mBAo+Fz^aCbuvdyx`{*2c9V>0{z_YT#K~RHIo=L#A&O<%gL6bb)u_9Rt3lyW*
z!=cwm#=;{nMpe8|V>x$!MYI$S%<c*caSaQO&eDA!p#?N1cmB%)=7r9JUo%idJhiVA
zC=k|3V|ly6A}9&$Wrc&ZrV#?2L+$}$BWNV?0ca$A5Fy9|CYsJcz^XYxey_x7DvJ|f
zcv@xJ1Tbq@VA-P&5F(gAJYXEKn7=)q0DJc;yC%TSjiFno6fAb7Ir5qglIWul+=UQT
z`r8+Yu)~AjfWY8SXC=Zwg&|O9yAY~WlWt&9|4s)Hw?-=6qTX}?_=Woq_62{*0ro-v
z<;lO2VSVWPr9W-K`e6U|dLpdPDxU&XFaUmGkdz?)Yujrk04%V;NL@+5im|KQj|A(t
z%KJ#Lez?D}fdu0)?r&%y!Sl1q{YbEWI6U>uAVNgqUta;#RhCbpSw4yctG?oy^g$)T
zs?+0;71c?w>Uesi)S*Yf_Q!$2NdD_o<TXx3qAfaNRMBpl>7VTWW5?uwy^2g&)0-7<
zxl3o!?m<W+SLQy@)yqSRwn~Bc1s+-fGCa$F$gon>W(ojw;GyhPR1boc0uLKu1?=ec
z;9(=Jm=2u+qbKdw2bgj?1q>V5UDC~hP5~Oy)Aaw=0WIUe&0}CXPMq4?ef)gj5ORed
z_G=m+Ga5KH^=vHg%YXZ%2F4Kg$9(A0X~_C_FM$9InoP}pj38>R7Y_u`#jl-6+S-DI
zHD}=hJqA}xXgW|8dx3|Os5ZR_73p>2;K`$P!^cOBDhWa+s^b8HgL<hC!6B(8hbFI#
z)nShVAwB{A>L9)WBM8=kHvpH7Kn{=QJpYx#BTiaJg%>T<I!W-zqcPNT{RmM(AQ*Jy
zKRGxxYS60A(3WKMIvKQ?S(&T<xM{OPrndAUgv7AxN@?SbrOx(&dAZP!Kq5iou#^7F
z53rT`ya6Fk?d?TyaDmQa=z*#n)#VA|00KqpGQYYODEW_xL_K*2v4PG)0|a_ssS5pw
z{j_HI)U^Qp4}%t-N(4a|T%V0w3#fr!32UhX{fJ<gK}Zmuo5P`QEB(>}DNX7W%;WL`
z!AvcGis0Y`gZ785_$eZsS~Gy)rzQ;{I0R|K`5!O%tqe7@=`UV3ZmbrVtd)3;8vhIt
zMdy}&fnXD&mHpi|NUc!KoB!tL0XbOEYb@P6sou{K3I7RTh6|xSRw3&5W`rW#VL=u!
z-5~tA`2wtk!7mWeaAhfGpcAbgh)GLY=;HZVF|aX^sW+b^M5!SIi2Yo!G9j*Rhdi{f
zRHwTLNi=<*fg{kPO&ozf$KWmj%^q<CI!56L^v>Z3csTY}pl*K&;#8@72;P4M&|L)l
zHfe>C?uNJ(!^W+I_TYC5|He{Wj93D-<=%gtAg(k@TxoPAgvYJK?Qj|zb`l(sz98)R
zFH`^v;one<Uv>FxMMdIDkBD@q!mR}DxRpp9M_Or}L|;$2{(?lRd>ca2Zbc6L60;m`
z1^jR;VLkYv7QJ_*m3HXPyACGct-v4CRo5a>yMSm`x@aofON0uu9FB~q`2{m<=J3=j
zt<?@5pFh_*R(eGS1~Gt8fbDo?f~is+2&q4kV_qU;x#jS*+jlnLN!vn6LH(?P>x9GJ
zwputIg{28!Wjz7+5t0J*#_=lwJ|0E04k_yN5JFg$7SI0?WaM!e;5wcj_WyNF5RW2J
zm4^}X8~*H2twKW%`S^oh>4Klt!sE%Qy~EWHeBx0=>cL@zFE!!;h#JR+5l1yJcnpY%
zQN)cXoC*r1qQ<Fh8Q^Z@8sZ_RYP1Q10w)*XVjjH;HDLtd#fU~xKaC)^vY?1WG=WNb
zjj#Z(-~^bOK!3%9z1;x)71$b8^$o284rm`if5i~V)XtSxpsUy@tpXZNqI%O`QCKv!
zj`m6*<8V~=F}MPOL_|^d&|iswT1bB-fNjMR{S^<k!`t4{>f*re_9FciEU(ll`YVP^
zqLRiDBr!A*-tobIa{h9h@Dq(9V9;o40$hp(_aoPpqA@t?09*<-UBGbQzrT1<Ai7eW
z0Hs6>0nGgBQjmg1Q6nZ0L~$&cwrsB{CV^4v1k4CD6|sy!GUJH=AH*hU{e+{NHPs1Z
zG}Rj}1#uw2leMK_PU_%NJlGbmD+TUGWq$`s2}B&gs5QJmHR_&spq~J5;KRB##aIlH
zT1YD<qT#@MO)*%TsY@%xFxIRs1|8cr1q&zP;mpaJVt52E(u;|(BdjjQk%6Ir6gbRH
zgyV=c#Uv1Hlcs6KBsdIOQ%uAWsR`3SZ4_?(fC7{zQwKn)FbWSZ=xcbX=s5(EN}55a
zilOjuR%1;$jKvW%h|8KF$+C_ci-*y8H3u+AQmy`b1UnNmh@nZf+dm-2!7G`Fuf;7O
zzB7q}7<n}h3PZ*M{f)jNlqlfN#JWNp490&q0vPaX=NHfjs5P?&)7IK6pb^(jK1_oF
z8HJ+!XZC<d!mn`@KqJGU>YC1w;k9TL4P2{((`9RE;F8E%8X88hf9rwv0VfIrZ|VLe
zuF&9Y-f9{K4~GM*X=prtjr{<5>qiy*2Lm`#U&BkJtc3=ERiw2x1!&~8wgA)CS`YYr
z4GP|At!@MZQg-WUa3}%(sN|mruFV*L$Lp$K;3ag8C|bsI4UHQ66M>{)07R~>jsrQG
zwKQOi>%|h_>qM)?V)5&T3!JI1(*&ds;WprT{DYq;uvuL{TmZh-83V}5t!o%;mew@_
z!uWOL1JbpBDMGU&6!1SdCA?Y_kj`4)2rYy9cRe%;WQ*60AoxMmI;+NG)+>jjtiwRy
z4*+1-b_SsMy3XK1QhZ%K{8~f?^6+b67|;mtUT?J@10tLN|64mykq8H~YiOkPZigqW
zcRTRgv2~+BK*5pBzw+pQOhCbb?Y~6$1xrA~JEXNVI32s1MnbQ5MIvgw!4dw)s1h-h
zbx?>Uf{e}DMu=EC?EP)5L=Y{ltA|IgvjyTh><4QcVFi#tP_`0zz(hD(yjnXVweK4O
zxtU0UZ{w{gBEd2C8XAa`*3w8+`6UF>g9IX{wMFFr0Yzlg`UwZ~y>24O==H!srlLV_
zDP*vmtZNDj$E2%!OQ!7>*3j^9_Gk@_0B_RQ(%`+(8X6JKnytYUGI6~vfCX!PBkQ3W
z+?IrYqO+<I04eb1Yc&l8qQ?JdbW8#1_I2|E^6l&92ZyG`@v8-**P|#%%dazZfMw{l
z^NmC6k=FS;(1h;qe;F{y_N-faabR^qQLp?$C{jSa@h_cd3gZAyuAK-#TN_`ZzzG=q
zPXkt~1RQ#;KZA={>jDBC9!KL{wJ-orTL+2Yv|yc206<)~FyQcD^Rl)xc+A@19gYb9
zR*p7_0NiOQmera7D_f@>0l&^1arpI72aZ5k7o*__q;(*KBTz`|0x}SduUiB_CSctn
z09N$%lT8A*YS)eeSZ&w(Bn}`Q&7$Q0wiMF;uz3;{@f-L$3G8Lo$z2~SfM6fa5Ud_Z
z5&_N~uc49P)Xyp!*k{A(zBM!gZKhY52}o3|pH?ye)^*IZ!@o5GiR)qoU`=oaXLUUg
zzWs$AbYBPNw00|lB7!w-t(k!R(yG-DmP`h_?zJNb0Ca75j|PF`+C>tWCj|@t2<Gn|
z0wV3yaWxGrAZr>yqe$x_CO`vQ;<fTfATU@*Td{4R|DOd6Fca5zhD7>1+=4rWMu8<}
zU1z{BtQl%hk9H8hS`jjSRR`hm2Nj8H!#6-9ubmPw_@IkxG=Z}k>uI#J{8bHu|C+dV
zQG+Lwveruhk-QdG(co{bivtn{K8;`92v{H1(?I5BT|MH8H&Ol@el(iA7Ii@zfV!3$
zgQ2_lUsDI-<aHwm62Je0Mp{h+;}3EG04CQq0*=<!8V$(F!pFg@HO3Ow;u4UzF62j}
z!MeL{6u=Sy^j{+oV9&aSK^}G89OH=VZ2?DGKgR%6)*37L_fGH`IsCWpU+V`yq=nDM
z;J?3Uv@^#wv~@868tg^?UVGsBfJTjFWkgc&>p&6|k^Y|5kYHDzLmt84f9}a?+xkR$
z$l=i_@LwSU0zyEZ4*)!z_A~SM3;<ui7HD7K&a*BN96^EqxMyU9Lg7(HV4=frH8wFK
v8DoqH;LpTliyT~K)Bj(`Ne=vC<Zy^<a7aY3hbJc(7vQy=N=n97CY=8VLPfky

diff --git a/Doc/TestPlan/TestPlan.tex b/Doc/TestPlan/TestPlan.tex
index 2a7d4dc..017c220 100644
--- a/Doc/TestPlan/TestPlan.tex
+++ b/Doc/TestPlan/TestPlan.tex
@@ -310,7 +310,23 @@ How test will be performed:
 \\
 \end{enumerate}		
 
-\item{GIF speed-id3\\}
+\item{Automated GIF shorten-id3\\}
+Type: Automated Functional.\\
+Initial State: Image reading module driver \\
+Input: GIF; Expected output GIF;\\
+Output: Expected output GIF \\
+	
+How test will be performed: 
+\begin{enumerate}
+\item{Test will load GIF from a know loacation}
+\item{Test will subset the GIF to a known frame set}
+\item{The GIF will then be compared to an expected GIF in a frame-by-frame manner}
+\item{Each frame is to be cast to a bitmap then compared in a pixel-by-pixel manner}
+\item{Pass if 100 percent of all pixels match}
+\end{enumerate}
+
+
+\item{GIF speed-id4\\}
 
 Type: Manual Functional.\\
 Initial State: Program loaded; GIF Loaded.\\
@@ -444,6 +460,23 @@ How test will be performed:
 \\
 \end{enumerate}
 
+\item{Automated modify via adding a frame-id4\\}
+Type: Automated Functional.\\
+Initial State: Image reading module driver \\
+Input: GIF; BMP image;\\
+Output: Inputted GIF \\
+	
+How test will be performed: 
+\begin{enumerate}
+\item{Test will load GIF from a know loacation}
+\item{Test will load the frame being added from a known loaction}
+\item{The frame will be added to a specific spot of the GIF}
+\item{The GIF will then be reset}
+\item{The stored GIF is to be frame by frame compared to the original GIF}
+\item{Each frame is to be cast to a bitmap then compared in a pixel-by-pixel manner}
+\item{Pass if 100 percent of all pixels match}
+\end{enumerate}
+
 %
 %End of Reset Requirement
 \end{enumerate}
@@ -470,7 +503,7 @@ How test will be performed:
 \\
 \end{enumerate}	
 
-\item{Add PNGs-id1\\}
+\item{Add PNGs-id2\\}
 
 Type: Manual Functional.\\
 Initial State: Program loaded\\
@@ -485,14 +518,30 @@ How test will be performed:
 \item{Verify PNG is added after current frame in GIF}
 \item{Verify the the new GIF is exported the same way}
 \end{enumerate}
-\item{JPEG frames to GIF-id2\\}
+\item{JPEG frames to GIF-id3\\}
 This test is identical to id2 with PNG replaced with JPEG
 
-\item{TIFF frames to GIF-id3\\}
+\item{TIFF frames to GIF-id4\\}
 This test is identical to id2 with PNG replaced with TIFF
 
-\item{BMP frames to GIF-id4\\}
+\item{BMP frames to GIF-id5\\}
 This test is identical to id2 with PNG replaced with BMP
+
+\item{AutomatedTesting of BMP frams to GIF-id6}
+Type: Automated Functional.\\
+Initial State: Image reading module driver \\
+Input: GIF; BMP image; Expected output GIF\\
+Output: GIF with BMP input added as a frame \\
+	
+How test will be performed: 
+\begin{enumerate}
+\item{Test will load GIF from a know loacation}
+\item{Test will load the frame being added from a known loaction}
+\item{The frame will be added to a specific spot of the GIF}
+\item{The new GIF is to be compared to expected through breaking each down into frames}
+\item{Cast each frame and pixel-by-pixel compare the output to the expected}
+\item{Pass if 100 percent of all pixels match}
+\end{enumerate}
 %
 %End of Frame Addition Requirement
 \end{enumerate}
@@ -716,10 +765,16 @@ How test will be performed: Click save frames button, select a folder, and verif
 \end{enumerate}
 				
 \section{Unit Testing Plan}
-		
+The unit testing plan, is the devised set of tests code and system modules must undergo regardless of the system integration level. Unit testing allows the project to have white box testing on the individual system components, each unit test can be executed via testing frameworks in C Sharp.
+\\
+\\
+The testing framework being ustilized is the native Visual Studio unit testing framework: Microsoft.VisualStudio.TestTools.UnitTesting.
+
 \subsection{Unit testing of internal functions}
-		
+Unit testing will be done on system methods that return a value, or modify known objects in an expected way. A metric for passing is to be used on all methods with an error tolerance, such as manipulation of a GIF (where slight variations can exist in files that present the same). A method with no expected error tolerance should be implemented as discreetly pass xor fail. All unit test inputs must fall in a known domain where the expected output can be assumed. No stubs will be required for unit testing of functions. Image reading is needed as a driver for any method using GIFs or other image types. Any written unit test must utilize the C Sharp attributes for Unit Testing provided by the framework. This ensures the system does not build the testing package into the consumer version of the software. We plan to have unit testing cover approximately 50 percent of our major methods due to project time constraints.
+
 \subsection{Unit testing of output files}		
+To test the valdity of outputed GIF images the testing system will hold image resources of input frames, input GIFs, as well as the expected GIF outputted. A known GIF should be manipulated then compared to the expected GIF in a frame-by-frame matter. To exclude meta-data issues associated with GIF images, each frame should be cast to a known image format such as a bitmap, then compared pixel-by-pixel. Frames should have a 100 percent pixel match for the expected GIF to pass. A method for casting Frames to bitmaps then comparing the pixcels should be added to the testing package, prior to testing GIF manipulation. Simply verify this function by sending the same image as parameters.
 
 \bibliographystyle{plainnat}
 
-- 
GitLab