From efc6d22dad26818755f99c35b2fc482616486302 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Mon, 28 Jul 2014 10:04:21 +0200 Subject: [PATCH] More files --- Doc/TODO.txt | 73 ++ Doc/Translation MTS 1_3.doc | Bin 0 -> 501760 bytes Doc/Virtualbench.png | Bin 0 -> 66085 bytes Doc/design.txt | 91 ++ Doc/mylog4net.xml | 25 + Doc/sample-sequence-of-calls.txt | 27 + Doc/show-hide-tabs.txt | 11 + Doc/user-admin-password-hash.txt | 4 + TBFSetup/TBFSetup.vdproj | 1444 ++++++++++++++++++++++++++++++ 9 files changed, 1675 insertions(+) create mode 100644 Doc/TODO.txt create mode 100644 Doc/Translation MTS 1_3.doc create mode 100644 Doc/Virtualbench.png create mode 100644 Doc/design.txt create mode 100644 Doc/mylog4net.xml create mode 100644 Doc/sample-sequence-of-calls.txt create mode 100644 Doc/show-hide-tabs.txt create mode 100644 Doc/user-admin-password-hash.txt create mode 100644 TBFSetup/TBFSetup.vdproj diff --git a/Doc/TODO.txt b/Doc/TODO.txt new file mode 100644 index 000000000..9f840af6c --- /dev/null +++ b/Doc/TODO.txt @@ -0,0 +1,73 @@ +Otazky: +------- +- ako pouzit T6 +- co je 'T to Open' pri RV +- na co sluzia VI2P, VI3P a VI4P + + +TODO: +----- +- nefunguje pumpa P3 +- nahlad na cestu v procedure +- purgeStart a purgeEnd --> transitionSteps/Sequences +- horeuvedene pre RegulValve +- volba procedury nie je zablokovana pocas testov +- vsetky Target... v Process tabe +- Hmotnosti: + 1 netarovat, merat okamzitu, + 2 nulovacia procedura na tlacitko manualne, + 3 pri starte sa spytat ci vynulovat vahy +- Preco sa nenacitaju zmeny v Test-e ??? + + +- pouzit oneskorenie na ventily +- skontrolovat doc (freq v Hz) + +Demo version: + +- pouzit progress bary na vyber testu +- vycistit Measurement +- simulacia skonci pri druhom 'start_measurement' +- pri simulacii sa meni mass pri merani end-mass (klapka by mala byt vypnuta!) + +- otvorit Proceduru (v dalsom okne v zamknutom stave) aj ked je okno Procedures zamknute +- pridat seriove cisla do parametrov komponentov +- zapamatavat si sirky stlpcov v PathsDlg, ... (aj inde) +- skontroluj vsetky ListViewEx-y + skorsie spracovanie vysledkov (dolezite aj pre spravnu tvorbu noveho mena) +- preco posledne okno skace +- chyba spracovanie procedure / metrology2 Tol.Abzug, Fehl.Korr -+ +- vsetky mena stlpcov a tabov do Strings.xxx + +Testovanie na stanici: + +- pouzivat skutocne 'rvalves' +- ked vyberiem priamo Q1, Q2, Q3 (poskonceni predchadzajuceho testu), neprepise sa obsah combo boxu +- prislusne EtPulses by mali ist cez RegisterReader komponent + common RegisterReader pre Master +- ako je to s WM0 ... +- na zaciatku zmerat vahu a dovolit vypustit tanky +- updatovat vahu - obrazok = je nespravna kapacita vahy +- spracovanie vysledkov podla excelu: corr. na hustotu vzduchu (zavazie), corr. na hustotu vody v zav. od teploty +- podpora pre zbieranie vysledkov +- logovanie vysledkov do excelu +- zastavit vodu na konci skusky +- Pri nastavovani prietoku nie je nic vidno +- pouzivat skutocne 'rvalves' +- pri vytvarani testov vyberat cesty podla prietoku +- ked sa zada cesta napisanim mena = skontrolovat +- zapamatat si stav ventilu pri prietoku +- nulovanie = nulovanie vahy +- zmenit text: tarovanie -> vypustanie + +- pripravit IDC100: !ReadRegisterOp, Idc100.GetValue-SetValue (na konci), GetState a ukoncenie operacie +- sub-sekvencie pre Q-set a metody +- zobrazit typizovanu schemu + +Neskor: + +- nevidno ci su neulozene zmeny +- upozornenie pri cancel ak su neulozene zmeny +- spravne updatovat tlacitka ked su FixedItems (FixedRows) +- ked odomknem Komponenty tak sa zrusi vyber +- vaha ToString - prve zobrazit capacity +- moznost menenia poradia aj v components +- rozdelit ventily podla ciest? diff --git a/Doc/Translation MTS 1_3.doc b/Doc/Translation MTS 1_3.doc new file mode 100644 index 0000000000000000000000000000000000000000..475d7a3fdea2e5e4d76e2b1823daab4f34f4222a GIT binary patch literal 501760 zcmeF42b@&Z`S%9}H+JkXwn0U)fMSa!7OJA4bgYqKcec2@v+K?-2x@FG#uSqnON`OP zza_D2)EG627`u>2R9uxr&0@o7ECD5Ac)!1M@40hli{c^g`~J_zv+&)WxpVvPJkL4j zInO=w^q)6)<*M7i_G+fn&q0~hGyhq!W@e4l@~`lE-s|4IqC$nB=+DX$+ znzd-wqUgi)?~2}=X7>7BpUhV;=w%pIpZ>J#>lG{3PZsv{+OBZ7d9g4qe)_xp#?fb= z^*3I{tf(8U7yHHwyZgHi#dr87nasa7Dy^5@Et9Ec`Mx_v$NRj$JMJ8<*ZFVdpiE{p zKFae~KP&Thd)E8T?wQPQ*>K-IGnvDAe?Hrf(+)cQ*!y6Q+v($sUEb4Q?Kk~n_h$dCY{Xcp0BHL}s-+8-4pLG7K<6Xl2>%5=N?{$CDKXyOqWh?XAUf<{K&vpMjorB$< zy-&8hz4GerZ}&a>PjZar$1cC0`z6z|+r=Mej^aM3h`z^Pq|d1Q>Bp{jHs#>6-bbIh z|JHGKU~_vMyCdwl!8r@x(# zW8d5RY~T0v*Y4Nq*!l10ecpNf|JHk}S5N2N({g*hU-WNJ`;%{8Z=FnL@rIeq{*?MY znGN}^8YTSv@4o|MCQir>9-JL8Cg0l9)X-E@SD9SS_lEU6e#sA}WDmD=f)x;)#|HZ|x{3)zbC z`R06Uow+R)6_Z)q$gZNltgRn&8>i*-g(^N7*H+h>WtBEQIJ~XcT9}N`@Sj@M?pO2U{kwrrq z8fx;5l(C9K^M!m11-d!cl55OUrgSIb^O`{+tC*N;smZryr{@~lr02-I4#P=g`&W!; zX=#dICfg+YDc$X4+c9;mt@#G+6&GpMUX@0^qy!(HRL zTPudCfM#3k8g&B4n(M5}$s)Lzfx~mHITlYjcHqRB%@v@PRM5E@vNdBRpK(D$a}D+R zg1y5-x!RUob8WV=t))d;s0wEvgvZ1L26N!8>`!?Q#M7YI4zH>!lO)+L1wwz99{QZhTmF?Eb@eW zh~eP93f%8P9vuto9yhUNQBA(3t+eQbio=>3?{d=`a&6UEVIGgD8#l78 zP#=4ou`Nx;A++RAZmVm-3=6F?x-qf??&WZtP<^&~Iafi|QCFyIY-`L`*EKZAta01L zVq1&KI3Eqlnj2nawiq!zSKo$zOl?(_&(*bb+U(dFbqI>y-{dhojOj9A(TB;?rG48dl z3fC}G!s_hvEfk<>96lR+-2Pf_&bmr&y0NZ68OvuQAKahKrsP@*auR5gO&v2TiMwVe z=4vV?;K^o6t!AyYyLAfmbWpAa7bD% zt=hEwG|jmf`zf+UlT4xWiQ7}KhLpwe6pB@CI161snjI{u7>f&~1h!_e(V9Fy*)FM~ zzG-fgTeYhU9A1~BEn5-&$xdrJ#q6@s);f!0$gfSJ&5+u_Zm9-^8cI<$qyNV@-PBZ%nWV3&>z?Dw zty=lLCpTz@Z4%=!yY5&Gx>4H<%~#ds3)+M-c|vrT<8_Ty zj>g$(J@lWItYsPv>9vO7eGABmKW}2?u~7?DZZ_G*R+Va%WYgO|Om)*jcVbLaRb90l z!C`fUS#8zJ>0{7>iV9h(2a#$D4YECjM2}K|&F;aTO2soNd~rGMROYfr%1(MHm}+fM zZJAa_n~Z!Y6}?drm$dSlrLCNnPST(|S0~C(auJKn4T zBq-VAku*|Ls~nl1k={Z1r`c5LHJ!QgvTFNKog1L`d`nFU+idRIrCgWJA(+AFm$SbPT4B9xrd&q8_?FH%^u2 zXH%o;_Sn|E?e|Qf8mt&^deL|v+I7tmb!;2{95>4!^VW8v&?W9pvC_mQoE?60d>&V$ z8Z_?7(16PhA2LM^IsQ&&O=|dPiTSG~BkBsKK^ynp#?u-qY8RDFrd`b%`muLC?zx&u zOs7TLPwsgLwI#M)F}W_U06{l>*mwt7+E3XLh1MC1)MJc$88hgYWvg0p*sAG_*mav~ z3p78vS-GjLHNCz$!OuMd)3KPAE7V7wi)lGJ0|W^2EoB9}bTQe{r=1Nejc%&Z1=f}BMdIt4YUq$iApP`I+-N^dk4jurZ*X0> zd($bm-ArxXO>s(KSfsco9$j)4{^yw_Yu7fdZ>ZgElFWSLRP(QtsK)~0$qOw`|^3(X$YO)&+9 z8m&@67+oDdR0a5s=r=ASI#jmM)Iyghc0%-fI4Rb(pGL+-k8aRzu{)fozM*VU=9QnG zt89yU9;y^d-M1latxb)5pe|lZc8KYPQsEQ|G~TfaTKk-&DJ@0Q7oZyx{pi4^WbF|N z6c;8fu5W6t&X#1$vOzkel*C=sEHhRWUkB|+owR92j%sXfYba9F=W&(|#XNyY8=M-c2+!*<|l7FT%E(_01D>kd8qhLl&2JhEjFRvq~h7V$EQ z6ibEd5ynszZx}DdN}sBrRq8{1#{J+k8GO`_lgvfkH^+rE@1aJ7CoCF#|^pR}{=B-&fYt9qFd# zFLjf;tlnlfsIb!2wPUX&FoPi##eMST^vjyEH$(d^G$|OE zEz(C-BU}nnD7tt2Q*t`#TwAdruZoQ35m7muTM@%hX+JbS!!%oxFmblNhQ+9+DqiPr z_E0fF>zkTiTa8J@L9=H3fQ6rTC{`)+Y4U_DkVQxBgxDRLZU;)xU8-)Yk!!=@s*5y> za*eeX8SRlvkZi^wMEcog8`l`M-&l$AHbWySX;&I;Lu5df!kuNcBXg*kUdI>}0kl+4 z)dZ|^S(K?H-l_O`#^(h?AwIK;%*ZZ#$Y!d{e(E^$g4t^w$0)>S)ZKow+=l|^uu;F=I9~Vr zEMG(S%3j+nj#g)`CR#^#r?TuSbSCL77l3uRkj$}{v zzSnS%w5`sew1@tzHHPyWk?fNt6br@DCN*Q=yiv$qK_dJj?@ASE9JGjr#-gUD=`Na~ zvXZ?=4!@?Qjorm{VwRfOv>s|&noQhjNNKQD9<*6w2l>>1YpdFVrm3lBl$vm(DX)xf zSpQTpI>#Ec8q$U}9fvYa)}L#vApV@Rjp!E{gNtey+eX3y)JoRQM=};+nn)w#QHZ!* zW=9A2@!tTRoSF5A{p-Ev>M-MFf02B&B`{_*B& z6q{3uqXf3irscHl?2x$qG`Uw?&5&uP+T&PDZd13|IHJ#vUXd zvttj@h%%LfZfB${ZS`BoGbZhL$Fg`#t!#9ZbDKb&kZXuX;No3$I>YjAygA4b zoLW9RG~cqkvfhL|OgPgNO{&{!Mwn(rqvRuVbYH6?t1EKOrIw3Mof6t&G;-S$I+yK5 zk{m`ijXE|;`AGU9GzQuj_?cy^zVU6f`B{`4R<0OTMWZHe_eTw3_4G!}q(+JwboeBi z2GN2pHM(g>H<GPXwY|hWZW0`J~*)Z9o@pvhh z^qJkH3ABS1{B2<%fPU0Kg~j5VW{PLzY;h-5a&Xz!98H}paZJuwc6=y7!a|l?g;SvU zYT_qmsGB=>VUd_XmmZ9{P&Juof+ZKw`5M_9E>106j$v)5KJIQrP4$Yg4D2zU&1&hD z(*YwKN~aJ}_jj1!jY2e>Zq#dz<715Zn8lnzyhhY`w`oVz0s27W&GFDa4KxkB84sGy zJEGz#NY`w=l8G33H6zcQOwPCijh#g;SPs=~nMpSoO_A%Sy_u{=Qw+)@N+2YSt9!&K=e0@SVnP?aHP{FI1_K#$ga%#Q8%aax~7|?d)?SZ-^{uYTd-t9HUOk?Huh%{3MNED zz@$uZEE5%yx^XH(Rkxv`&IOs%N|(q|3A5qBIEtxJ#mEPAHVsONEG{mY2OoSe9?`@K z%ZmMkX5whIdD=3Cnzks|VzcWGHFlzcMUtBQMf^fJD2FnFR9R~l#wm9!G@)b@Ip064 zsB&C3sm{{PrYs+J*K(S`xO+5GK*!I-XXr54Mb=4=SxN_)%bGxkyb32l!6TKZvC-zL zWe=_x-jto$)W+SWCYs4uHg=8>WP!9E%oz@6L!7G_ol|l}+(OWB1n)>R%u<7Kt=WEr zu+5NtRPtq^sU)qaH)zt9DA&f>pnL^~jE~XPsOprfK_S%Ob#1P?HFX3^Ny^gX7TC)O zPN$8iKon~rwV_bfMWy?vZhcLD2DL45g0T&G!ufHxHXCK24OO$o3iT2-*UbV)3rc>sPd8t`ds%(sbtEx(SV6(6X z$2*c-7Tu&S8=`_uB(>+#!nMv=UZBiy>{3r9x~W8E*o{5OiA~wkS>h2Wa%P;pi|;oj zm}@0Y6T6bM|428qzrdNIP3laKRewS`JJPHybM?P}=4!fjN`|k)%gZ!1^(Gn#GbyrK^t9ZlZP* z!wdKz^0eq+#@l9TsMG!J_|0YzTLn0Qxle~X2`T^P&Rf( zYU|10G)G>VGqQorB*P{;q0-_biES#d8F_%H23L&{SIjKVO;c7aV{S@Ytf^6!VU%@a z!l0$mkSITbd=nxH^Z`snzAPJpj%6x0f<3Eli0i|sgQ*}{G}u*GME0*Lo^nTO{7^q4 zj?s0>j^k@pol|D(1qM!KW^pCU;b^c`)~bOriU9+)=sU&e)Ckqbazd;vgRPht<>#hi zvN~@(n^`g~U%QA*1k!~$@97$wkHWUo*;BqjRU(Co>cwO^nnXUf=8mho5?40dPj&3b zoTH4yBIXx>PMY%&Ml4Z?&lgV{#4b zCmQ`PHj#JPR996Rq^4Y&KsVK7JZu;ZqvUb&GR0YHZPYc;06=Emo20pVz*xcx3AF2CHuD{wS-EP`Ns8R|@_d=y|N2YM%vDelx6$9W! z8!BUQa>_~4y_&@YUkU%GnlE}!iH-uYQPQt&QmhHNAZ)}PuH^vcrYh3f60OH4=JdPW zp9$&qyuSi>xTUVf?2_j&QoHQjoy-p4$%|?#MItXvIB7};K8e;+)Y#$=N!2-qaN?%v zE>)=O(V}2kAGGH6TB(W*?n*}aXGXr7b<2Y{s`A%875vP9-)rvIo)mD#nDuE8Udz@si22WByRYb zz>>l(b+(_W8Vn<0JJU3!b(m9%n5u9c)U@ro-+|g2kx{(dPqmU61m_75J!(KNk8!_} z$!iIRHM?eSYFsuh=e9?^M>R=PXO@n8(T6ns2zs08eV8yBI~u{TJ5P6H`&VU4<(`UJ z5oxuwS>C10m*i0pA4kC5D^vb33g%3D_vRaQlElS>zAw#wEoB_?Ha4TvgCBwvqP6!imA zxd*l%P_|QaV^s=oQm|>y(AF~z^g15F>?A1%lCi3Vm@?QwWo@a?@}HEUDznop**WTJ zmxmc5r!uJGs1_xwmpc}XI@!nb6atl1>A}l}-D;!gO4JKUP7ot(Qa*<1o{{*# zb15eDr`9Buc2DQa9`#g34 zW?Bbjgyw1>|)D+*ValhUqO(vg3_h-m7 z4Ab;4jl)Q8mwGb!v;k;LIVpqFC=$t=Qqe1N+q*A&?nNs*AUP1u%Dz^9n*AyHyvFQ; z>S{SH`GE4iXaAy7_|!JBcBwJ$sPCC}Q|XuW6+8bguU1s>0(QL~-gW)w(?S+SU8hU!YDg?T1u|n)S`|z@{vj0z_d{(V_Z{ ztKr6_3>s9{4yqV!9vI}&<2Xryb)>h}PAKV-p>fr z=PE1l+`0j&-h&E;je6KV+UFd))c-2VRvNRVp0dl)%ev8}OD0MfKY^%FvwdnUb$~&s zK?2=#Vlejl(yqEZ|FX3IVmAGxX|;Kj@UsRvN_#h@vXLi{C>W{C=k%_-e;hG7Na_-L zz5=d9jcD~>l6uuXuxM?WhZs94HNL5~g_7UtDafveO+7dnKfkC08M~yYPgKvaCAF(g z!#$-tu`*{_SD+dspWQqbpT0*tE2k2i$ZQ%R10!=@IU!VUj~P3{-j8m2HKpUFS{9{B zF^UGI1o@0Il~hC6Uy{3>-oJhPRktyzQBuc>o`YSvgPD4BX8fEi7HSV3J1Emlk>wLC zH;K16mXZ%mMbJ(9q#9nP4HA3KbdyUv9BQA2G_AeVIod^Y|J@E9qhtDCuSoX1UzA?J%)%-aHY8yCm_pmU75uq|n6Akm!M+ zsybq%jpk{$WJg>}uEEp+@%HrRjK}GL97X3_l2{#dQin<>ohrs`e-vRU z6TeN)OU=_6Ej$gt#oC|##r@Nsy#F3*+ut@!BefJRBY@%!CAUxZlPbJog|Pe2{5zw3MDTpjIq()p>S4)m3ND(eQCYl(%d~ zfzX|DPOFFqADC)Gmt|T}<%hIm(N!kXnZ!%nyv)huD0Vu!y#W5k!ysk^funTW)FUEg znjxkWR%$w#ri8r*QMie_%~(iW#>|*)T@4WuGr`WWQ5$1WJXT$3Gfkm`?T}X4z&|OG zaeK<-f(+vJYD_jt451;zBi2nOu|PLP-FrC$74x_V7P3dRRB6tD=$RHiEfm$5O#080 z3Xub4nMQofNJIJzxHBV7N&@BPSd!U!7*0<$F&5Nmv=5O9dUBQV<=Ka5;`48crhiD? z@VE(x>nY1D`25D8DkU{Xx=W}ih4ne#veC)(MWq@tNmtqS>_%|E2}zg&5NR6EL$Ol3 zqp~!yPgz2GPh$y)5qwiSH>v}8A5~ZJ(v>+^1@^P)%CYlNjwI?_)3Ov}U#XKV#E;G@ zLWVG%_ZDT;nS8+^U-I@ZPl95$jr8Abu zTCO+K=|p~%pctibik^RrXO5y1+F&AF2jdO(0IfRp(R3UpFCf1CQ)X#KCbs37FFH~t zEThD5#YYH{MOAy`?CDV^S;A2Qfx2EMvO)@iM$f0sjCx|-o~XLXr7WY)XKSkllXOKx zC7o~;JO5Ua#L`zFm!Y4iZi&)k6fjYP4iA{lU5;8wNoJGDkR}0;&OQ0e$V#c19#4SQ z?YTz|xD+7O*q3=^-ag<-o&l~#XVk;lRB>YIGs@a}1pU;ch*GXPomkvqV1%aZ6m`*2 zkeOyfv{MtGWLNTb%8o2Oa2$tTcg;3Uo6*GcOYx;BN^3Wj$Yq%>$`vaND!)RTGfs6R zpBud@WCfGhVs(?uv&-4;holpb6}_;S*Kw zki!@SW2t;~s1_dcj-^8r-P%K@d+B}hYzV3r2viTvno(iT}O|@q&m+uCg0hgSfPkPubd}I?wg7G zaL+hnyA!D$Kjxqg0Uzq-#>oe>OuoG-P37w-Cdpz_7w9$=s?zI4xd>%tfR(znBgwDY zQ;nLOot5Tu6D`?Wl$RctWfQIQ7TZyryNQugCS;elwkfdfu&>{FQQ!KbwE0rHx*20Z!&Q7bB z8ufF}k}a=UBVDP8Iwg6@L3NugTju|JzVh;VV5nRAEdBFN-p-D0nK7r-7zTHksB_n6 zGi<(U*W6hRb>mSYXJ%XiJ>lp{4Q&)XY>cO)I5QAaUCj}`@QD4$|2rAAQ7b8`21xPd ziK0?lRbgh+VAsc;GYG!G`A}M&^Jcp_Kl8ZW|NT?@+?3eTsYMSEQtp}mFHUle+X&|N z#jiWxLEN(*E3Jetk^yV-RaF9``pCx3(lu(2{U13LenS8B~!} zQnGRLnyDq;OPBc{N~K~#R2W7MXIBfSsRu_;URjqms#BieE~{b9cnuTBpussS&%8K# z4BlK~Y*aki#AG-;_rheDnt(TI)v3oHKZ(qKN)eUvX+$*7Wm&;eCz*#!XxF4R8N)ok zC7;OdqQaLHy>!8%z{TY+y_9XNd10XG2jh$yU7kDC41e_uLz3~{*2tD-qQ7iqv_y8; zbqc^pe%7|~tL)i{YT}&d^l6yYCQZ;HQkNAnLyBy)G@kXFPKSL`LxE+@*l0c<$-p2j zIr2)BwUXXGUX5i#RUzt;uNos>OP(eoTNG^X#oUEte0^8-+uB-+^o0~dj?B=+ z!Ep%0SIyIItcTu5nt6|u+FaL=9ju`m=1@FlXnq9E4^hpG0j1!kY$F3nW;ULW_PG!EA68tK6aL^D*4yM z5`7lUGSSNW((w;9>o>BdW;W1TI-^Q+zR~$?nH|qk%@NVcnQAX}tf5&Yma}fOjoy!l z*U}smn$2Q5$I(91vn&+M3=NuPqQ)F|kvUVXW%pKONlRvFJjaFZMUhX_Gh%2Sje@xk zL-<=AU!ATxI&w5eLv%eynoo6gnn5FL=ESJubv82?jxftxnHi(|`8Kx9+F2p2TDt$5 zg~DoC%~3TYN0#pz**7zYy$E=q3s7~Z; z@qlr7r)$+pbOv`v41p0qo}HPND~w~qWx*Tmenj-K`kSLw{btPscSp2MtE-QCb@AiL zN90XxGU_$O&*wK4bk1CLgSITLJK~g_CZgCsJ9v*hcin66eX@;rWDh(jjv(%z)eVV;=vc&lM?22TV^X>pq$1cIonPEP|0l(CrN{-~FLHEha9n<_y#WO9Ih+ z0SNu`f?}&w`x3MK4z+Uf8uPBE)lsA`uRF`n|JtrobbI6ZNyaGfKhVt777Yq=+w0Oz z6ZG#Njo``v`g36u%p_*^&zGy?5`R^PxohSLQ|?DHJ6OdK^92ngCKZ_;j89mNSp@AQ zifS5;SB%{(Pri;Pnntn5`M&IIlVwA;6%5C+|56LGtP4{blZ_hw@|iN=p5{W*7^X&R z>AUl6q8%$trREX5E1w(5&WOZLN0c6+GBXX~ELj>Gmf5R18uId8twx(C-~7Pmoo7)h z&7H)W$t2W7K^kKpp+^@qQ2>uFM57kb1NwU2hesS5aRkxK5yP3=MG0dBrI|!ihmF%I zlin%SPWf3M^g%S(Q2L-$9HI=2)QOcwbIhjEm+Pd~ z*Au(kpy-P^s@0c^A2n3mVo<8$r|i-ZGBJyEUJa);p)`LCkL1MPj>N)fUcabTXSGA4 zM>@$F(G#BXB3xV&Wl_;>*2L6IDwD4@9d_m&Y+{CMJ@jRqZ!{qgH?OfdJ7E0SG1&vj z9f?=b!*W~-(^Q!WIhmk3nw*;BCO3F5y*ZLVS`Dk&a&(mHX{8_`i>WpwOX(4yI6-!3 zo?IoxNhlZ;i1;?d&vbHQxso^`maR* z*j_%f%gFb94uG9tZ`cQhz)%#S1fN2m zH8Yv7!p^V<90*6ku`mrPp$_Vy0h*v0PJ`3oJMdjNAFhWR;AXf5{s6P#L3k3Lf#+ZW zEP3be&*37LG$oX6x)+VOQUU3%9GMm!~&Kj--W| zt?Z_HH+1J-!w&yyCI`*6(sq+hpGHg9+qCxfp;M9r>1_4BeCgNqJ+IPUx=VBE{ZYEW zyu5O6(rbm+|IhBgW|_=}RqydF%o|_Bx3X^EYm~mZHd9ljvfJ=z-?clRNQGU$rb>k& z)7#p&?79JD+xphozlU}RK>o0hgci{%Av=c69GkZ;|UDA;0y;rY33%=T$ zOYDxXEEt(t{h}4K*Im5DCOez{Hphc3$Vb+PYNG}E-qsa5r{2Z3N;ziGI(rc~K>n~VVGFPgw zJi#G57nc7QB_%2#|9kc4wx~#z3Rm*V>My;o1l8ZSz^yRVY!d%EY~|jh*IK35PWtDu zrl5bOS7-Z2iOvw!J*5GWRR3@9GwpZ@Fi z3HrO~FTIZg#a~YX#b5o?|N5Z6qyM+@_C|Csfa31{=|5tPVE=CRZ^v0Q#&RBLjKx3w zUk&;@+P@uBy8_*R0~%ZNPyf>y*9h?+m;Rp}OT7`@Zvu^}`ltWqL@$E=F8bRs^!w5M z0nj+QfBN4Q^mp|C>AZ<&(O!8I{^>uCvkvy}V*fTz=4I~S8}O!=`o9zOceH=yNJ;zG zLE66sAHm1)2`q;-*UDtpfpuY1*b26REDVC(U@}aBW8pZch8ma-r@&131zZ8Qzyt6g z%zTQfthdt{0Odv>);N!6aEMf!{6X# zSf6x@zAyxa!U^zAI2+D^>)_Y$I6MJ!VII5;ufPZJFIWQGtjpiUOFH!Ld49z&^+s<~ z3(QCQc&=G)w&?sS+9<i+3JFX->+|7~pM`{;f-C`RL-{&njI`*$1vPsikD zqrGBs{^{SRZ_wXOe;b4S6T1He6pQsw|Eq%jj{e`q-v5T~?}K9S{^@_<2EqQ_?B9;L ztU&j5h@xri#XtRD2>LtPe|oGb>_0uWdKlVkY}G&gH`plX@20;U zOFtIfXMo1i{nP*EpueO4x49E%qx%m*ITZfsKWgJ(|8Dkgb7n3__iI48GyduSTF~Fo z{%x+*&FKDHP|lQp`k%E)uzxrEw>fh6q5DIiTsi;r-)hsKznlIxH}Yw8|0^g*(m(z0 z`7h}oPvMnG&lJ|(vP}Hr|NKujC-xn5Uym#b<;MD_egn#;fee|a5x+R zqhT6UK_1#*I-C!B>f#c36ds3vz`O8I$dHk}7OW3_VH?;Pb_ZqakApnaKrNgO7sI9S zGq?lh!k^&J@HcoH-hqS2_MHH&a6Wt=u7um*8F&_!Ebds`{zUr&?fm86-8bE>S6V8r zD(9+8Sn#8cOE~TFpX6IOZaaEd>Y41#4|%Vf=c=_%^0amGog9-!kK-FV*5*4oZW~+r z{tzuKJ&~RMLXgsTeZ*U8m(kYx3X}r%igW- z(z+6)_0;r@Sjjnn%T`No|3zLq&HwyzuzxrI-^bc@Bbv8@?At~AFCy`0uIr@#sapmA z@8HR%WU9LL(9Z((aQU?D2`TskD{*L}X-CkRd zww2mzF4}*lPyZqxI{E*jwh8v{=Ks^}^WD&1?Q{S1e>>>!X8*m@{jqAaSAWbu{m;t= z`**YdbpQJjv{(PzKmE7s7xZ`2KOJw;Q}l|r_^1EupueO4Psi8(f%b~8`KSMJ+Xnl0 zvw!LRE-0q@Jy0ywKm9)n`a9ac^!@=TettXr7W~uyr`rYlce8)#eFtdVq!+U&tOow+ zzuWdfe>eR#R`wDsgxBE>$i(GfbN(I(2gA`&fb-#6cnUs*CD2Dt-@^fLBIMu{_&NLn z9)QL04_F54@U-@xa3bWO2ZuUylD@*M9lS?H8GUKWP6!`?>ZXXSGSKz7l)W+Fj3J zG-3U9cCJV-NIt!07wVd1giY_dj>1*c{wTGM-gRAP^ss5Eby^QRy_(>A(68L4P;>rT1?@_4&U*^|^og|1#+B=>MhnQcxRiGx#d_r~d&v2K#rjf9btB zsO>%#)OPnz|L24Lj`lCTr-AxwmxKCi{^?&F5bWR0{-yU7pg#KBpgy{P`meuJ(BDme z>HQ8UF0(H2ll8zq{cjBVJNkd=y*?-&Hx(3*^H2XncMkUNX8+QA8Yl+)9XJpC)4wC= z?`Z$h`@5jn`^9hx_^1CFy9E1pvw!J*DQL{)8n_nx(|?OygZ^&%OYiI8*YF#-9{kh) z?x4S;|CinxXVn<%Q!p3&(|^LiVE=CRFTFLct}*pD;Vtk_|9=Mk9qnIwE001s6wBdL z@K68m4+{40X8+P#c{3H{&GZG$r0<{pJMI?rchg__Qqq2X*bugWEg=g#!v1go90lVc z57lrow8FXY9r!t10r$Zl;0<^S7Q=h+K70(Hz^2UBJpvAeCioUy0guAt@HcoFK7g+< zv-5_q5oBRo*d6wV17IW^29u!%YGD?f1{cB=a5dZpx5Kgz%)iCUI{0g8pJ(25Jk;KC zU&n3j9oJuZy|^^>>(Y*8nN;?bnZF^K<3aN`be-ctOG}wz>kr+!n+&hL4yNWxvdQ!= z$rMYLc0Y^5vb{Dct(#=0X=%^7YbLWTSy%f#K=v-(rFlQt7W}jSKL-1EtpBC=cCbD4 zhaJE_{ZHII_SY~IPg#ZPlEoA_Ak9vud7aPfg<>)|D}V2{kz$}^j14g zZMe(f7vP`%d+rhRchg^btKF_P`)4E+C_|L>)szgzpSkF;JJ6k}IxeK70+e(67BpJ4w^_TNWZ z?+F@D(KyN!I2!!Yf1|Gl{oVAJ*2jRx&NOEBQ@9BH(*M?=zoY+`))#}uNw0xx!A1Mb zf9uC-{?{Y+4fgM3|GlO6b)d2FyWn@=pZ;$I{oU-pw{*V~?uG|oHq3{1cn8Mu&APMT zGPnY6f}7zFFdOE=*pMoBx;I&%$%C0GqB4gPyZd@*2vz6ojB?*y*GeuU@zDkrkd-B zf0YGwdw!GNWR+giCfu;{reclwN~)@`k+(%g&==^Ukl#Wa_Iv4Ej6j zFTMAHgJ1-VgsJI!+_U6mpQJZgrPogS|A^MQ>-Rr>x$R$i9}4Q{oeHOcfBNroV9?*K z{U^OohjZal_!;=8|6@UaNB=Lq72EkaTn@hg|MagsDA>Q7{Y!7f^%T>)A07bz^k1tGeFa_x|Mb87;8n2yiZ65jPkJkMuekkxU^^w*REJ#^^LYcPJbN{^@_#kYN9A_Ak9PE_*l}0i(e`{kIz$ z^mo%=dTUHxeT5_gr`Z7Q@@%pZ@cM{*L}%djA8KLT_?t`+$G?H;xSU?`Hqfdks(?_Saww@K66W z4-NXe=`X#v1m)lF1UrL&`d=ILcl7_#dl%4i7YD;3;Gh0O$VChJUzuKOt=^EyDW$Y| z!Pc2lN@+K*X0|G!GSgdn4*@-IGX;(Y|MdTB(BIMirS~zQ=d9}BB=ArFnWKXJyVd{F zyB_p>-KlUI_^1CShX?)L^q1bJgPyCr0bC%u0Q_rilP2mI6j+|j}Q-Rxg_KLk(0 zpW$inPyc>ng8pv$OYiycBK#dXz(4)(5BfW{|D^XK_ypG5oM*tnKmCt6GT6VH{Y&q@ zFaQpMgTX)jmjwMC?O%Ey0z+UZ3%v%8)L4Vi-_JVJ~P#6wl;aE5xs-PB5f+Cy&%RX4VOkV`Y z*TB8h@lwYJ&&+*hZl_;!=FXY>JC@xrXYMaM{m<}|d`H`E13F4`b8VKI(d)=lwn#om z*6#ir-O{U;X7JL|viZHVAU$u{X03OX*4CS{Ps?UCE1&;M9~~rnm-f`QQJS-V@+>sDeEBr~ebHpnv8|o&PPptDzZY!KvV%{`qn4_W$M9UwWSg z-+>>(1>m3ly~YRq-P(WB`$zB_xDWmS{^@^3(BHBDC%x~7`S5q>0RQygZ$hwtH~W{~ zi(mz8O#f{Y@K68eg8q*7FTFQ~!Eh9e1^@Ivd1A1CH~W{~<3Mqq8E^{tr~kT>g8pv$ zOK-*YX2Gd&8u+LG^+A6}|1Z52*HujSd+>emPyZ2<-R-}-xZcVx^FRJ4y?+3|gj?WN z@K66&S3&?BC7)rS~#en=FGZU`y~% z|967^j{QIBt(={$VH?PTfBK()Y_NYf`J}r+@$B-1YCSUSHW|{@4G~ zdob(=LtrTQr~jPe-1X0Vsq=rN_b?a>$HH;opZ+HtAM|(g|I%CexhKFk;Y9FH|7Agc z$M&Dm8_kuMeKNFossF_%xZD5A*7e=3=YRb#y^HW&xE8Jh|LlM8H{JFBa@YUT``2(U zyZ|qPfBMf0`aAl6>HQM?11fl~<}2Wz{&gn?`*&;qN$)jbJ2(Ko0siUVhf@yo|GCWn zC%yG7-a&9M90LC7e^t=m(f>`%ZJN9Nf4TLS-Zz7uxqk)p+`WJLZ%`TZcWeLK zc@{d*eGzEB1^@KFIq2`${_>Af*%4xK$gbLjY||5`vlPZXmz0Z(freYQcbXbH~W{~^`JTN&V;kTKmFei z`a9ac=0TL^KY?Gt|G=$qAKVX5!9w^Oya`L;W9ZBGOKk~T!;Y{U42F?#C>#Z2p&lAx z7JL`J2N%L6@H6-|+yQsNqwp7a7G8n3;B8nAeYc^10$an5uoD~xIhY0~K?8gTE``hB zF1R0_fT!R^Sn_U1m;VdrFHA3dbjiE-CI4@`%DlXUC8gOO-&<`~GO1%`t4(V4Ra%?Y zPTprhX6VjqH6FHR@8;S}^MjcpuaY?*^{GD6!qT4RZ1|0CmhLd+Kc%Ic*!^pc$)P*1 z&Ax9NTbl7vOH2DJn}>28yQP^!GC7m3>;$uzxrEm)?7T`f3fJzM6mf@7)mechg^b z7eM{<^FjS{|MZ_9^mp|C();_Mn9QZ1n2dk=H#P?Qce8)#eHkbYcPA(g=b!#-7J~k6 z`b+QMfnu-EfMT!y>3?m|-_id|@8>}A_QjxhyMOu*X$to5X8+RrAD}Uo4HzHM7>j@U z|263EX#diCBha|o0MNLafBMgC4)*V6|I&MB&{%3cXbjaq{Wm!|=1IfBKJU3HI-1|I&LdC^zOccpd!H|E-|Eqy02M011wVqT;1;+amMre*^nc-VPtJaB;gfeRym{fZmtAn)8K*QXIYs|6 zne=z?rjx9aoG2|U`=(qiNIre@kV{foReG1?Zl(8}{viFGyjq^@D|5uK)V{jU1ADD- zM(GGirk1u$j+^XH>z4Me{gvMJoat4{5li2Won`NDfV9t`S1*{FN&Os_dY$R{O?s_W zdc7Ha(5m+`y)qkLV|@Ck>R#-xrb;<>4UhI+yYtSkq}^I|ZZY_OH~-%&o5`#OviDs< z_C7U}`srEnvQJW5tlCQ_{rj~B{oVAJ-h)6s{&lJ`-A?D z^}qD~Ca7LN3(khAnbc3ul9zpw+G5pSI_ZB*Td;pO`X9WG-^q1b>0QJo$z(nv*|0ja}j{aYIcaF#Sr+=P^PniGH zW&Teae^cyj1}OICpZ>jO2L0Xqzx197inm?>in;oy{}n-hNB=Lqe+-JV-wcYi`=|eY zvx5D**}wF@6*Ru`5d0DR)Bm}kzoY$2cWM3%yaca82P}fu;0<^aK89tm=C*uSB&-8l z!Pc-F42C`6>##2z0z+XK908+YB20!UP!A1oDx41Af}g|Xa5vlo_rm?~0L+0u!ox5Z z=D~b;2A+kNU?IE$e}@iO3~$5x@FDyQK7r-XYr9Nlby)K566Stj28bsX-amigy9<9i zf8ml}|Mu6vTFGCfk+*x-B!e;;xzoF3*8x z5x-MvFD@M+88I|toymUE<9`QB`-egL{~e^gfA)X!slord`Tw-7zmE2@cmMQX_q3qD zoBr0n%eSwEUzBh6Pyg$K{*Lv(^j2N2dVF_KJ?@|WBTf(Y?`HqD-KI9%5Kx=VKmA_~ z`a9acZKJDwJ_*!5_fP-RzvXWKXMU-_|JU}%)E7Gq)EDzl|IN<``n&mm+xJ$#`}d%J zw}1NI74&!X|2EE|7|TPT7>j@Uk2^EiznlHrn402ge*wkQ{L}xPpueO2+xV$sr>}xy zr~c`G{#n8P-Rxg_D^{*J`3ImlxqtfiKRf8}roSB*(U{0;+eKp{{^>s_=;OB$KJaxI4kO`EI2w+DMreX& zm<6Z8d2l{_53Ypk;MZ^u%z;0`!|*5gGrRyV!9rLBufbdJHv9uVf#tC6_M8(8fN#Q7 zXogmp4&Q?xzzuK<+y)Dv9aig~$*ciift_Jj7!6}#JTyZKTmTosMQ{_`0uRIE@Fcto z??Gk<#>U_6Xz%F$*SwDQdGSZ>T508emBxK{-S3dnm~JwPn;tSQt=s*$b9%(LG;*wU z$62kVbAOP|{@MSsbAtW5*}t`G+4KmIP5Y<+#orG4yXh~z<-_H_3n2gPpZs{GS1+CTjd{BE#+H~Y6S6va^dI&8VE=CRZ^ySZw)H4zY|B6WUkmy>+P@vk)Hr4@#xYj| z|MWlW2f_Z`>|bNo(tLHOfUm&1us-yKO<+^l0=9y!VK3MlhQmlW6pn-Ap&44B2;YVC z;eX&7xEAh&yWmlH9G-x=Fc1C=^WiV>EIbF#!wc{tybJ$?70_!(&KuT(wP7>Z9KHs- z!(cc7z5x?p5=@3hD8Pkq5nK#cz?E+z$~nEs_-Y3*kG|JLK@b+fcADkA zei-cE&Hk;O%f`0^*|>lD-xKtAtpBY~mp>l?^5_2PKk0&C|8Dkg>u=TFCxhy4|MY)9 z=r z{+C@C?BC7)ZOl~h(utrrsek(K{nMbooBlQ~u9)~wK{0Xv^q(K}cl7^u3`FA}H-g4L z{L{bjqG11S_HW0#G}iSe&{&s$`mcF$(BDmeJGQBD&3}Q$HT~27+MvIq|F`4V8pG}j z8-RcM58>OIUBCb5%RT?2bYDN#eMA0k0b9ZjFaUOf1K}W;2$Nw7R6`A%2H%1+-~#v& z+z2fj`3fmUdP zv*2v_4ty8Rho8Z3;0Cx6o`sL$-|z`+y));rxTAe>*I$b}<}RMQxMR-ZIo<#I-HpGy z#*pDB$+hUeAGt`$EDdGf;GHbhI$ggV;GpKJ($e&|1EfDl_VGnCJxb@4&Kx;J_AcF} z`HmpX{j>kS2K#sP|JKH3-;+T0?VtWLFAe_Rt^H^HxqSKQAYbmE{+s+P=2G5!imyxq#aH~(|NfxAqyM+@ zG{w@2pjeuJ`XBR)VE=CRZ)2y5o1O=XoBF5!lAyn%{Y!5fC%>N8ij(`N|4*(6_U~r@ z>2Z-|Xs>Y*|MVYtWzgSE|MWQ6!Hk6+0{-d$M9|;S|7-m7pjh`I{2dM>U_4BKS~v;n zVLHr!GvRDF2QGx4!qspsTn9J9E$~~o6YhcsU^YAfPr+Px9@^nGcmv*qx8WbK1eU@I z=(P*a`omXXO;{J!hraMN*aG^&cCbC{47bRP=CK>GV<|M_1A|L^Ait-Z_E>p-^dpZ>jm74&!0-}-j>^|L^J-9P=W z2>LtL|F#}i9exd{4);(0{jLi3?`HqD&8GI+9iaA_fBHWc^mnv>+dfy@{7F#T+&}$K z{-0p~ZuW2cV(N#z4(f;br~kTF2mRgjxBc$7(0wte|Lvdt*9ZL_{lAU3DAtl87NS^- zfBKKOCfL85{oB}@;%e)G;%ffs|7y_R(f(~5RWa0UK`~VS^gsRDVE=CRZ)4_)mwy8k zFZWOX&94jkyXkMoM>IAv9yB)MpZ<3R{T=dAR2p7S{@GH0qZiU<7x9}J|4)4Ny@ILg~m2q0w9(I5o;Sd-C<6$C9f_i9xGvF*Z z8!mt!!DVnc`~rRnzk=)G2Dk(6g5Sa8@Ekl3?eGe`2JgZ9u+c!~u7^$GU^oPZ!EiVd zj)F-r1&)SO;WW4i7!O{e=Yc=_*W!-n7eCK4!gJ={yJYSXJtVy3jwN?IzvOxSS&}LH zNyczB3|tzmee)2WTTMoT)8n$GrCKL>RyaLIoE}k5_Wv1U#L02e8xEJfOLuAhQ;_EV z`Tuu<{X6=9YvZ!-+d%g1pZ@3nCis6h|8M=deEB~?zT7|k`(GdQchle2-Kw|ygX(Sn z^q&*-cl7_Zou)S01W+5zKmAX*A=tm0{o6LV+T&+}+T;G|zbxqQX#ckVrM}nCL47a( z^uPGVVE=CRZ~NL;p!=1eKDU4R556hr@20EGv;pud~`Hby=W-46oA%Kg*-s-VB4|F>f!L(qLF zXpF=^{SUm=-TpIc?6O{_^Uq2yTdS23s@@wd*q!ZH^zLQ$vQmFHUdqaw?9*$rrK|G{ zY1RwqyBdMvku*7fyP0nrth&A`q$kS z?BA{aPmg=wg!VUkssDo9l53}GjI33P|@4}66Gu#66;7{;xSPq{;W;gOlU`<#HHh_&_W7r9H zhJ#@U423Gl!*nBt!`x zow7pWG?3ELxsOEu7I!>w#}fX_nI^dxKbd}9DVw8|wUOB~l@)Ss{^-;ede?3K$GvQ1 zKS=gu@=KDVr87NB=aAlTr0m`5KA+dpeX35`{&?a4FTOqae>eZ1w)6j>z3hCd)n0$S z(0`ZT2L0XiPy6+O_+9yR|MZ^|^mnZPZ9Tp_x(^1`=l|c5>1m!*Tiu0cQ)4$&zg8pv$ zE6;6p*c5hv9l<~S?+*Gq`hV#!?fb{tAHm;hsD+DQHq3#?;7OPZOQG*z;>9o&Cct^{ z8@K`f4(snh&L#|juh+s%vl@jLsMj~})F@4ItZ z^zY_n(LZJ!?EI5tVVVriS4lgZD_M_a<(mFLY ztCiMCGCtF}ouzeq&N@9v_C5fldksi;|LlLv{lWjc`G4tM2eS1CLALIn{vAPoNB=Lq z9|HOJr$GMQKmBJu5bWR0{-yUkP@TR3^|tDC|MXvfcF^BVf9bsus2w*ECV_wYUmNsy z^#9U(GN}E2J*fTepZ*6t80_E8{-yVgpgvn)`eo{~`KSN|iSObvmd z;Gh041pOWDUwRJ%<;snN@!+5SO^*lrce8)#Jpq&>nTKldPyaqo1pVFgm)Pz`6p|G+hH6WjsJ?c6^9$@#O}yZL`- z`~05%U*A6eO8%#E@qcsR-@3`g|9I^=-7IbV`gz?f)iVOga{x)kfBBOG%Iz=Z^p|D& zCtG~R+|kK10_pD=KS=g2-9La2LHhgW{~rtX@96)f_Y#oJZ-{+v1peuN!c)QjyZL|V zy)nqw_XGKQ|MdSb=zx${E`E!H)yV<|=-VM~II{?(C^H2Y6<^}!T z^q1ZTg4*#jLG5_|^uH_U@96)f_o<-1+by8Jn}7Nr@uy(_ZuT#|Zv*w$-vIU3{nP)| zpueO2OYgTpF`A{I7>$4W&-in&e>eM=-XDYFa=U`!a{lSR?$bekH~ppeAW$rJDkv7~ zpZ-?|{T=L4Qa4m)@6x#@X%$ zjkEcufBrAQ{@v_fdfx*YTWtr8t@@|`CqaKl`A&N%L4P;>rT6xryqV#kycz%Wzdz{j=>MhnNKmd+9+WHPpZ*h`3-<43 z|I)h#lpl9BC_m0W{oe}uJKDeWz7~`dc_-Wj{^@_lf?)q{_OCoxY5oX23kzToyayk^ zn)_!mTfsK46MP-^gP|}I4ue|wF z-tN$y*J!R?!Me%P!U4CGmL}P}T3XuQHR#&=HCa|ynp)N81#3n|E2ebAV0q~$j|$y|B&`z|8Dj#y|bXY zeP2-B?w|h82mKxGUwZEkYR?@CYR~znf8z_m{@v_fdXECN;eP^Z!~3WI>MsWU-Sn5< zKLz#Mo`GkkkqP>jYu{U3QL z=_|o|jpnBdzS;jhC|WCj0c-Z0YKm z%-0sIqwOqPl)v4w{OwldZ;jdaVJD9EFTMMK#@VudT$FF zPyIeU@6B9vs6aMMn z_DZmSH~W{~lR>#M-v;H%_^1EcuLk|y^q1b>0p&+s56X}7Pyefe{*L}%dfy1jiF*!| z6X&1)U;lfse>eM=-p_;bAeV#kApO&SUeMps{-yVSV55VW`vV4nfBIK;1p9Zhf9Wsn zca60_n7`AY3a)|M;2yXaX2T!hVR#za;bnLgHaa+y*$lFyHCF!x~*fG{$CsY{dvc-pZ`d|C{sx;_de6tE#+P(OV2rai*A;_ ze%fW-EX{85?b6aDGyD0qcSs#Y?~+-dlcVgg?aAFNz2U1ncC)l>R_J68-`e5Y(z?m9 zweG&M_uW9cSAuk(no0e55&u~h?BCJ>DdQki92DlOY(|_FS!T#OsUwYpJYL|Zu zYM1+`{~JMnNBfuF{|5ENhQLsmno0e5(f&XEjbQ(7_CNFxzAp(X;S5mUduk^2#GnRR8pUF6i%Q|I)h}6hprU6g&4%|N6zj{@v_fdfx{cFL??yUgDqrz1|M` zyXh~z=fV4s9ZFpQ{^@^d(BIMjOMhvn7zhpUE4U9Hf+yf9_yl$v z!E>rG2Cjw&U^YAfPs4|>*2qj|9atCo!UnK090-%(XgCpaa4Fmlcfx(3!Qzf(?ejX8 z&1>gh{HOdS3m=-t;PJe>h5l(9^O|2b%}d5!yC1#%>9;N@jmReJzSQuOZkAp?cuY4- zyC0G6e*Cv=oVslMcew0bnoI9*g0%L}{s;ae_-Pyc@g{T=OJdJh7%x1I#GvHa8j+;@Zh zyV<|=o(pPMkEY$MHno5HZ}HEdznlKj`$$kfYHj*H>NEML|LsA4NB?j8$m^l|`k=nD zfBGN#Ua)^R`?s-?4bgog*w{<`{~Gjnw14Tn2`DZ$6%-Hi&;E<=2m5!kf9X996a)PO z+zeRV@0R9EVT(igt`8UmC%{ywfjT$|8leCu!!O_txC@?uC*dVn4DY~u zuoOOq1IQsc3{Hk3+yjrmTktk)F^bqfjDjOzCVU63f$QL}uo(It&bqJ_jEA$}Y&ZuV zhbLjRBY6G{_J=0;8T=d;LiFVx?R?3H{_$u2yB+Nv?MvQ$^uEqKy5!yKE`68Z(f>^R zvsI^W@fdda#+e*M-{!HC{dAYAt@Ldk`t+#7SIdlpZ$fF!B;w!wvtrslc@8Xz*J~u9 z^h8?s;|gVC1<95@fB(n+(*A*1|1Hr<`uk`9zYO;8SpQ4!twAqV?`Hqfy9LyqyA#x&^H2Yeg8q*7 zFTH;UYP){~YOnjJ{|}c0`**W{>AeipM{5D~&-~MWyQM*YH~pn|E2vMt7}Ov4Pyc&@ z{*L}%djA6ygE<@&fALTMqdp4u?`Hqfdo(EKb}cC0=AZtr1^pfEUwZ!<6l2|z_^D#6 z{^@_}$HD&H>|c6s4T_;Z0g9pfr~d}ag8pv$OYf&Z<0kuo#!dXw|JOl(NB=Lq4*-po zT?QH}^H2W+{~he#&HknL<)HD=bw=~N6!@qAGeLhx`Y<)0h-`U_#e0*Ry&GyVMF*D>~>!Nz9ad^ znPrkO`6oyJA~l+?cU?#PzjwlwsVz<_wxzbvXI;1Gd8EITIiUU6Ef15uOZWAqB}jk& z?7!}l;Q!tHzx3V^Wb?;@Y~4ToR|NeX{lE3?C!qT`K|bC;{V!e~?BC7)joxUkdi_fH zrI-5e@@dfDO@HbAD^PpxC0Gdl+5eoNzoY+`-hTzP<9C9c!9V?{{3qDIoBd1gT|oV} zpTb4ppZ@Oz{T=OJdS49cx6g;afPea*vm)5PoBd1gXF&0q9YOIL|McHH(<^-c_ZpdA zYpvdp$>}S_n-^@IDSf4QH?L;4zI4X|c664jPBs z2Q>EPpZ*oA2mRgjw_~mQq5J-zF<1Zezar@G=>P2)`+?|w5NNF3KmGUY9qixD{-yUJ zp!|xTf^sVS)BlN}zoY$2?~6fsH2((W(fFtTiG70oyV<|ZoB9;p{{zaO@=yOIL4Qa4 zxA}6t$b(xAlsD&}{@-6C*uR_oOYh#GT*;xJ97+H5?^hA@chg^b4+rJNJ_vKbKmG3x z`aAl6>HQEW7kU}|8~oFM%vXZ_yV<|={sfc*za?x1{^{Ql^mnv>>Af}R*@vMp4E)o7 z=9-@-_ic1_r0(P))=43RDgf_*Q^ul-_8E@e6zIgjqZJ7 z{rBYWQ7{gE40plZ@CvLxf%RYz90lXxO!y7l0PV2uMEa9(AT&b@oC80EtKnXF7#@Yk z;Bj~o=D~CDJZw0Ld}Npe4bTLq!kKV3JP3>7AMg&m2U||&d2u)h{!e>%0T{*AE`0nX z1eXMN2=2k%3GOaMBMS+{h~O0W3Y4OyK#^j_wK%1?JCqi8D=nHL`ToytHd$zB>F|E< z?c947e!H_ayL+B_j?L`G4+F3k7jYR^a2@sAunr8zkKpgUo{fAE*Z*VIyN*T5zx|Qh z)@)mIHgen9NbA|s$T_maS)^UdnmZ+gqEvERP-?y)}hF)`2dPcwk%Nb4Z@A zgXFpS;y*FDuKx|z|HOL(q;7Yi?v}dUeDN=kLdV}&{3YHAAnkcmNPBL+_;1tkH(LJ_ z@8*y`+#*OH&V2E2<*M`FSpG}Amq7aMDd=}gzukQCzpLYKF#jdqZjiBBPsmu!eDNRR zrt{xe{!6^WAmj2~kTJRW;-5aHj=!<^+vi|p{^c-^m@@uLb^Hz1{}S(`ka@SWI0y6P zzh^3)|HkrP;{6k3zBNAzzHi+^xxo&U!2U*bIsvOnc6 zWPghJ;vYYaj=!<^+xMS6Anw0H_M@3E{$J_%8?65&-oHWiomPhIJ2hYYi>KB3Z!G^M z-c=#{%Ln3Pm@oc&bo>qGzr=eGhck^0rmV z2Nul7O02?m{DAw2f@-H!TBJuFltgLNLuYuQCx&Ar*5C+^;W$p=HBx@WbI=)Hn1DrC zf+M(w8~7cOcmdb;O1UE^%AgkNpa%wF2$tdsuHg>uAzcR^k8<$C5Uj;b+(wR${Owyb zLgepvFP*x3X+LM%_HX0N;s2?-8{WA7=6zhV-o5mc!;zYWGT)9pCNt*PPM6|S9Udds z{(RhKM3PV9xHax0KUcP@AN$ytSF!#*pqOj&nAqb<<+#+ElJDoDWA96BCHCga|Ft^* z4YvOh@2-%1-vP;U^ToeGMqU3KtN$h5J0W#@I_hMp)6EzE%R2rB^Izhf0n(0_g0$o2 zi+}G-I{%I3zr?!?r0>=R(swgo{F7(a@i!KKiMKbTzdi!eUpHU;=j!+ytp6q6qab6n zqmVJ0`Ql$bi_U*z`EMVSpCIlhA!Bp%#s7$ozrp;Mc%O#M$E0F@B{j?!e@j-K|HkrP z;++OE57z}U4`;skztHhFnEw)QZ^+#1V#wU9`Qkqzo6dh@`7iPQ4l>_<9Wvi;zWC?M zuH$bk{u1w-kbNwFK=!eiFaBF}{0-Ls67QFg{c1TN`_;@B{}%2#|BdCp#5)&cUutd0 zzEtzY|F(|5!Tgta*M;mq9}L-lZoc>r%Axb$SpG}AheD2-xC%LD!hG>hn^VW%So|g4 z*CEHr+=Uz~W4`z=(eXD}|4Y2@LynIs3pqZ@eDSZIOXt6_{Fiu_ha3|(6vJS?_@B}7 zH<ms=UmHdr|7yPY$IGMRZ!G?DymMm=#4;?0 z`QkrK$KPQ6FY%YyFO81Zpr) zXn=-jgSPO7FDwW}7zSYohT;oM#6m2_60FAt?8aW~!!aDk8JxpUxQI)*jk~yqM|g}V zIC=3m4v_!};f7R5jr7QXf+!4r_&NIj*{hNKKPG4Uc3h3z7`gnt&tiXpxtV9KIF8Pj zTa|0Ff(g_5ogXwtrSp@+^&PM0sxUD2c>S}9?i5w*sc!5dQGMqX$2&e~IXyA)eW;vNnt6;$ay!-Q>cslG`APu=>~>4~_R426 zcja3&ude@%)&COj%aB|ThU9t|$1;9*$ltif@hKm)Y$*P_bo>q0{}S(>kor9db-C2< z=8J#(d^-P)<-f!`8Kg~L32D>K7ysXM{0-*6#CtWQAD5cIr-Aw6KPtb@e`EPC@lFfr zzgI*h@IUtSMl1jBE3r@bz$HWNf7Svz{>I`j@ve+2sETUff9&bqA%EkZ*e878lA-vo z*6}x3|4Y1Oye?z)`e*?D$DZDZ^1H9ZKH&qG48^}*L7o4`@?YXD^D{Cx;{%zS;eYJu z-64PDp4caR;F6*EU)1q8nE&>D?iJcVjV zxC{Qrp5BP^yRXDP;RBZp#s83wzrp;Mc*}m$$58C|lzpVK7;}1e$ltgp=J6l8U?~1R z9y z`ERiOx97FwbSNaJ%@_Y>#dZB}tp2yx;ZlDOgVf*Vi~mg>e}nmNZ?C1To(yTL%@_ZH zC3OB9%YS>{O!{SuA^kG*#XogP9e-o-xA()P4}JvF2RC2*7wPyLtpDv}E*WpVf{eG! z7yqiIbp9L5fBX1a#@4AJV{7xp|CElu!Th(+rN}%=MaVpg`QqQBw9bEH`EQ>$lR2}F zkU2B+#owunj=!<^+viASeslQBths#{}WXN2&`Ql%stj>R9`ETF% zA^SZRLiT%@FaA4q{0-*6eLt7%<2nx6$7R0ww=1Xf-&p?J_i5fE?n!+3{x{4Q|6g_d z4d%b>%a+(Dj*fjYE>j^jG9ojwATRQv7)qcd%Aq`JpeAae9X^5|x}yg|&=bQj0wXaR zV=xV0VFqSlHdbLR)?pjAV;>ISAkN_@+`&EE$0Iz(3%tT>B=qID0k|P0QX>sABMaP- z6SU^7Ak|u5xxYa;^H)DZRt*yp*YMK4!;$ z8vBpGINlih%Q4&YOo@4@a$JYw!2vPri2G;&$A`uqYaoxUDfuojmw0D_#M^xNKcc*@ z|BcoE_WYLIE)L0U^Tj`N1s#85@weCIQjdE=>T&bMf2EGU!S>(YZcCf(4{5W_7ymjH zb^aU6e|sNI`e(x-{WJ5${}&y9gZXdok4s;CI;1adzW9e#()n*J|0Uis_WBw#A!9J} z#XoUn9e-o-w~x736ZbWcaku&6KTF5oVEu2OXOTIU{g62p^Toe(6`lXa^4~tECi7`` zA@gbGi~j)~e}nmNpFfqk)0dFBQ}e~&tE$d_WBG5NE0=llRFFAx^Tq#}j=#bDx9<~? z{UJFZ`$NnZ|4*yw{5O{W_WfVEiF+Q%elYXJKUZ}fe`E2t@AoWA+{>Z7DdYdWj=#bB zU-oxP>?Q6M&=H-`8-39a!!ZKm@F_k+g0AdaM{YFt01YG zT|OXZKVJTE%jI=%{9AI1tDG&lWk0)hdDg^R>dlkmes`~;17dc_JKpZx@0Xa{WA?|F zY&tLI#@IdYa%=3h#vfO3xb`Are}`}Px2l>s_W3bued9=hH@?pwd)&YqM*=v$&o}NU zYmd9cybmPi=Bxjk)X??6vHIVhK=Rvs@xQL)Z?OKi*XL4~x1^444fDmnzo*WB zWBD)fmbP2k?U|Sj^Tj`9O&xz@@t1f@UrqXH&+!M$7yku1{s!xRiMRC4rC(kj4Pn0c zSFWY=-&p=jyk#sV{I}1YW+3hvA#m5RK3dAE5^V5rkgojS(1y(fACX zV+y8WI?fssl=jtw5cDyO}&aJB# z%KtkKdv4BnT!>@OjcVW-duz;|8+q&--|ckV#}u>ICr|lL;&`q+GwPc*t05Z-pU;NMO_#4cB`?y-h z)B%t&wfW-Tvysk!WBG5NLy`HDk&yWl^Tj`5V;z5E@wd;H$z0h~$XuEE;{Uadzrp(7 zac(pjbD%OeYQFfFY@+kuSpG}AQ$Xg!dqL*I%@_ZDI{pUp-@gB&FLCb&*$-mA_;+rq z^WRwhOS}hQI7VP3%oqPBI{pUp-yZ*A(Xk)J)5w~#%kMIOfp+b~$LQ*703Zz4N`*8-M?K&&+j_AYoqPL zy8NdzUNUA+Y~k|NV)y9A+*-?XQyjNC?zN5G-)r6b8}rOJzS`&boj=DX$Lw{MN7s{l zx5s=Y%My3<<^Q;5y8bs-|4Y1QLvno+B;U;!{~XPA{Efw5;=Kh@$6tfg^X7~HdL4g* z?Z3qP2Bd9wrfrt?-F)$H)I#UKvHX{KyFmJMsUiJ3^Tq$Fj=#bDxA)_768A!o{=E6( z-?ydCe`EP?AHUTl?kynWIP=BdwUv&)vH07^?H!1_4`lpqzWC4A@i$oiOS~I`j@va2f2ipX)AJ%;F-=^blu>QC2cW+DFeIWba%@_YxAL;xzmj8~&TMQ)ja=eB4 z;(u4i-(ddRkFSwqYgR#ysWD&thqTxEZ!G`q$56@fQ~MytPnj?N={xB78;igFcsV&% z?ia|ha^{QwQXPMT^}qetNI5R@G32;N^Tpq@qt1V0`ENfCR*r#91~~@SeDOc0<8Ltk z?Z-UJ@y@v+$2*%Z{=uDe{u|4G`|<5XiF*Z9G-dqbch>PY7JvC}g9jx3=!3o(juDuJZ!ia|u?G8a00(gim+=@+@eCPy@|!a#jXG$Irf7ziXoXJj zf;Wa@7{0{Uucl6TvZ!G`q{WIyCJ%RMi%oqPhI{pUp-`*Eb zL|-{Qq)%?X_>b|{`EM-$9milzh`o%z%oqRcK05x!;%^^sHz)2bAmeWH#ec1izrp(7 zKF`uw;trW>F<<-}`0D&OmjCv-wXVc{2xN}UeDS}m<8Ltk?Q^P=iTixW+^YHF-`k?| z-&p?J=h7Dv_eGF7b@RnPc~>2OWAV4|Ls?7Q*FpB9m@ocwb^Hz1|MvZ6yNLS<$o@0) z#lL(vo&U!2-@d=}0&%|w*>7sT_#e^nH<7%6#$9*Imco zSp4nB!ObD=%OS_ZnJ@lZbo>q0|Mue_eBPyUGDx(Ve;~LcH_^J$i zVZjtk#RhzjCwPj&W8$kKD2C#wh{~vfAOvF?reir)U^UiY3$|ki&fzEA#{(oD8($?s zS(HOJ_+cDA!9py;cUX#Lc=F)NlLt@E;K3=x{*#-d|2Zt$Z`#kN{U15;?SSc3omD!& zl{MPLemfvut3*yQ-y3+4a#8F(j(_RF@oNDwf9c`f-yA4sk9|5~n;sJXE{>nN?)zPF zeAEXm8~Xe2X#;is8_R!tz84_wl_2@v#W8@Ui2o8De}nD6y?$>^-1|Z5dGp1;dXUb4 zWBD)f9)Q`{f~_!L{Lkq48_a)+_clo1E<61;cbG5!fx$Zejpcu9FCU+XKzFZjci-UN zL1E#c7Oy~eOD~@YuWEZ5e@eg#b?i~_p2@A6XC2T5}5uq0MUS0ta z7WdwM{sCd(?%{qGcR&Abe(u(X$=%_WuyEGVDk$6%>T6$-d##}G-q%=9Xi&oFmyce7 zZ>X1lkbh7&p3)-ZWq@x)sE=RQfQYcLgiRwtyII`31_bwZ5A_PS@PLL9UBkT)>TmH5 z>k%9pYUvRk5!%(OM|f~(LQlEwBcCAp9eVkPx_d_i_w@?$>C2Pbc*)EA`uq5WTVkI3 z=V$fir9$0(EkR-a;qo*&H4N_7)jz=EURtiyjCqF^e+thM5YW%!A5H`}LB7@pCamor8*}C!{c4s_9^WF| z;%5nxw`F}hMO%aihwxl4Ujh>59`4n{5+s`mk(ZFxumoB{d+_Gn`$fcl5YOPiKub_~ zm^)ilFy+hL(VIX+OL)IhELU)M{94(WHnHHVLs1XbE6o zu&;a^IVE@OnCj*KLqW z|LpU33yAxA$UL6;;$O6<&VOV1Z=bh4P23+t=5Ngx|6Mx%2J_!OU!RP*^+J$&d-KJ= zeW=cVWBG62Pvb${i$eC-m@odn>G&JWf5-iEm59CUqcdOpM}_J9H8U70Wb5xsQ&8_R$Dad!KO`&r2GcIJzJ(%w4$ z#^P^3zVa$@zXv(a(tPp%M#tY^{ck_6Hj=m};#gTZzSey4FWX1wzp?zcA5Wc~xR-$( zS8cxdAJXwRnE&?U=o=IFu8`yD%@=>4zB>Pn<-h&=6McyLSjhJ%%oqPi9e;!QZ~xxR zRN}q>^8Fd}#sBkuI{%I3zy14Ci;4RZ$oHnq7ymr{b^MLR-|>5LZ^XT=`gfiZDwWFj zp>k5)eC6wLY9_x~;=4)5-&pU1_9AGK}UHruQIX({#TV)6hNS?zmXrg_SP)0S~6 zd^(`3$5}cTtP`8MT`)&3Ec~CC?=5T3IIv3cTuJ=OgK9aSYsM`gd3)T(6mJfRGmfpLiXQp*7=<$N? zBT2I$GjZmajnhY8#(mUkbPQu6sbfkB=rN!k1L}El$0OtQ+@PKt)NQ?P7j(Oz+XdY& z#C+{c&y(x%f*vo}zJjT9LFYnTx#0AtZ^}lO)4yQOLBBU+-+tER_P?*({``&hzsu9v z|Ggs|ot*j3{XgI8^gDFeU#ZLR!{=}emZ9GJAbTJFdH(+Q%1ytw|9vf*j;W66fAe>D z^!BE=H@&^tejn@KoD2Vaq@(*Gy8jk^REP|U9ru8|>$<}p^M7+L==Wx<&C+#uEp87nuvy%{Svy}cPLH@&^- za{F(Nvvi*7?d`w0z5Sc(H=PSQ7j!P@Ij#@+`$GTb`c1z#UBBu2P1kR_e*5qL?IT_H z>bh6gy}Itzb+4{_9e=S|w+p&m(Cvb57j(Oz+XdY&$R7azu)mX|+f&`1{x{pxfAc;g z{oah_f-W~*Zn_S!^~rTE=v>gbpmX6v#;3Xt(RGNfLv$UY>yZEc9G9+pb=|A$US0R< zx>wh|j{6sMyP(?z-7e^MLAMLKUC`~qhwpdR?Wt~0b$hDYQ{A5G_Efj0x;@o@VOjq* zUT6JR7xiCVbo|X>hu;>~;{`ol(BlO?UeMzOJzmh`1wCGPbG-27f9Egsl|CI`#fw)c zMab!F(SI}Wjs9BfZGFSf4;rKNyV7O#mw!XU-oMq`6{+(#e{V#W)!&zqy$p3(>9V2( zoF*%kqnC>3=ah@{LMbY={tx{Hb6sEk{r07E@bAlrM_AiOT~@lRC;?qx*){`73&$lr znsCxBj%|Z*oE?|V#PPbWMgP8x>}96QN|zNSpj#Z$)y0T~?HUZgFgzfuxD!l5TNyi=$f{JzHzvuNz%IP)F#RLDvkrX3#Z*t{EJ% zK#wMDoyWLFTGDhl-mc3^mlY+TM_#tgK+?l;N%yaG|H`3dkk|) znnBkLlz<*hIF2D$mihsDG@(Zm4*e+EDB|iv=vvg4K5>=J+hwN9N|zNSpj#ZAt9Ladcl)_eFJI)FBIWpTX8d{8b-R8WP>VihHiuUN&!E>g`HzSCoM6i`q5= zNe{;*-51q;QHNGoHjlVkAYF^vk|wUQdArPXS?RK(1aymI+YBT<9G7&9qgx!^;^^5A zJ^SI11-j2*Ya(?2N*_sX>o4d&gP!Y?uH*aE2=>S6T2$Aflz<+2*){`73&$lr^3o$O zhd!rl9&y#Kx)!x1OY}R(Q|!zuFoM0bf3Z2 zMCksNp6j#q7j&ON&-F>y@qKCp`{Q&is%ue7K##m^n}MW-5-R1pHnuExN28j zi`tSVuCjT%%ye1lvZ4fZi(}giBt0CLbc>@~9NpsRxjsGD=a2=u&tPjJbpJ}v_1XFh zy3e5J`lRdlJ~e{`OwJ0T^M_#tgK+?i-Nsqkr$jhP6DVs-JwX3d0ZAlYX*}Pq5 zx~z0rQ3ATfv26yD9*#@8#nCN}ZgKQnpPuV;$O7GGur(37f2HU8Z2bk@XV7zf(sg{F z8o~ZJU5n~kloHS*FWY7yY2mn}M_zj5<d=yS^E5m)W1Yf)R$#8ozLmzgdrT~?HUZgFgzfux7yl5TNy zi=$f{J=dq_`W&)A_Ze(WgzjJIxjtKeLH8N-T%U9u-={{fKTg-8x)!Ab^vKJ$8Aw_< zF4;z2)?4(MSxTV0ODdI0IjN*ht}3C5XZ@#?i%P@?n2MQyqf7#&{!TAvrT)&l)=`D$ zzU#jKAGa^$^V-*&&SBYp+uN5L-s3TEKgW-rd0o7H`~Su3E8^M8p#hR#ynx8TlWjjZSY`t!atW-P&?N|A2nP>QjS1UtQO;Z@b5p8smBieZNVQPm%1Z?)U(Q20 zS1K7&`KEDlQfcPxWvlS4pU%2YFD_-hwsj`9u9Js4oa(FU?!QNUqw1?<$!#~gsf?<+ z@>XH2JzVuuMgH`9VaiAO@yhv9sMTEB*HtWmEAKs+#|E;t0A=Bm zw`9qir2y-7rLw5>PuXlsolc;flEe$JEyU**FS*%SC1uUUR1f#ZQ9HO)(eJWYf~2Ye zYw@QXWUUQZ3gdlPc(k*%Jd_%srgvGb9&stLWF+nv-&N`bZ^9oKihYRZt+=qAxTsF>;(BZKI{5dfluoTxGAFm_b*KH?b-VMP zByvH#ySUfev_U+VG%A6$Ez6;9UvS+f{go_iv8lOi?-?8vZV3wS+_Gcz8$$6MA|=$&l!x+QzUwL7QISWtiY?==eLzMHvD$N3k_HaWMn^_U@hDI#;u$4 zmmM{@-k9ml=l8!6(yigD%Abu7%|3qK@juErA1K``@8DO1QyhwD_H%~2V z^?2)6WNlmd!S%?gxvz|0v$1NK#^2TVOf+ou_AgG}TNqh;U%DC|`@hfk#A9BeG2a|& z_e0Cbj4N(+vXnkndf^54-;;ilYUhe%V>%z{=AN<0jcpZYj=6XKbi07fzkIgpvjJr~ z9c;WKDovLsRd1y}ad1%kL6k^T6#4r`dCfn);O2J9sf?4dZnd35EdgOgJ>-1&=SRBl zES7B4uOqe$J2tS{@tqm+^eQ@kyl2t51J&jHgZy%4KA-vS`6hc3B-xZ`_`F}AEvo!_ z*|^BdU*2?2H+^w}omV`o9`L)|tMax%L-&oCw;)fV_I*M|&h3AGZRgERkIk)gsCef2 zb=MV}l*)DVxh9*NFRS5uY@gfl`nArN^3FYI!GxZj&t#uEGvlQ)4Np8t*ZfS`F3Ub& zxG!q;&SD2=HrX*~dEx7|T!PAe+0g%*_csfRUTv{u{6fp(li7~0-4J>D6(8l#AGAl` z$?1miLB}Es!u>3PmZA>ljl6=qx>-VH3rTjcQIehRZq+Ui{HFK#b7g%t<*((v>cFy1 zPnGA4Ox5?yK0fRGnd?`Fl|6hh&8e>%ByU%EM#AJ{Er&ctuYWk8@Pf<>f2x~hSK)xm zd(z&x-6zAoHJ_%wSZ{Awvw^uzjUTae?Jw@9*A_aJ2Xl=N2|-nQ){6qmPsuU(Vi^JUU(b3NPJJv`VaU$0CF zBgURx`BjldnSTr#mCb+5lU2hGWECNYqk`aaAEDI&n|8nd!|)Q@1b1=<~-B${J1acpP4dwp6kxG zoo*DU*Cps+txwW!9vf1??RlbGy94~cZ{5D**y4>UeR(Ov-V2#NU)1Di(}|DEgkGtf zVELFY`fcy#J-c4&ZX9fpB3$>3wFkYAL+0NX3vT;kl>POUy zUx$6$dUAXrSca^>Q@YBOx*KfLWDf!+jZEik%RcPs{k>kqF9)0XumlR90{`70NlS%hZ zU46g)^Gw^%bk8_oD2ygJ8KCHHN6%w>^({oQ9r<$rLcPwxDu zlRd1kV}8bp*A9H2<51FiosYI$yT!FdvW&&&KD!h7Z28Qpwf4Bq%v$yN?dO+wUQJl_ zqZ)@72hJFNy;ad|ukIb$lYMU0nIAv;{aE@_ecJ7g`eSFlZ7*N;E$w!^Ti(Otiq3lZ z^xnR4%d5P4wW&_phmD5Ru{_lq*J-`8l&|pP+DloTuFp-mM(;UiogRc9uF#?7 zM_zRv6`a<$T)iK<-|%j}`@YYBw!1csOTA~?mU>AdO1d_v^IK5OEXAK?Xq+ZRy&7qb zhrJv;KFR$D&F`FznDWQa231<$@~D-yVWCDP=H<#az3aGj{>eU`*7|m`*S!K(_fHs6 zZpra})3N!O(X)__qm8p}Ge;jYg!uor6w0v&q(4^qQ@VXi5 zY#Cg)-P#+I)xZXgFYai%vfwXU4}80FT$-`jS{~axqz`LI`$Nx^Qt)yYNjNTpr(F{(bvC zU))QX=uzaSH#_bd*d}yK)PQ{*zdX{d$ePtZC9$-5mV8}-GDSi+ukg&)Vt0b>`}ZdI zpYEIZMa`q5s&6?wBSpQQ-t}|!Ie2H|u%z+J^ca8XPOimsst<4Bx8m;1ys7qo5}v== z{ybUk9Sq46`01#;9nblAwaA_!pz`>(_kZ7>V)?DhFFQ0HUwl&|zZA2|&rRFt(su`2 zFY~Qg{r(xR)@N#bJ+1vOqr2Asdgs!n83&YGo+(+n)58e9-*-)(F!jN@ zv+oBzyYO?7-AU8m&YAJ@VBado`yF|)Flfe?d&YjBc<|Xp4<}T)_OglpJ4=sP`(nlqjkDGr(XxHp+GR=|Y?;ov z@Ua=+y*$vU*xgzMy5xFQdS2Uh!@4{_Gf!3AxGc}r;=i>zcW!>lz=|)XPikJJS0Y_6{=-*?E@@Hf zh;P!eeLL*!a-sf}AwiQ?WxjrR`Ph1qNt@5lvOB6|tH&QZmyKU&$kV~DXEr$J`g(cb z=SkD{Tv)@u=BurPckeivVsyF<<3{)=D!8FxnW*^XPeuhEZkH+V(#zWyJoO*#GU8R; zT0_TI&fg&KAB}UgKJwI~!55a{4Qo#Nanho+{cEO3ocT_s4U3=ka;@cd=iBMNmhG1s z@1FHyrsZhir?r$uXiced62eyb~8?0;bF ztugJsI<*B#8o>)ax4N!PyJJ*>M#+9iFz1gi0xOO87~dAuic5RODC@TXluL9 zAq(0+tn3v~=)Op!BtH~OGyK`m-id;PPi%CXkoT9-N0*+AH~d=Z(-Kyt$j__b5I!G)2Dp6K5P9+cI+SvT}1jZ+$K2+;6Mz-E_3>vxtGSfBVX5 zz^>d|yxsbrQW+;VogTINRk=)Kx)sfyuH)-w)x*w>h@XGX?t_N^=bjJ7b%z1JuKWS$k!_%ILJ~tXJ1QL&ZsQXTBVjVi8CmxQa@!^ zYD*5K;^pGWd6~w^uT-{zN_8xx)R#pV)iNaAT1KhW<&}C>S*e57mD*HWsh=AtwZ55B zKekb-QAec;dnt9-n^6c810KAG{(-D6gn5H7rIwA2uPU(mMhHMZd|}t|DzF#%kz;0T_qnID!+njpxY1c+MTgPy_AJ8KL+VKOqsL)k>&_ z#t6W7xQy#~iPYp`Dbz#DPU0?7kX1~(i`odr80^G( z+(q8pG!IyY1bHZ9e1W}irv7n7R@6o)=3y_6;T)Xka%4m+e2MRH1W%AMKXb@vjgPSu zD{&Ty3Mf?zJ_yHXEXE(GR*-T>cMQdRtib`?#9cTQ;=LgkDx(Fu;!CW=L*y+?Sz-vj z!Yr)C8Kf=3HV03%L4Pd8aYVtxgPcJ_48T&ngeuCmf$HdkahQSS_yN0d9#T)|gCBO_ zAW{{loUj-vOAvc}hH@p@mawuEIaZp-;3l3Ubs2IAHP9SgF&q!^7^%xr55NPJ&=1RT z3(rub9CZo8Fc}+g4v&zlJTX95%)?ro#_z~pL8>R@g-g$3h|n8A86>$d+JUZB4H2a0+9(du^xMI8P}01fchQ{5r|QkhU9@t^@jAZMq(B= z<2vF6@tIH`M`#LPe2mrDj|+H$KhiwvlY{@4ol(eafpreFh}pzxUZsu(IG2-C0} ztFayDa36{3XO=}bjKe~F2kC!SRKyun4~l9*Q5C3asE!)&L`{(Diqux5v8oHwm%UVM zZ)k|dXo99_hURDiQbv&`>?5Im2PvW0{Mq+Go`cO=u{kR?XT_$hx`54(eNwbZU^B7q zMe53BH?XO&Z;5RVYzpkjQr0~vgob@N)Hk3Q*^fhhBLcn98-36h{V@Oo@i7KrFos|# zhG95HU?fIiG{#^o#^DouhR-n`6YvEl;!8}zWK6+SOv7}1g&Fu7voIUqU=HSD9_Hg) zEWko6!eT7JcUX#LSdJA~iB(vQHCT&vSdR_(9viUr6Sr_1cW@W? z@BqK!A%4T}c!bAzf~Rk{h(FvW=1zzxm4}4)kS9F6P{Lvjf5P%>ABLqDWiZFyD0=>{1eb5*E&>sUZ z5FcX@24e_@VK_!$Bt~I0#$YVQ;S+p{&+s|MV*T*g&g!*$%iP29q5 z+`(Pk!+ku!uXu>x@Cc9b1W)k{&k>0~@B%OK3a=3bZ1V~q7fRS37Vog zTA(FbL5_oIgSKdgkI)_+&=H-`8C~EFANaz8uIL6o_@g^|AOL{~LNG!QiZFyD0=>{1 zeb5*E&>sUZ5Q8unLogJ>FdQQ=5~DC0V=xxu@CiP{=NOL(_yQC0B_?4qreG?jVLHCT z41A55n1$K+26HeM^DrL^un>!|7)$USmSP!}V+B@X6;@*n)?yvjV*|d&Mr^`nY{52c z#}52}o!E^%*o%GGj{`V}LpY2hIErI9juSYEQ#g$?IE!=m39h7GLsE!rd6+>`$;FyZ zO47=XhpAjD>BD4Pj@-eS+GRbjrn3F!#x-V9jZA;bKvgcRRl z4O;V3-slFIUYdljQQMsqLqoL13nb0KJ3?0cmXoRsFW{7mssUwD4%Lt@H&qGTQ5bvc z5jt#ZO*oP4BR)B%bY_#p>n>DfUW6FGpoN9>L?`${hEXp5lpGQvF;c^&JJlXiAtP$_ zpn9Z;|K}-AHF!7jj^gotoK+RiWYy$W>&eNPTWTaYz`fBY>n+mNb^)QYb{FM7Cj`UghAs#Vp@YFOLMs&Svps&uO?s*rD1RhWGN8xvp`5CjXD+qT zEw?(8G_PvdF0WdgA)ktDRali`F6%}u4|RgMsg0_n^8rExc&Zg`JynZRb=AsN_0=W+`pV+gP<>Urk!sbjnOfJXnfjq;GwY#pBbZN^ z(5t;VRHTDSk*kXu?AJwkmGx2$J-te;CG`7Toe!9xHmCkV`KOws`uI&!x2jE6+w)9O zF2$#+-`Y)8%>$>Y8v~}P{S9ZRu^nfs1}WyM%bDk?o8{-Jl1=BSkMqt~4^l2t*DEek zK^2#&v&mMd1I<^c^xM%C&b?bD8MsHe zS30PccQ~YiJr1kinjcZ+(wO4_-+q_oG+rO4g$-1jZwn#b2b`@34 z+MBdqx1HH)7l#{Ibhg!|EK!9hs*RN$(244Tw3NM1Q>Ct|X1yfYt(Og>uXl~Uelq&H zTT&huW$of5Wb_=wNH>V%HhXg}x5|cZKiM87kCys7x<+M4I*`$Jm~v-4Z{hXa8OH}(j}{H${?e?+S;dd<luOz{Ock)>rq8Y0IUj_3{3^mOPhtnA84Rd{h^nDi3lvNjT*sN4@$*e=_=0 zsm42TY^Y0oo|J%Bvpwd|=kjXuxoq##o&9!lOfKP7IjN9}CmNkWJ^azx*1xA0I4pe~ z(R=74=_GMlNz?TOTZOYK!!;KbZ~U%5-72@p>HFNu+CV+&&!^q_Z< zW1|&`TO!W&<%nbZbfeCRAM@xwED8H*cJy6Iqi^_`%c!VS_Pe7mld>iIlYMerc#w4~ z@60S)FzfYV7A}zcqz?GEonBMdC7@P%`y|o0G-B58kxl&EmP|;b3gugUPBsO1?nut1 z+#dodOerg=%szqCt+OF@;|fSAZHAPclv^^~f~-U4oJeWw%IHs9=Z)OBbYtbIxy-<& zyfcY6{YC3@{rm$0EJ5C(ox2Ce+}2o*y9n^`4Gs^q-X`zC%Qw(p%3Gc%?@_h|SVZmL)-J5jn>hEK5ZxbBq%k9;ma%K!$e)WKpby+n(?l$!B8_QB7%6pPasgLAR z>Lj_;CtU)%1at}L63``}OF)-^E&*Kvx&(9y=n~K+@NX@FzZ(BLpE`7EhDT<%iBlN= z7mi$JAOFi3UdI12b0_0=nFo+5lBtmS(%DFfg-8#X2axgq2FUn+J7j#n7wK>mG9Pdj zvhF)@9QV6(y@e$xEF#RkktN&`%J(YVTl5VJw*-c{*J@F{dQoQMe z8<(fBzCJg-^D-N6OkPtym+ee`qd;a3WY$1FRZIVHOMrEK@)(C(11vGOa)&6PCTNOgXpR@F_mS=NOL(_yQC0B_?4qreG?jVLHCT z41A55n1$K+26HeM^DrOZVgVLn5f)=HB?6pc%mk1 zp*HHEF6yB^8lWK>p)s1EDVm`nV#$p^k!Ke5P zpJO~G;0sK|mzadfn1ZR8hUxeUGw?NLVisoO8_dC6%)@+qiv?JSMOcg__zp|449l?s zE3pczu?B0g4(qW2-(w>-VKcU1E4E=fcHjr>#E;m8-PnV@*oXZ%fP*-M!#IMYIELdm zfs;6e(>Q~(IESBb9zWw3T);(K!ev~+Rb0b$+`vuT!fo8aUEITcJixDbh~Mx#9^o;b z;3=NrIU?}~Uf?BO;WeTl4Zj@v=Ztu8L3|`YLL@?BBtcRnLvo~mE8LJ0sgN3JkQV8X z9vP4knUEP-kQIOT9k9GSCLi*n01BcI3Zn=-P!z>b93@Z^rBE7WP!{D-9u-g#l~5T~ z!1o;fBi{vU#(J8g1zMsNTB8lxq8&a$dvriYIDQ|@i|gL-fiEnO!=3pK#(RAytS65P zMHs>nfnMm1KIn^n=#K#yh>tM{gE0g{F$}{o0wXaBqcH|!F%F;LQ+$TcF&-1}1t#K4 zOu}SL!BkAcbbN&w_!=`Y3$yVJ=3p-7VLraa0xZNLEXERihoxAC!*QIzNu0uIoWWU~ z!%sMm*Br3?3zrvg5tncoS8x^Aa2+>r6Sr_1cW@W?a32rwD<0xE{EkO>j3;=CXLycC z{DBvEiC1`yD9COrCpaS>cZHBk$-Q3rKV5B1Ri4bcdV(F9G=49(F3Ezt_C(FSeN4j-XCI-nyu zp){1eb5*E&>sUZ5FcX@24e_@ zVi<;F1V&;MMq>=dVjMofr}zw?V>~9{3rxh9n1sogf~lB>>5y%I2A5xBCT3wazQG*K z#XQW%w^)FMScJt`g72^t%di|PuoA1V8fzf0vyRL4*nsb`5u30Xa{pE?w_!VW;0Nr) zkC6Lc{f)ys?nv}wTW;-vRQnT`_Q;gwc!r_2u$?R`D}$vDpCW0LlD; z?HByzTN_4BDU`F4HQC?8`>f+DKKsy;wnw(1^yRM})a25K(Yt(qOycmqr%ZhQBs@4i z-uLs%x=Zm(j&h36%!RzF{6zzaeLY^itMxs}E#Z7?CD=OOV0~~LXZa13|5}N?n{8$B z|MbcK+50KS>$|Y3e^UNi9A3W>Gbh0@TcP|d3W>-2Zwr}-zWucm#!)_UQ`4bEt=s*j z%f+mhjt{HD%)!sh7Byk^pqToBd54qCH8mp+XPJX)i@MBd)m5I%R#djmUO7Hn=DwU_ zw*N$L-W7B0uU@|%pV(rZRf>7|KU%QoUt*s1Pqsgq8zT|7@KYN+KeDpv4 z{EjP=Vu}m%4LJ{SGH+p6NkyTZxR5a$pRAF;{uhT#NRp_8#+mAx~hE?$O3ik>N4-U1| z<4{C*Zr}*PzmyM)5KwYZtFkq}-GyGuy literal 0 HcmV?d00001 diff --git a/Doc/Virtualbench.png b/Doc/Virtualbench.png new file mode 100644 index 0000000000000000000000000000000000000000..fa98f5faa4c2c15b291c42a88e339b1b8899e96b GIT binary patch literal 66085 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 z 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
!_wIF>oX!@2g8l_(8QW$*e)y*47{s(g<5{ut9DE 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 literal 0 HcmV?d00001 diff --git a/Doc/design.txt b/Doc/design.txt new file mode 100644 index 000000000..c05a6b2a0 --- /dev/null +++ b/Doc/design.txt @@ -0,0 +1,91 @@ +Assumption +---------- + The installation consists of one or more similar test benches. Each test bench is controlled by one PC-based computer. In addition, one or more PC-s can run the same application and manipulated data shared by the test benches (e.g. PC located in offices). All PC-s run the same version of software (this is a must now - Munich - in the future we can try to deal with backward/forward compatibility issues). + +Development environment +----------------------- + - Visual Studio 2012 Professional + - Database: MySQL (???) + +User iterface +------------- + - WindowsFormsApplication + - Main part of the window occupies a tab control with hidden tabs + (see http://weblogs.asp.net/kdente/archive/2005/11/14/430591.aspx) + Tabs swithing is done programatically + + Tabs: + + Procedure + - Procedure Info (summary, header) + - Procedure History (changes) + - Procedure Metrology + - Procedure Technical + - Procedure Purge + - Procedure End + - Procedure Adjustment + - Procedure View + - Procedure Inputs + Home + Insert + Results + - Results + - Results D + - Meters Ch + - Temp Ch + - Pressure + Bench parameters + - Technical + - Balance + - Temperature + - Pressure + - Flowmeter + - Density + Logs + + + +Sensus Testbench Framework application settings consist of +---------------------------------------------------------- + S1. Local settings stored on each PC + S1.1 language settings, appearance, etc. (no other impact on the system function) + S1.2 specification of databases used to store other settings (see 2.) + There might be several sets of DB settings (1.2) when one should be able to access more test benches. When starting the system, this is indicated on the login screen as 'Test bench'/'Pruefstation'. + + S2. Settings stored in databases: + S2.1 'users' (typically shared between all benches - centralized access control) + S2.2 'watermeter_types' info (typically shared between more benches) + S2.3 'test_procedures' (typically shared between more identical benches) + S2.4 'metrological_parameters' of the system (always unique for each system, not shared) + S2.5 'watermeters' info (typically centralized / shared) + S2.6 'test_results' (typically centralized / shared) + etc. + The databases might be running either on the local PC or remote, + each database might be used by a single bench, or shared by more test benches. This configured in 1.2. + +Application can be used to: +--------------------------- + A1. Change local settings (S1.1, S1.2) + A2. Change settings stored in the databases + A3. Control system and run test procedures - this is only possible on PC-s controlling the benches. When procedure is started, local copy of necessary information from the DB-s is made to avoid problems. + + User access control: + -------------------- + U1. Access to + U1.1 information read + U1.2 information write/modify + U1.3 action start + is controlled by an access control mechanism. + U2. Users + U3. Groups + Each user is a member of one or more groups. In case needed, a group with a single user is created. Access to information/actions is granted to groups. + Muenich: Grooups are 'Tester', + 'Testing specialist', + 'Head of lab' + 'Maintenance specialist' + 'Metrologist' + 'Calibration specialist' + U4. When necessary, system prompts user to authenticate himself/herself (login dialog). Authentication is invalidated as follows (optional): + U4.1 When user closes the dialog, which was protected. + U4.2 After certain time period + U4.3 Never diff --git a/Doc/mylog4net.xml b/Doc/mylog4net.xml new file mode 100644 index 000000000..bf5766ace --- /dev/null +++ b/Doc/mylog4net.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Doc/sample-sequence-of-calls.txt b/Doc/sample-sequence-of-calls.txt new file mode 100644 index 000000000..80636547b --- /dev/null +++ b/Doc/sample-sequence-of-calls.txt @@ -0,0 +1,27 @@ +foreach (var device in devices) device.RunDeviceBefore(); . . . . . . in StateMachine.Worker() +State.Create(...).AddOperation(...).AddOperation(...).EnterState() . . in the sequence in Execute(...) + +foreach (var device in devices) device.RunDeviceAfter(); . . . . . . . in WaitRunDevsRunOps() +WaitNextTick() (may throw QuitStateMachineException) . . . . . . . . in WaitRunDevsRunOps() +foreach (var device in devices) device.RunDeviceBefore(); . . . . . . in WaitRunDevsRunOps() +IList events = State.RunOperations(); . . . . . . . . . . . . . in WaitRunDevsRunOps() + +foreach (var device in devices) device.RunDeviceAfter(); . . . . . . . in WaitRunDevsRunOps() +WaitNextTick() (may throw QuitStateMachineException) . . . . . . . . in WaitRunDevsRunOps() +foreach (var device in devices) device.RunDeviceBefore(); . . . . . . in WaitRunDevsRunOps() +IList events = State.RunOperations(); . . . . . . . . . . . . . in WaitRunDevsRunOps() + +State.Create(...).AddOperation(...).AddOperation(...).EnterState() . . in the sequence in Execute(...) + +foreach (var device in devices) device.RunDeviceAfter(); . . . . . . . in WaitRunDevsRunOps() +WaitNextTick() (may throw QuitStateMachineException) . . . . . . . . in WaitRunDevsRunOps() +foreach (var device in devices) device.RunDeviceBefore(); . . . . . . in WaitRunDevsRunOps() +IList events = State.RunOperations(); . . . . . . . . . . . . . in WaitRunDevsRunOps() + +foreach (var device in devices) device.RunDeviceAfter(); . . . . . . . in WaitRunDevsRunOps() +WaitNextTick() (assume QuitStateMachineException thrown) . . . . . . in WaitRunDevsRunOps() +foreach (var device in devices) device.RunDeviceBefore(); . . . . . . in StateMachine.Worker() catch() +State.RunOperations(); . . . . . . . . . . . . . . . . . . . . . . . . in StateMachine.Worker() catch() +State.Empty.EnterState(); . . . . . . . . . . . . . . . . . . . . . . in StateMachine.Worker() catch() +foreach (var device in devices) device.RunDeviceAfter(); . . . . . . . in StateMachine.Worker() catch() +foreach (var device in devices) device.StopDevice(); . . . . . . . . . in StateMachine.Worker() catch() diff --git a/Doc/show-hide-tabs.txt b/Doc/show-hide-tabs.txt new file mode 100644 index 000000000..8a5db1898 --- /dev/null +++ b/Doc/show-hide-tabs.txt @@ -0,0 +1,11 @@ +Showing tabs in the designer: + - select mainTabControl + - in Properies change SizeMode to normal + - in Properies change ItemSize to 0; 20 + +Hiding tabs in the designer: + - select mainTabControl + - in Properies change SizeMode to Fixed + - in Poperties change ItemSize to 0; 1 + + \ No newline at end of file diff --git a/Doc/user-admin-password-hash.txt b/Doc/user-admin-password-hash.txt new file mode 100644 index 000000000..be6e9e618 --- /dev/null +++ b/Doc/user-admin-password-hash.txt @@ -0,0 +1,4 @@ +af242843887f3bdcc52e485483356eaccd37ba67a35941530bd195a8310fc7d5aca8560576dfb62ad5a4bd2df789a5e8be068e62e7c976d6eeed8d63abbd9909 + + += staratura \ No newline at end of file diff --git a/TBFSetup/TBFSetup.vdproj b/TBFSetup/TBFSetup.vdproj new file mode 100644 index 000000000..2543b72ee --- /dev/null +++ b/TBFSetup/TBFSetup.vdproj @@ -0,0 +1,1444 @@ +"DeployProject" +{ +"VSVersion" = "3:800" +"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}" +"IsWebType" = "8:FALSE" +"ProjectName" = "8:TBFSetup" +"LanguageId" = "3:1031" +"CodePage" = "3:1252" +"UILanguageId" = "3:1031" +"SccProjectName" = "8:" +"SccLocalPath" = "8:" +"SccAuxPath" = "8:" +"SccProvider" = "8:" + "Hierarchy" + { + "Entry" + { + "MsmKey" = "8:_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + "OwnerKey" = "8:_89365024987C2BD76AFC8D2865446B0D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + "OwnerKey" = "8:_FF6BF68B28099618A0126A3EB1DAED35" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_283A6E24D61E03A025CAA05070E40C02" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_328013E6099F40CE0D297D6D8E721AA1" + "OwnerKey" = "8:_B08A4A98A96A64B48235C5B8F14DC0DA" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_328013E6099F40CE0D297D6D8E721AA1" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_328013E6099F40CE0D297D6D8E721AA1" + "OwnerKey" = "8:_425D09E1DEE0BE9FDA22562C97B6583D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_425D09E1DEE0BE9FDA22562C97B6583D" + "OwnerKey" = "8:_B08A4A98A96A64B48235C5B8F14DC0DA" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_425D09E1DEE0BE9FDA22562C97B6583D" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_4BA45D5F5FF94462B5A1570EE26FAC2D" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_7B5851865AFE4C17A02FBD07C31F4D14" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_890B3B7A50ACB2A808B8E0F55F28E03A" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_89365024987C2BD76AFC8D2865446B0D" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_898989B0B45C4163A991395483ACF598" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_A1B42674559342099A330E0C5AC4D92C" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_AE60F46605F78EEB772FD76B1DFE8A9B" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_AE60F46605F78EEB772FD76B1DFE8A9B" + "OwnerKey" = "8:_890B3B7A50ACB2A808B8E0F55F28E03A" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_B08A4A98A96A64B48235C5B8F14DC0DA" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_D0DA6A8DDCCE4EAEA7B5CC962D3A080A" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "OwnerKey" = "8:_UNDEFINED" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_EFA7D555FCA3168E5305C2ACB9D46055" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FF6BF68B28099618A0126A3EB1DAED35" + "OwnerKey" = "8:_89365024987C2BD76AFC8D2865446B0D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_FF6BF68B28099618A0126A3EB1DAED35" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_890B3B7A50ACB2A808B8E0F55F28E03A" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_AE60F46605F78EEB772FD76B1DFE8A9B" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_283A6E24D61E03A025CAA05070E40C02" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_EFA7D555FCA3168E5305C2ACB9D46055" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_B08A4A98A96A64B48235C5B8F14DC0DA" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_425D09E1DEE0BE9FDA22562C97B6583D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_328013E6099F40CE0D297D6D8E721AA1" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_89365024987C2BD76AFC8D2865446B0D" + "MsmSig" = "8:_UNDEFINED" + } + "Entry" + { + "MsmKey" = "8:_UNDEFINED" + "OwnerKey" = "8:_FF6BF68B28099618A0126A3EB1DAED35" + "MsmSig" = "8:_UNDEFINED" + } + } + "Configurations" + { + "Debug" + { + "DisplayName" = "8:Debug" + "IsDebugOnly" = "11:TRUE" + "IsReleaseOnly" = "11:FALSE" + "OutputFilename" = "8:Debug\\Setup1.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.0,Profile=Client" + { + "Name" = "8:Microsoft .NET Framework 4 Client Profile (x86 and x64)" + "ProductCode" = "8:.NETFramework,Version=v4.0,Profile=Client" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1" + { + "Name" = "8:Windows Installer 3.1" + "ProductCode" = "8:Microsoft.Windows.Installer.3.1" + } + } + } + } + "Release" + { + "DisplayName" = "8:Release" + "IsDebugOnly" = "11:FALSE" + "IsReleaseOnly" = "11:TRUE" + "OutputFilename" = "8:Release\\TestBenchFrameworkSetup.msi" + "PackageFilesAs" = "3:2" + "PackageFileSize" = "3:-2147483648" + "CabType" = "3:1" + "Compression" = "3:2" + "SignOutput" = "11:FALSE" + "CertificateFile" = "8:" + "PrivateKeyFile" = "8:" + "TimeStampServer" = "8:" + "InstallerBootstrapper" = "3:2" + "BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}" + { + "Enabled" = "11:TRUE" + "PromptEnabled" = "11:TRUE" + "PrerequisitesLocation" = "2:1" + "Url" = "8:" + "ComponentsUrl" = "8:" + "Items" + { + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:.NETFramework,Version=v4.0" + { + "Name" = "8:Microsoft .NET Framework 4 (x86 and x64)" + "ProductCode" = "8:.NETFramework,Version=v4.0" + } + "{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1" + { + "Name" = "8:Windows Installer 3.1" + "ProductCode" = "8:Microsoft.Windows.Installer.3.1" + } + } + } + } + } + "Deployable" + { + "CustomAction" + { + } + "DefaultFeature" + { + "Name" = "8:DefaultFeature" + "Title" = "8:" + "Description" = "8:" + } + "ExternalPersistence" + { + "LaunchCondition" + { + "{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_7D48DA36B42B4C5B806ABE60A1581562" + { + "Name" = "8:.NET Framework" + "Message" = "8:[VSDNETMSG]" + "FrameworkVersion" = "8:.NETFramework,Version=v4.0,Profile=Client" + "AllowLaterVersions" = "11:FALSE" + "InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=131000" + } + } + } + "File" + { + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:TRUE" + "AssemblyAsmDisplayName" = "8:Microsoft.VisualBasic.PowerPacks.Vs, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_23F1CC0D8B6AF8F91B2A7070C5B7AE31" + { + "Name" = "8:Microsoft.VisualBasic.PowerPacks.Vs.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Microsoft.VisualBasic.PowerPacks.Vs.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_283A6E24D61E03A025CAA05070E40C02" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:MySql.Data, Version=6.6.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_283A6E24D61E03A025CAA05070E40C02" + { + "Name" = "8:MySql.Data.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:MySql.Data.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_328013E6099F40CE0D297D6D8E721AA1" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_328013E6099F40CE0D297D6D8E721AA1" + { + "Name" = "8:Iesi.Collections.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:Iesi.Collections.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_425D09E1DEE0BE9FDA22562C97B6583D" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:NHibernate, Version=3.3.1.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_425D09E1DEE0BE9FDA22562C97B6583D" + { + "Name" = "8:NHibernate.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:NHibernate.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_4BA45D5F5FF94462B5A1570EE26FAC2D" + { + "SourcePath" = "8:..\\TestBenchFramework\\SampleConfig\\log4netConfig.xml" + "TargetName" = "8:log4netConfig.xml" + "Tag" = "8:" + "Folder" = "8:_19315A9D87AF4099AD89D23EFEADFF58" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_7B5851865AFE4C17A02FBD07C31F4D14" + { + "SourcePath" = "8:..\\TestBenchFramework\\x64\\SQLite.Interop.dll" + "TargetName" = "8:SQLite.Interop.dll" + "Tag" = "8:" + "Folder" = "8:_9035ED222B1641F2B645BE5910EB7CC6" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_890B3B7A50ACB2A808B8E0F55F28E03A" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Data.SQLite.Linq, Version=1.0.90.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_890B3B7A50ACB2A808B8E0F55F28E03A" + { + "Name" = "8:System.Data.SQLite.Linq.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Data.SQLite.Linq.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_89365024987C2BD76AFC8D2865446B0D" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:ControlComponent3Munich, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_89365024987C2BD76AFC8D2865446B0D" + { + "Name" = "8:ControlComponent3Munich.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:ControlComponent3Munich.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_898989B0B45C4163A991395483ACF598" + { + "SourcePath" = "8:..\\TestBenchFramework\\x86\\SQLite.Interop.dll" + "TargetName" = "8:SQLite.Interop.dll" + "Tag" = "8:" + "Folder" = "8:_C60FBB52E7A44F19BE31A90A0D376DE5" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_A1B42674559342099A330E0C5AC4D92C" + { + "SourcePath" = "8:..\\TestBenchFramework\\SampleConfig\\config.xml" + "TargetName" = "8:config.xml" + "Tag" = "8:" + "Folder" = "8:_19315A9D87AF4099AD89D23EFEADFF58" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_AE60F46605F78EEB772FD76B1DFE8A9B" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:System.Data.SQLite, Version=1.0.90.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_AE60F46605F78EEB772FD76B1DFE8A9B" + { + "Name" = "8:System.Data.SQLite.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:System.Data.SQLite.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_B08A4A98A96A64B48235C5B8F14DC0DA" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:FluentNHibernate, Version=1.3.0.733, Culture=neutral, PublicKeyToken=8aa435e3cb308880, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_B08A4A98A96A64B48235C5B8F14DC0DA" + { + "Name" = "8:FluentNHibernate.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:FluentNHibernate.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_D0DA6A8DDCCE4EAEA7B5CC962D3A080A" + { + "SourcePath" = "8:..\\TestBenchFramework\\SampleConfig\\SQLite.db" + "TargetName" = "8:SQLite.db" + "Tag" = "8:" + "Folder" = "8:_19315A9D87AF4099AD89D23EFEADFF58" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_EFA7D555FCA3168E5305C2ACB9D46055" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:log4net, Version=1.2.12.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_EFA7D555FCA3168E5305C2ACB9D46055" + { + "Name" = "8:log4net.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:log4net.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + "{9F6F8455-1EF1-4B85-886A-4223BCC8E7F7}:_FF6BF68B28099618A0126A3EB1DAED35" + { + "AssemblyRegister" = "3:1" + "AssemblyIsInGAC" = "11:FALSE" + "AssemblyAsmDisplayName" = "8:GaugeIndicator, Version=1.0.0.1, Culture=neutral, processorArchitecture=MSIL" + "ScatterAssemblies" + { + "_FF6BF68B28099618A0126A3EB1DAED35" + { + "Name" = "8:GaugeIndicator.dll" + "Attributes" = "3:512" + } + } + "SourcePath" = "8:GaugeIndicator.dll" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:TRUE" + "IsolateTo" = "8:" + } + } + "FileType" + { + } + "Folder" + { + "{3C67513D-01DD-4637-8A68-80971EB9504F}:_15E376F61DCB49478B2D1D4AA3BF1643" + { + "DefaultLocation" = "8:[ProgramFilesFolder][Manufacturer]\\[ProductName]" + "Name" = "8:#1925" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:TARGETDIR" + "Folders" + { + "{9EF0B969-E518-4E46-987F-47570745A589}:_19315A9D87AF4099AD89D23EFEADFF58" + { + "Name" = "8:SampleConfig" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:_ABCF08C606F341FCA505AC9ABFD5F89F" + "Folders" + { + } + } + "{9EF0B969-E518-4E46-987F-47570745A589}:_9035ED222B1641F2B645BE5910EB7CC6" + { + "Name" = "8:x64" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:_15F2276452F94B6981E263B8B7F6F2EA" + "Folders" + { + } + } + "{9EF0B969-E518-4E46-987F-47570745A589}:_C60FBB52E7A44F19BE31A90A0D376DE5" + { + "Name" = "8:x86" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:_F2A8FFF674364AEFB94E4E0E0F37A4B3" + "Folders" + { + } + } + } + } + "{1525181F-901A-416C-8A58-119130FE478E}:_239AA733EB2143EB8CA44BF70E87B8C0" + { + "Name" = "8:#1916" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:DesktopFolder" + "Folders" + { + } + } + "{1525181F-901A-416C-8A58-119130FE478E}:_DEC3421EED6148A6B6857DFB5D000597" + { + "Name" = "8:#1919" + "AlwaysCreate" = "11:FALSE" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Property" = "8:ProgramMenuFolder" + "Folders" + { + } + } + } + "LaunchCondition" + { + } + "Locator" + { + } + "MsiBootstrapper" + { + "LangId" = "3:1031" + "RequiresElevation" = "11:FALSE" + } + "Product" + { + "Name" = "8:Microsoft Visual Studio" + "ProductName" = "8:TestBenchFrameworkSetup" + "ProductCode" = "8:{9041D2C0-3100-4816-8DEE-E6DE9C271E71}" + "PackageCode" = "8:{1DCC5FF4-F7C9-4DDA-BA7A-15E3E691F4BC}" + "UpgradeCode" = "8:{B4C65EC8-E0B8-4D5F-863C-6AC07A114A88}" + "AspNetVersion" = "8:4.0.30319.0" + "RestartWWWService" = "11:FALSE" + "RemovePreviousVersions" = "11:FALSE" + "DetectNewerInstalledVersion" = "11:TRUE" + "InstallAllUsers" = "11:FALSE" + "ProductVersion" = "8:1.0.0" + "Manufacturer" = "8:Default Company Name" + "ARPHELPTELEPHONE" = "8:" + "ARPHELPLINK" = "8:" + "Title" = "8:TestBenchFrameworkSetup" + "Subject" = "8:" + "ARPCONTACT" = "8:Default Company Name" + "Keywords" = "8:" + "ARPCOMMENTS" = "8:" + "ARPURLINFOABOUT" = "8:" + "ARPPRODUCTICON" = "8:" + "ARPIconIndex" = "3:0" + "SearchPath" = "8:" + "UseSystemSearchPath" = "11:TRUE" + "TargetPlatform" = "3:0" + "PreBuildEvent" = "8:" + "PostBuildEvent" = "8:" + "RunPostBuildEvent" = "3:0" + } + "Registry" + { + "HKLM" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_E36C944AD28D443F857C28D0879C93E0" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_FEB9BE0D71EF42AB81A090C53EF4D43F" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCU" + { + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_CDD304D340C64940981928ED484C7BE2" + { + "Name" = "8:Software" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + "{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_2EE1D21B99974636B82D3C33A3316C72" + { + "Name" = "8:[Manufacturer]" + "Condition" = "8:" + "AlwaysCreate" = "11:FALSE" + "DeleteAtUninstall" = "11:FALSE" + "Transitive" = "11:FALSE" + "Keys" + { + } + "Values" + { + } + } + } + "Values" + { + } + } + } + } + "HKCR" + { + "Keys" + { + } + } + "HKU" + { + "Keys" + { + } + } + "HKPU" + { + "Keys" + { + } + } + } + "Sequences" + { + } + "Shortcut" + { + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_0B7A7707CF9248659A38D74F6E905B89" + { + "Name" = "8:Shortcut to Primary output from TBF (Active)" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "WorkingFolder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Icon" = "8:" + "Feature" = "8:" + } + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_794AB96145AD4405ACE0EC46F244A8A4" + { + "Name" = "8:Test Bench Framework" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "Folder" = "8:_DEC3421EED6148A6B6857DFB5D000597" + "WorkingFolder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Icon" = "8:" + "Feature" = "8:" + } + "{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_FDABF3BA4E9D4EE0973839A92C645C73" + { + "Name" = "8:Test Bench Framework" + "Arguments" = "8:" + "Description" = "8:" + "ShowCmd" = "3:1" + "IconIndex" = "3:0" + "Transitive" = "11:FALSE" + "Target" = "8:_DEB8C3F405014A3C9E16DB622E3ADAA3" + "Folder" = "8:_239AA733EB2143EB8CA44BF70E87B8C0" + "WorkingFolder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Icon" = "8:" + "Feature" = "8:" + } + } + "UserInterface" + { + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_08DF1CCB2D50467381CED0EB2C683743" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdBasicDialogs.wim" + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_0A0CA6ED1B92415CB35182B7B865A8FE" + { + "Name" = "8:#1902" + "Sequence" = "3:1" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_3612B3D2670A40CB8A445041A253B385" + { + "Sequence" = "3:100" + "DisplayName" = "8:Finished" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "UpdateText" + { + "Name" = "8:UpdateText" + "DisplayName" = "8:#1058" + "Description" = "8:#1158" + "Type" = "3:15" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1258" + "DefaultValue" = "8:#1258" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_55783492191E4774830A5BCCB9F64FA0" + { + "Name" = "8:#1901" + "Sequence" = "3:2" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_36F602B5E9054C99A8F72BE2713B04BE" + { + "Sequence" = "3:100" + "DisplayName" = "8:Progress" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_650D8AA300504F2DA676F39A65DDF579" + { + "Name" = "8:#1900" + "Sequence" = "3:2" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_2C7C9252312B49839118F14D43D58109" + { + "Sequence" = "3:200" + "DisplayName" = "8:Installation Folder" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_616009F70B794A0BA46604F7C20D5312" + { + "Sequence" = "3:300" + "DisplayName" = "8:Confirm Installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_D2FB2C83836E4602A3A862A3FDB749C0" + { + "Sequence" = "3:100" + "DisplayName" = "8:Welcome" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_7C99DD96B1C7487A9F743990A1114028" + { + "UseDynamicProperties" = "11:FALSE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdUserInterface.wim" + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_824B7E4BF24C466A87B87D17CC65D4AF" + { + "Name" = "8:#1901" + "Sequence" = "3:1" + "Attributes" = "3:2" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_2E3FC737908C4857A264A8B98116ABF7" + { + "Sequence" = "3:100" + "DisplayName" = "8:Progress" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdProgressDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "ShowProgress" + { + "Name" = "8:ShowProgress" + "DisplayName" = "8:#1009" + "Description" = "8:#1109" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_8EB7CDC7B3204CE0866764F72CC9C5D8" + { + "Name" = "8:#1902" + "Sequence" = "3:2" + "Attributes" = "3:3" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_BA30D47E757A4352B4154E136B4EDE8D" + { + "Sequence" = "3:100" + "DisplayName" = "8:Finished" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdAdminFinishedDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + "{DF760B10-853B-4699-99F2-AFF7185B4A62}:_927C7B611C2A4DE8AA0EC0FC59929E3D" + { + "Name" = "8:#1900" + "Sequence" = "3:1" + "Attributes" = "3:1" + "Dialogs" + { + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_A47297BB3F1A47DD82E98165D5C8DD33" + { + "Sequence" = "3:300" + "DisplayName" = "8:Confirm Installation" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdConfirmDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C4860F31B6C14EF391F084926C8353DF" + { + "Sequence" = "3:200" + "DisplayName" = "8:Installation Folder" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdFolderDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "InstallAllUsersVisible" + { + "Name" = "8:InstallAllUsersVisible" + "DisplayName" = "8:#1059" + "Description" = "8:#1159" + "Type" = "3:5" + "ContextData" = "8:1;True=1;False=0" + "Attributes" = "3:0" + "Setting" = "3:0" + "Value" = "3:1" + "DefaultValue" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + } + } + "{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_FCB3435041744C7BA621B72B78F2DCA5" + { + "Sequence" = "3:100" + "DisplayName" = "8:Welcome" + "UseDynamicProperties" = "11:TRUE" + "IsDependency" = "11:FALSE" + "SourcePath" = "8:\\VsdWelcomeDlg.wid" + "Properties" + { + "BannerBitmap" + { + "Name" = "8:BannerBitmap" + "DisplayName" = "8:#1001" + "Description" = "8:#1101" + "Type" = "3:8" + "ContextData" = "8:Bitmap" + "Attributes" = "3:4" + "Setting" = "3:1" + "UsePlugInResources" = "11:TRUE" + } + "CopyrightWarning" + { + "Name" = "8:CopyrightWarning" + "DisplayName" = "8:#1002" + "Description" = "8:#1102" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1202" + "DefaultValue" = "8:#1202" + "UsePlugInResources" = "11:TRUE" + } + "Welcome" + { + "Name" = "8:Welcome" + "DisplayName" = "8:#1003" + "Description" = "8:#1103" + "Type" = "3:3" + "ContextData" = "8:" + "Attributes" = "3:0" + "Setting" = "3:1" + "Value" = "8:#1203" + "DefaultValue" = "8:#1203" + "UsePlugInResources" = "11:TRUE" + } + } + } + } + } + } + "MergeModule" + { + } + "ProjectOutput" + { + "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_DEB8C3F405014A3C9E16DB622E3ADAA3" + { + "SourcePath" = "8:" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + "ProjectOutputGroupRegister" = "3:1" + "OutputConfiguration" = "8:" + "OutputGroupCanonicalName" = "8:Built" + "OutputProjectGuid" = "8:{8648FD92-CDA1-4C3A-B5F9-FE547CE1FA48}" + "ShowKeyOutput" = "11:TRUE" + "ExcludeFilters" + { + } + } + "{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_FF4706C2A732448C8C10AA09954EF022" + { + "SourcePath" = "8:" + "TargetName" = "8:" + "Tag" = "8:" + "Folder" = "8:_15E376F61DCB49478B2D1D4AA3BF1643" + "Condition" = "8:" + "Transitive" = "11:FALSE" + "Vital" = "11:TRUE" + "ReadOnly" = "11:FALSE" + "Hidden" = "11:FALSE" + "System" = "11:FALSE" + "Permanent" = "11:FALSE" + "SharedLegacy" = "11:FALSE" + "PackageAs" = "3:1" + "Register" = "3:1" + "Exclude" = "11:FALSE" + "IsDependency" = "11:FALSE" + "IsolateTo" = "8:" + "ProjectOutputGroupRegister" = "3:1" + "OutputConfiguration" = "8:" + "OutputGroupCanonicalName" = "8:LocalizedResourceDlls" + "OutputProjectGuid" = "8:{8648FD92-CDA1-4C3A-B5F9-FE547CE1FA48}" + "ShowKeyOutput" = "11:TRUE" + "ExcludeFilters" + { + } + } + } + } +}