From d9eeb3a4a2326640cf3f5b8c9ce3eb02f061f247 Mon Sep 17 00:00:00 2001 From: bobpan Date: Sat, 20 Feb 2021 13:57:44 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E6=81=A2=E5=A4=8D=E5=85=89=E6=A0=85?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E7=9A=84=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=202=E3=80=81=E6=81=A2=E5=A4=8D=E6=9D=83=E9=99=90=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- runner17/Enchanter.exe | Bin 13824 -> 55808 bytes runner17/Enchanterd.exe | Bin 58368 -> 110080 bytes runner17/lpCoreCtrl.dll | Bin 262656 -> 274432 bytes src/RasterSDG20/Raster.cpp | 26 +- src/RasterSDG20/muban.cpp | 283 ++++------ src/RasterSDG20/muban.h | 20 +- src/RasterSDG20/rastersdg20.cpp | 39 +- src/RasterSDG20/rastersdg20.h | 14 +- src/RasterSDG20/rastersdg20_global.h | 20 +- src/tpMain/IWheelCtrl.h | 3 +- src/tpMain/ProgressView.cpp | 2 +- src/tpMain/WheelCtrl.cpp | 27 +- src/tpMain/WheelCtrl.h | 11 +- src/tpMain/qaddmodel.cpp | 1 + src/tpMain/qipconfigdlg.cpp | 1 + src/tpMain/tpMain.aps | Bin 1300 -> 2536 bytes tpvs17/RasterSDG20/RasterSDG20.vcxproj | 117 ++--- .../RasterSDG20/RasterSDG20.vcxproj.filters | 44 +- tpvs17/tpMain/QCamSettingDlg.cpp | 1 + tpvs17/tpMain/QChannelMgrDlg.cpp | 1 + tpvs17/tpMain/QDebugDlg.cpp | 1 + tpvs17/tpMain/QModelMgrDlg.cpp | 20 +- tpvs17/tpMain/QModelMgrDlg.h | 2 + tpvs17/tpMain/QSettingDlg.cpp | 1 + tpvs17/tpMain/QSystemSettingDlg.cpp | 1 + tpvs17/tpMain/QTimeMgrDlg.cpp | 1 + tpvs17/tpMain/lpMainWin.cpp | 159 ++++-- tpvs17/tpMain/lpMainWin.h | 9 +- tpvs17/tpMain/lpmain_en.ts | 484 +++++++++--------- tpvs17/tpMain/tpMain.vcxproj | 2 +- tpvs17/wheel.sln | 12 + 31 files changed, 682 insertions(+), 620 deletions(-) diff --git a/runner17/Enchanter.exe b/runner17/Enchanter.exe index 2416ac1c7f70b10e06c1ff8309219aa6c2885f9f..5ad05179389c7641f956680ff74233383db0225c 100644 GIT binary patch literal 55808 zcmd?QbyStX*D!iWkw!&Q0ZBnx=@gKolp=zZba!`yfQM30q?Hhn?vj%3E&%|mvu9?{%-(zU3`$xtFf14hh7Eow6bx1cAoNM0!~b)D zhXI2T)722e$}aaZRADIgGN_qbIMLfX+L<{T*w7mp*xK4T(;J%5JG$7?TiDXesywB) zu`@Q|A|k?Px**MJH^yN^T;=}nXX(n}ZUNG~rqvz>Xjtdrg@#`}EYYym!w^7R^J)(> z06*JQdzb=fL|pC8j!xI1%Nxz=JoG`j(M;YQ!Z#x3M#Dz48g#j;g^@Yb=D!g>mV?2J zU*f{D%z5_42Fx&`Y#CM0i_UA!G{Uc z5BOK7yrzf2;Ndub zqG7P+9(d3in_?uMCxF5z=K-YR)oRQ==skt zT#*UyDIj7GZY@Qw+e8<8Op2KvAf|V-)#ir~*7P0-c8<|3e3rkjsFY z7YGATPDrEkZPWl9F#*Ns;0RJUq64M+97>TvQF44h21ULLa98d4hd|rg3{XZhR2j7W z9yBOj4aR{&_kjEultT1*P~`6cN(>k#AOPV&+e8u32=x-G#NUY`e+OY)V5^?TBhZB? zav6wz$dofN9D!8>xC(1iQFS?EcN`o7n2``doH!tXbVPpQI33#Rs;(#wfE%w^Y z=dCgF^ItB9nl00^?;cfg`Y)dC+aa@m6u*q8-lH_#3z2B*jG6!0fwh z@IkcLnu{=2_W?O6Xd>xJDsWIh7=?7!LcJuBZ4SfP1Zm_qFkIxr%TPaEu=yHSuOY?G z6PNirk-Q+f`ukNgAV-hx8k&}rzjzs_3PVhigcJc7bcjI`S_mS@LmYGu*+QmVn7|ag zgBlnGG(s9(NI^OkO1GlZ&Q72$cQ}IlO(a;NQV_LoL35HE9q^zI6nwY?&i@S_4(0?3 z*hok(VmyCHNWq+ukl}~|QvZ7dG9qqJ_P-F>(FrmlJ^vs+6=~FjHZi{52HH#RG1HGY2AIHKw2eA!&dxq+ne1stCZQG8LAlbWu~} z_(oDGeGMM@gc6Q50HR>s6Z$Jg5_ZAEuQ5Fo9dxEdJR(#SZF0m%+{eReQWR};#DfQY zV_TgC%QR%@oasTHOfVma{rF(gZ~??b&mkqW9M0$O)g&?rOcnnSSOEmVQ!ba_q2w%J zH0M)uj^i&*19D)mCY`Z^hg^tXbtCOBfn+z*0s!==p;Iq3d|u`eHZPZ#Sd}=bO6~6)-R$1NeHMQnLz+{GtvrhzZzPR;aJGDQxpp97AGVw zzy@uKLX}bhVPpcZZ9q+5kO7vGDl!~ULbjZ52e7$_m;n`J420f%0?_NBfDGh;Iz>>f z1waLqagg_+)IPN2e}e$f!aW~EHOPk{l|eH-=X*^7)Ie`ZHn8}?_-LRO>Oma@dUPv# zpaPg1c(@J|o(90+K@S2M16mGlBngJh1}Q$2RG2ptJyH^6zM4P~*&)vNO7IO(8q(?V zs2%4y$bv=>*4PTr|6nLx03gTDhlXE;0%a?Zz5@uK&k+J3gd%{@jzbMU625xQ5MmSmaw5Kpe09;2j(#wpa2d(mI_9>;2?JZN&cZ? z45Tq=7SX&)1u#O+F$DYpOJD$p0IJvwN9Zs~fjQvOYd)WYF2IhM^JoKzf@L@Wh{XWd z2SJGE(0mL7YS1!U@dV20d>%;Q;m%By&}5MEH@4$2gr75qzq1{O48$QelcdWcn)p#* z0MY?lw$3Kj(gEA@CbllJh#|xle`lmTh8#f$NxF2v9}8QPhvC>vas*vqhOuQ4laNLX zS7Rb{c?=IC>Is7+^OhuvM7$9f1Ln*ou8)feb7l~?hX6HB(cuXy=z!jh2@aM8^anai zlF{UJO%{Pu4EiD+)PW%zj`ImbS1*CQ6cDL`mZ0dCHw%9!Njhj6aSXNmuUV3s#mi0v zpdKcuXA6-4IoF)*+i~uJzCeqh9fupl08`OLG)~VT3|c2;Kn`O7-n2juCm4W(5zxaC zK$?vkY?D3?%vzgP}|5>u-T!drL-koH303>m(VnWB#N9GRDmN>kN^!H`E~*n z0ucpPGm6|DDgkuF;6cVrLZCEq4qb{yQUv=I@Q?>>s6-;60+3{bXhIQsNWDvo^h1>)Tha=8w00pHFtcS0iGr#RKm_KD z4HVV6k^-W>2MDgqAQz5e9s+zg-=lB@Mu3o!lg*q9ZIC-9w##({oIWyO?#OyM=m67| zB;XJxm4M-V=|ajPslZs!@|6A=9I*y=F+DJ9okIZ8TE6sI&IAq+6K!^Jh6kBYfGTX2LNB|Kb?6h+PkQowHGh2l)-@kk~5^E54#mZJyNNa0O$^l*L<=a(ae^EbiK zMj>=&hBJZ$|9>?Fv|JM~sJFqup;Zru?}Pn=^BqbCwb1J}SHYyvyai)lhq{Skeh19s zo}MBMz~e}q6_5vv;|mDMtY46h48p@kE}us*ApzEm-Zyc8DoI=;gx`5luNn>i=@-!T z8-n(rl}K?O09LO6`3+4TE{fb7n#Z7KJh}N#;5EfwHLIn7yLK;b;%Ap$JdFVrcVz@Dry%J(sG2EKTToJLU#IYfZ*dd{l zf|;6<&_UY<22()Xxg&?@hs2?fBBB+7Jp4l-WCNNQ0I-3j!4Vy9bO1;6Biqo_0qR8+ zAiY|{y#ekJgbk!O904REDX8!;{4SGHq%jj7)HP{Tn=DWuv5G)A!{G>TrpJm1beBN? z;E40i!ry}i9){Dlp~xq|=??(}&_l!+lJF1E(_6wo7yI6Lh&YRZBS_#Ooz7%P8PF9J zFoD|fL_wkVuZM^}Bsa)|+R#U|!4c;ygTz$~)awgYqnK*|bs%>LKqi>870Gk>&-R>z z?8QBEAa62_abq62G9;s|}hwMmggm^#J>OkRDLDvIT|z>|tQI!V%xV-U~N{ zrh)(-`4kW04n92m5gt4ej)%+u=wLr3pv$q~z}7$$2KIviDO3=HE|3PuI4(`4tj^hWFA`ao<7>Mr>3Njm@{B6c?CaR%C)9Ob$qg4weA`tE8QUWcj;bxDQK!-`_FdrSJp~D;yUhMk++E1vti>wO(k9;Ks4H3nR zk46XSnDcZx2~-`VAD^dR{Yyid5#R^@OY@wk9YIXV0;?tlVkD%X|KkIALXhi(9&i)|95IAouL2(ojuFH;a%BL{&qX)3 z&g%;`gVz5)eD(3?m6;OGA>{?cy?|TLXu&sj0UIyimkStk0lhDv{smONfIJuQ+69DN zz@dwF*Dm0BD==7n?0GEa0@`0d)eCs%0$#g-^l#4b7cOA(1$4cD0vB-k0{>q-@8Zs5 z`WKM)0(xIS*$em&AAZ4)e`)2n=dr+xe3px}g$r;W12@FK4>CCYL0ae{1L`02S=%caSO5_PeNarp!r08jSx?5%#K0LyBlLHU z^YhgQWL@3Q%wl9&)_Fc;8bB)R-$!{7dH7$1&^ed>A^g9Fj}M_EDF%#)2u*@$5y+?O zAR7KyS)K@=8ZzRE9>Qf+&kwE`Fg$4ZI*y-#CV^eHhif_kYa9p-;%1C?yU)fj7(MKv zthAbY@|usCzE11tU#E(k{h3QB%eA$Q{j+yqVh3TGxGVNv3>e4~-hP<4604^Kbi8h5Lp1OZQU~MBQF~ zxTNiNIz`opM@GiK)58jTu4Ssk74BznmNtFLpj-3FaI#HL?WWwmq{k1{@Y%g#akt1` zRDSoaE{q8tQzZ6bfR*VM?88dKFK;awsHWb6p7P1gM?oxo)1J&LrIPs!r7ZC++}qrY zzQ~|B4ETv_d*Nso(%s>Xgvgs$3ggKck=4&0vzK+V_$oN|hRzT)_JjnPd#D6*y7|J? zmoI6I;0`0a#vBbanZm-9-^uPI(Jc*#SNir*J?y0~$y2F_oGsBg`mm2lFCADuIJOe5 z@i)Jz-Q)KAS-sUnEc@Bb0(o04ta{gO1KF3!m9OI!NQOwI7AkKys1vN6-i>`RQA*61 zp-k|bB2I3xhtZ(w@XOP(M~GZ5 z;g$H<;y3%EegEt?fsppqwSjHz1iB-76WEmor2`ULrL2ZJ@7ryxar9Sa#}lV~wujs8 zGP!l#2*-8RGn1H{;|^?ECFxXg>9@7t`q@u})1lglPv#HT#RLj?!u?b^7yat01N^o} zT#zenE@1~Y9V9+6>X?s;sHwGmwi=(-Iv|(uDUs0+J}&8C`|eKk3Te<7OJsCoqX&nN z>U?8xtn$G}5_BIU=;%EUe~h}D%u)}To3QMNiYiHEjlhO|uEKb+ zf||KR#7)yB8;Xb`^XsdQ-}Q%^AC5Jg2_z6$Fn?&Vd;QiPHkf;?zJu5-NP1Un?pvK~ z;qu@{HfzOWTTk)hL&By}567s~cP7ZSznMc_JQB~Sm9ifhx_jS`5>GQG!#dg1mSk-_ z+MY5xUJWX{@;Fd#>(9)nyFfURd>>-0RyMSWwK;vCn!H;|B(b>i zctMZ@6}~`u){W4nqJLtNq858_lplIvrZ*c6o5hG-baY8*+20Urlti`pdOKR<_<7&; z&>TTw@}2Jp)5Suozs(u_YfR-2xW44YK2k!tZPs=?A5`SmT7G5a<4T0-eQAZlZvuxq z`bl2bXT6d=Zdn2J;z!J<;J8SZr!#1bQMi0d;tSU7*L70gz4%;S z0j^%3eyL3y|FGRp%wsW{u?h=MGHo3kO zC;^Z4ztS*xVzkJ9H0)P_ML+OW!;^x;>#&Uvf9pnx=gCdmMd#JNrw6MF+HChel4I1% z5No5_I+kU+U`)OlhkEX2oPw2J2rh-p*7B)WHrG+_%E<>T!%@4lHhF_@Mh|U9&IT@l zc?x{OmV?)vs!|fcp7d_uRaneTelI3kuD;lbngYzjtS3V1*Ub1O*D!{dKD2Nr>UHxS z9p@(TmJjKOjem*oOlnU{9Z{5(?XRmR%UEO&{o==H0?6XgZzGmbb31nntcZCMIV8R` zFK>gT&BO21?!obd0cxsyXtM}pFTe|)fTy=y2AFO7`c_8;b4+|guz?P*FqPGoze&#(w#%^B>zHYoPc&wf{p z2QJ;liaEg9AtA0Em{HM4Y{^pn@-S!MyWB}*h@e24C|=?HfZb&8cBA>8wn~z*OzvCh+)+Ql66T6RNd#=Rsg*pQGLyl- zh5MD?_}^Ox$AmP!F7^E>N4UDyHzoO>X#Y~{DpWIHd6$w+n|`JgBTe^iDb?Rmm{BAz z>5ZWX<dCO(l58AG&3sMcz7AlQY1G^zcZ3Am6Rvi)L^9y1D+65wV@pkM%mF=IoUM8sI zUpKej%cvwVo*xKjN>t9Sir$Zz%g$(-dpXO92ncTmKF$WyA9aR&lPZF*W%%Cf;y z4H!C=bsZmn&t9AKzLW5<(M5CgWV$e|T}dO=kb9r3&XbRdlzgmLvTD^x>}*(2xY2Fk zBg_0+h#t%EAHfEDyr=uuw{=*R+b2LN`Fu~$$y=J}#!-`LKoL&0Yw%DJ(^gv}D$UPG z@~gN!PW;0N+jcv@6PEi}UYy9uq1IPbt~wPTr$3jxb&&>Jl($s=8!z9d7Bkj2MH0E! zX`H@TFNcaZ&a+}@6y{~qO}oGxh5H9-Za$fJcc87?_9Z3;dZzT=$IPGACP7%ZNR8Q9 zEFdD1S}dauY&!k=In$mLq5P30)cLf9oBidQCv-QJLsWAi$5+_!^ts8XWn zlPw#zrLk2j)Y&X|k!sxU=-oqne5Nr1PB{SCY&n2;zI5$tHltnbJ*c4ZFeQ8E& z_*Ey?yS1~15v~`*PnO?k#ti>o*~>gHYX*eD0e| zZ#xlm5{4w}b_`s|AQ=_RzS_KS_SFp$Wv;%fri+!bCqTP&JhI4ilk9Avp<8-9>!0-O zF!Hqti{Nm)ozN@4de_Uac@x%Ae6gJ_Q;}y^A~$^wjsEOYy@<17&_sRUe=$@0^6w3u zaI}cX`%?1gq@n=TYP>UFL?xw=y-%xoUyW5XhXu!}Ro1!qenIiEsK4T;pFiR$=DA7g zT52mOiVa0}id{~*nWoC~!x}t?4Pb`dfdpOY4*REWeLA2z?2m@u zUz4>{XXaV&pSQhNYK+9DC=}Z5R*wYfgCvC3s2&2bMoH}eEEP&vW3LNg^~#>m8#?aK zCmY?b?yRIv&aVpxdf6Tl#^-al&+7e%80xaut}UZ4X!wdJ8{t=9q3JwX?0_?K#zx>p zY|P*z$FH6>&M01tGdTallXVMNgil`F2s{}wPi6}b(Bi}*n}3(9ywJBA-SqfZ{9L1q z|Mq3(KlqF0?VlV|){^vuf=ll)j12#(*Pm1vSECm#mu6+T#V$b;(8TbIst)n;`nwp9 zs%QrO>W6A4#jk(3ueGBxuC^At|BX}v+pbPOudSnJv|!wZo5g=?%_=F3NX$tuEDa-0 zP4@9aIc!*rPC>w<9BFG=3XG@Ru8~n3AJw~g_@^74_v>7KJ%qU98Xq{7=qEwzd82Xa zQpsTnkr_iQFE9VGXY_!Pq$h&za8>zk`Jt|w`hyP&>>+8Dj z61I9c;)m*ksA@z*?ireialS zHn@c9UKR=h3-;#OPPvdS+3hd1{PUZIwr%x690uG@vNFxe2RnY1^QhBhQ%06U%7?r+ z+)r5T7R+YdXSwz(35Y2h?fm|*aOplZP_ND9x7^;9;bvqx`Kr0jbxCNKRR6&z_3rJJ zZSoP(xmO3Dxd8L;KEFf?$e*$kLb=8SZzJ{(Snh53GbIe$seVFx;TQ5z1 zf7+80n24sisD#aT&7_SVSuxDI%e1!6WT>3y;P`egbi?0vD#cwJ?rR)L^*;?N_-u=p zc{SUp>cD!*c@m*VU1FL?(ArN(%ke7XY1W|ksY!_Q@Uz3U-(p-71-Uy+KU|v0W{Qg= zUVN{8Npe%=iZ06Egr&)tFP%d${!iDEso37;x|%vUd(GM6t=biNz0;VC<{Hj1)E)8$ z=A#DE1PNpc)`aViojzEwT_I!B0^Xm^_ITGD?O9eF^utq@FPjLHa|oMD?X2%V^NE>r zlsx->X`@{K5y*$yQ5Ta;KYOE5u5<=>A7t^>sU3s@*074NNYL zxMv~rp$+vo;E1}Asx1*(`KxHI1V7}uhOSm1=PLWwY~}c3b8`-5+GDK&?fI=8sy)b1ml;5Fz{nzF!`XmN?7OQN&`LB zu5=gd9jV{;B;0#bqw>$}ikMQi)j4 z)9qcT+EZ$G>|2@5KHOb!&{WEh4D+7|vn6owufr1piQiQy_)t(U_OI5t`6}DY)7!(KFqG3osMrP z@vUS>Lz>_2X!O>B%FI&Bd)Jgt;;r1 zcg}v|9jeT!4 zXm5wfpCy>3Yq)!}VE&9j103$&s>)cET6*}X69JzL}j@A`m3|sSJk|U|5c~h;u*86HM_PNcOj4M(Ff&4UXf4VfH4A~r znr*K6`7PnNd)=9q{q;L=YjJkk*#2Ap^QFwu#f>CMd1LcJB(U@y*F@h30Ow@eR#>U# z>6O5#0%3>2;Vb12UPec=EY59{n{R*{QQ4Qf`m5jZtu-|;LcBM+)c^y@?0n*k?xpo& zTi_L`9r)RgW4s`nD*iCj7(;M+P${_G@jiC)P+RotK?bA6$kb+A=XU<%+xG&yyNtDz z!|k#;xP_asWcof^{bkJ`6X8zv@QNBbot^H-uXa@y|AAVvo$)hgc5(LFny7jO9A(op z>*0&pi=Q)ZB@f3YcK&ctG!tZ~36c~|fHyO;%m4QC427xU&glag+rlX6PJ{c`4F)s6 z8%&4#%c3^&l2V=T>a=dVefx$H@Vq6=#ClOQPbTWCjo@ObyKi#~e5K)tO>&tA9*h&v z_w;&UeQ7!)Mv-l>$AfdbL-xo}9$q(Ic-fUB-EHtzT=eCCxw)!BY|PH_@M-o0$GHcf zmFLW7O$Mwdds&=io5O_lz~guun6YXnoet||w<>yB_8LI;h~T9=)P6Qk>Fa#x5q7o9 z!OE_kUmkh7%(936_B*0i!W1E`DCCykz16PwYz${{9cxnk4-%7F%V&Fz&TYQf%r(8P zyZiTvVUwc!D&zbfbUuBb!XuBpPhC!yTPJOYD>bYgu7nc*HB8NC`v@?K4?{XUFHN`XsHm{?bZ~{;NJl}EvJvATjLA!i${zhC<&e&7>*KG3#fXEPW6FhsXaPo4bRzPJOHHa9{eg4GGU zJ?~J>`W_(M&+_-)zb`v|ZCt7Ah3PoCAj;BhtTpYr9xhx0&N&1gCc1DLnCP$mhgKiJ zhKC*PB?M^f=i`?4Ff7pBcsjUxtTBJuKh(MMtscvGZaA-GZRCOXW?!_61ao`&V$|x+ z)~28!WrQ9JmJi5%O*^h!+B0}5beOgT)f-wy+}L+m_%$;QgL0(Mf>8FwldsLKk~~W- z{;|&vB}LvmiZ2juPv}$PHm>zzO|q>%`Ub=wtlchRDa*{O&JVqa3S`$Cp&h z*qiC&t!^`Xxf;%UBc{_mDl&kQjD+SIsGoyosE> zQW9lL;=5F+VdShREU&_4)FS8l$0eS8@i%9-@a+mEH@20CzPXsIvtYxQxw;D*oWl!DvReil< z8@fd?&pvr7=?hqDiI@J4*v@pBnX2Jl)%yT9iN193TY}9>zap0GH;}H&9PFs7n(e;*XTNkI*C^+lRy!qM|IfMYS9Qfxo$+~L zT)uHtY71#3fa5a035wldo?wI~u(_|_s+eg|s&j5G37KG30&f-rP^ZMiNO|pSL6`j+ zCkqow@^^B@4`kFM^|o;Q!N&P?f>9r|v@UGMgD?*biqDj2h4BmB@Xk?XzDN1LjMrxcUTKUO!b7tPNi1TLX_{oBw>P zbkxm;j6cW6gv0&y#c8pNS`?hCoBSQX>rOB5Q+?3Lui?!x?zHnPM$b$tx3~)Tz}0VPT=eJiLd8TDx4JGFU{a&xg8~A z{-G*TbvRaQYXap(AnCW@xw~6?i?f)jQqPMv=W>2bH`TBpCJ%og)=}}Tf*a%3;*sA< z;3q$`IL%k@+U$^9;OU2+TpqkpQ@FRHF?xw><={r7UY6P-YU78DfwT{d3z;*Df3&7{ z3!D*h>>9}#0({^~=2=SUt2~jq&jUA)R>bM%>RAi2|8jA+$ho}M=_A+*avY-GZa>z` z(vvK`3hZs{V+p#UM^d6oBqSU6K1=d_k+llle-kx3c;IGxTUt?eoK~~5n#X(RBln+J zR1NK=XjX?O9@q`QVduNwf8%65v?1)z?-=2~eCl_N+CTAaZ0t3j$*cq({P@uZymph_ zD-U}g6k?BfnZ&r_RNRQezc+KR!;kAWk@7xnG1jP4{qLi1_n)Ud!z$D?yBn8E&>ZA9 z9kPA7xlpWDD0&e%Q-gr3I3+J*3Tt1?{*rfH=yqXyYUuniFepfB=8mJM1EY2bh%aU8 z2HXgcyz@C4G{C<)u5tUGbL*!eW}1eKo!onTXFCMi;I2^Tv7ND6t4c!=xr*fO6*8qx z%u`$;-kPAUFEZ8jlO()kzi_s_JR*ij8XWyMy%s!&EIU7>O29WUC#ZCES*+Isv9H=Q zN#0blkqC5NO+2;#Dr6gVhcgGKr?I+5|H)U2aLy|0X3ZxiFf0n#tszlfL!yLx)oZUM zZ&jITwr?U&M%H-$>wA^Q{t3bZc8zRj1C0`W z&j+owaOs;|x18fs>qYnkj5Qefoaf&r^M^$u+q!b%>z‹-mxXvb|cFGb|92CLvc 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 BCGh|N delta 5856 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 diff --git a/runner17/Enchanterd.exe b/runner17/Enchanterd.exe index c6706b00e93b9abbc33ef7e054f3953111580263..c91b81e873a854c8dd0ad32babd6e3ee5f016062 100644 GIT binary patch delta 51048 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 delta 8663 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 diff --git a/runner17/lpCoreCtrl.dll b/runner17/lpCoreCtrl.dll index dc89c80a5f4645762774009aa1c6af0153983054..7ac97e3765bb3acd624d6f4512b4d173fc5d64b8 100644 GIT binary patch literal 274432 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%0A4kYv?8VW1K+)w^TN$3?w_RPKh1%|9 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�)H;-weE&phij9Qjg?vw`on9J^EO^{Oy1hUL)Q3%AEe}MM9?*TG1y4# z=wE=t=rTkkl5G8$304Rby^ZMe>#_vk2YT-L`Ms&g6#bp>Wp@g>k`ZtTXOoWz@F3gV)UT5tU?ugd~@OoKk(u6TJ82`Y&(2)e&g8wz-jR!dU zRLKELW$+p1&)ZOy>E~f3*nnc!4yxmWf<6hp1)sSWdMZo=04OK%G+8W=`m|`{_C}15Vt`6w>HJal)TuU!M#aUKMC#~RCPjdZ=b58f_n#6 z9TD7{Se+am-)B{DZ*q0tyN;JzbtPyNP+lCgmkwh+us z4If^#?_q8lt7I@`6lr3>Xdg4KldYfeSspo>?bXJE+OIU=}^23P0DlmP;~DpcjUv! z^dXPVWkPw-anK->v#I@xv0X~EvXc)YN22`f)J`aIggDlGv7A#y%opco%q*F{CouhU zStC1G#vSgvSHc8^msmst^w;o)Hf&J^d3&n!7Hq0MIq&M^8%N2}{^@)oW6;fkq;iEG!L+nW(XT(5hXLE1liPkLpp)V;=+_lhj5-ui>ktu=ouh_bIf0bW87UnwvOPOa z(T4S$ymeK_JKO2Kmi0&W*9~#luDNl~C{yvgt87doZ!xa5C!+qT|E)$0yEg2t*JUMC z^@HK)R8kdoP530y>IkHLv+`jx$Ne(u{wGWeXt~^Fc*;(}rq?YC8*7fi`@w@zGuTeP zUf0KBIrPAwF{nBXPr%Q^-s8T_2^^Rh>nuB_tQn%noJo4W$3u$6+S+1V2(xfgbrQCU zW7wEhnwbw;+J^QiU`cd!LawBPj`wloQJM=KkJ(N)TP7l?hyIGH&nuA; z>hq<)b*@kQeK4#hVB{>-*$%r4;!AbrpgIqNwQXKzv9`WIYvi*OZ|N0zR=pk&{JPIP zEK{5H8pLf)t3)r;sFF)_y;N+^29+-LdH(3{U7z(3!YC$008(F-&U%Tq6&HdnyaPN& zEmsx$(KWdjKFFGqB{mEsvWlR=m|&)=h=9}*PI$^@_G|+UL9UVJqzFCL11CuZRbnIj zzlmY#$rgs--T~Fvh>z^UslTG{m=tc@Pi!V72@nJ15>d8)=hIiFE{6b13YS@9w*`y;qw#b#~h=(NiGl}^Y$^rNe@u?j? z*74V$C|u}&*C3^JPqIgFJsK0&SrNG2Kyvl`4{$AUaLq$Xl8CJPnAD;ayUhq*+(${& zm;nf@P!T`WX&Cg^MrJ=`W@LVqOSePZ_r%>GZj-priTitT?-uuJai@!0Chi1r$A~*x z+!5ls#Z46V3l!JLWPKT#?})ob+?U0DQrzE(d%L(najV6>MBMYlJwx1a;{Hh7Bg8#W zT-Qm&|H+AT+r{k=_cL+-A?_}5zYzCZaSd@3bC@bgT$i~0#O*KcKyg#Wb&Gp|xCe^s z5%(Z*4;J?jaYu-IxVT4%J5t^x}BW|9!HZrT_`&x0Y6ZZyj=ZSlhxbwvgin~zUTg45DtBD&H_m|?{F76%T z-YM?g;@%_fZ^XS{+~0}&fVdBd`+IR8756c5{~+#@;yx|zGvYoc?hE3+B<>1vUl#XO zabFX+N!(T9z9DY2xNF2+C+=I~ZV-2)xSPfOv$*ewyH(un;=U*D`{I5e?nmPOP25k! z-6ihV;(jZxA@0G_A`TIEgt&)`tJ=#*`OXygXmO7bceJ?2iL2Vz3G$sI?n&aFEbbU_ z^Tbu{@ih7Ni<>WQp|}&oEfQC?-x7RBbt|2>NOYM`U?DA~>-wxR@ZEg^wJL68q>=Yt z0aU;(`0m{e0$ms63@jt9ynbWJ_qxS)P|$k zo81NvbTf_Nb6oH{F^zsT%5Ql=_{>CfKaK3IRPv9RTy+Q2&Cf>M zn{=3bzLJ*>rDRK{JTeMs03d$BQhp@*EvPb@p$5_m*ZQ;?r8Du_W_T7OUdI&GQ?5p= zI@zVsia=yp<`D8Z!k8HSR!m%FZ7RtChv36WkV;bpius8Q$G{gvVdoK&aN#B0jD|25 zKHG8cI&%W}B~tyd4+_cal7yhCq(a*gT%QbH`_*C^?yWqEwp;d|?;gi|I4dUke-uap z4v~bsVH4HU7XYb2lqC9#XA>fmscjBZLBey#BWl9|;zyDQBYvA=YZ!uLu@!|WY*TFA ziT$=9z2khv)~hIbs9`YPB;dz!&9XQ=HKP(%ZH&w3U@&?^ zHZ0q;HvUjUj;QwjLjy7%_eGA!Y3s@|JnN2SJwx(P8RD@P9`XsEjx;-Fy_I@t=>_mm^V3Z4PAQaDyCSR2N%Pqst!h@vbD!yotCYvvqd0`R9 z;!8Ft?YNSB@fx1XD2&`k2;QL)z=Vi-DE;`2@H_C$4T*h$;aG0WlFW{agI$;e4EI|Y z@cj%aHPg9Bq?!^|aQfQwM6j2FCr82ULonHnAgQI4ZRiGA$a2!*gFX}b)G`{tzbkzt zL4AZ=%Fhz`n%kR8L2S2+u-5#k6g^R!nm_S`JPl*AOu7+m9NavK8Ch?wzTTg`%>d>S zD$Me$#r$v?XEca ztmi*CEh7whG$(1h!CK0s2T2jwMq$7g^s^4x#9jXvtBaSnzz#-4z{`{XrwOs5rIGOI zEV~r{G;u&*M+B zOdjH>#FyX!F5~rD39lQa*o=9zz%_v7)6$OMbR~yh2(G}p(uxnzlBP$Bcqna6K>(b~XE!f=Ot@u2(bICK7q&bOPF>SDEYC$X7uiw3#W6M*}>HwQQ|CCGWke z3Tyqn07{FC&~j_yqlgmR&_^NqwY*HhqWW-u!BONDSO;t8rN>GSZaqD5qLMs`_7g-i zR^`1{y%g&KSnlY~ zf(I@~$>#taAmzjC8?y1vXr@SmSh+Bk`L)Oj3Xh-)1Q{^*AuAibAgSTfh?SAZ_?0b5en>6hS}O!)*PV;_4U_%%iW`jTT%F#XevsN4EfowjEj zExu@PFKj^nplyVuFK1=&gVO?=TTBCGvF5r*!kYYA>k1#5WAMY%Mz2MLqNpogFu&C3 z%VgxCUUSrU2GD_f?c0uUn1}7iWBu-z3Q~q*sRt_-jp@ZnE#lD^Yf7~x;p8JxHI5>CbjO}#Dway`5(Pf zfypN}cJ$L<0?_4VLxqeua@Ob%9lK+hnNeh`R7t}gurK*H+C^d^7ag49Wp zqap-ewHfz|u77MxOjx+)Whzd0!Ky{B_W|qwLPhAm9$|BDsD3MI2(0W6et!fs9Xl4Y z|BHPzMD_c%<9-cP3EEcoLauq@!Zi1-Pvb+cgIa;~WZ@_W-hfEGh8ezd7^}RRCA^Vv zv%pnzP;)iVV58nlOpu1AtqiuEHX2Q+#X!SC!{ma6mrj;D&HT##+?@tp?mobE2vEh2 za6qaXVRpm;0vwP!1i!0Y?`};@NR;YF|1Mie^xKY%p(`SJ-Q73pA-z~@GFzYPjRD^o z)z<~4yY}D%>t-*=&!DvVW27-&xLh?xe|q)VSOIsxnb5c`rUgK;ikd;{-??V8&I0yy~4PKv-FppmY&=C9Lw~w^T z^jP{LRymZcEZ(ZWjb@Rv33WFRL+E~iTRo3&5ozos1}c8-xH}MI>orvsThAeQ>YJBbPH;{ir6#y>uv{GX%nZNi+eNSW+Jn z-;*3)wQmiw@)$zIF5p#xJK^`LhW2fmKoVO1cQc?Ad| zK^Nc`BRITsS|d?CueM+}Fx#25I5f7+*j%?VkkcFpx%`a0d0il9b0Fjy3jq3Hu#%li#P=(SBNF9auo7&AOk9Bwk)6M)K+4X1%db`WQFg+X-zzqfFLBKk zWaoTV6o#XjCx8&j&XM>P*-5-c$kgP+l zHGe`fk&X>YB$Ci6)!{^pzL!F_&qP2FVT^=P#471?QMeJv+wk1#VfUTt6GGNhVRud$ zeK@R%%w6d`ZW0Tp{&h1G{shs2Bgv&d34FXthG#T}rAK!rk!hDo+`U6Fp>rMj1_~ce zy%S!V=Mx4rhFtyN8A_6oS2^m{zakk`QLH7mYOYUTPfW-UB_|r5l}In$bNk~5MduZd z=4{FLW~2+|B~%{}9B6d>c*R9*kLRG}b?gY{8CCzVbJbGI5#PU@c?YziEt;zmdHX}j z?7;uF31o9@fbA$_fG{%4sBgqw!MH}|06Q9WE7-k}{@CDxZ`W}^jZt%s>rHs7fjCk= zs&dIf>IHK!zwvy0pj6b|j{m#xiOSFfklN2!M&`YC46_b` zg%=O~tO5-_eA_gPBo?!z#%yFCPSrQE?#C-y1|l5hS{^egr%yO_4T7x{9y{|`M8Z$( z19%KEG!y$Wum?X>W4}>%9;~6C%N=d)*!qL%Y7uRN`N?|NgCTTba>m79Zds0kBorRf z=-<7iAgQrnVSaKIMy4CENlXsPzNHWLu=eCIoV~FH+m@)VzsI&EXa95{FLnM(jH;@K z1e%)CF5cZ_7@t@7`FvHNX-!)D#-UvV5xaMa27@1=M6>VYTALTXIrNRVFEyQVxMc`B zT+{*i9o6)ty_RTxuw*Tmp)W>GQg%eO8>w${p_UGdia+=fR@Bz`zf4HRUaP7D{Wxw~ zGQBi;_m<+Mje+Sc#UnQsOE9xGhf6{lhs~@%5*S0U*^2T+{0$dhuVpcu6fFE8MUXY&N!Ru7F=?wSbqdLFW#~UTjz0z zJ~(dUdSv5X_&oA%b~OQ@2T~r5kwpb;LULKpDax zqo0L}LUdH5=U1yFeDiAvPe*vO>vAB)7$L!TB8P(gfzY=A_kEs^{d2m9NYQ5na}&6w zy+zN2@&YCdo>w<85e!$@BU`Mc{^}|mWHL4yu0I2v@U#68U{GB|8_KlLdIp=n>P-jV z;$51n0-5G)U)XrlkO;o|P))ozza`}IAzUv;VSJ1CfVH{7ao4?tQdgg(zXI0iC#J!9 z6+8`%_&NObYXSQfZ_vL1V{!B$$vQOpLJn z?bP<-kOpQ3?lGPv$o(dmbJ}-;x8d;yw=x$(?Y)i->*#c=2f(71O$q22YIqL6lH2Dn z(aPq2SV{qEaa3@7NG$e^EtY!$?F3AsS}W0@Q?+35(gf!1$uu0(ScsjRC8 zTLFgWkt<-yGpbxcBdOYF=UI>VR-RSIAf?+Rx_`Jl5mu(`j-ggu*!zG&MegV;7Q<}l z5hy;Mwesx~Q>D`&@daw;V-?^_v`&{Pxm)o6D`$u2PJ*u{BsZH5f8lx>?7mqYR zCqVX#aY~BzOH)Z(SJAYi)pWjx6=OW)n}}lZf9lVW8`|H6kTS?<-dY*gkVsmI0>Pi9 zA=Gs&i40+9ds85ER!Wo(=4SVm=&v^7cvm2Vh5gAXIcxa3Lx|hN11b8B!ED*Cb_q|4 zt(TdfmDd)D$lZUg7vz)KMyPRT3?%uU7cbx0D&NO?o9_}Q-|AlE`$4}r<=u;8B=Jg# zGCd~ggq6Zvo1X{^n_;-JrJV=2$(A?aUmfB9K!pFa2>+1n51E#?#-LVRd5nQeU_yxy z7@*aEj%ezjJG)BQRQ1OPQkQmr&|Tz@YqZ4qN#9O52Y11F&iBQ6M`xVeUKveipWfgM zej4D~gjfG%f9ZC%KMq>OqYwy%pTbi+-n>B)FYgalyb;myaBVh}Ngv7#uE$#>X^FP1z${Bp{v~b{BU`{U3w$en7-P41ru_l{(5%3wAJ5Mv* z;~GIxRo1wQzI_s^ju=1tHgZ ze0KDM-y8T?&Z%_X&bdeBtZ_exthKM1vz4v8;iLX@1|nS_q`QkK;4^eiWwYxo=qr}9 z+0~4%zW8F$A#=+3bLgBifiAH%(Db1k5E;u_olY3||z`EcT(efC#EMty?R;Fu8@o=S!Q&)7ilBD^IX z2#4DwR3h43mt5Wvmez=uI$AY8c9{cBuymGOXH@j!u$_{`4R!CL{A#$VmlS`P=Jj z)rSUa(vz!)X#sC|e%s#5KgLOgYuxj{O7Pv2=&Zd3(Y`xjH{VzHV&cTY{D_6&;_zYk zz&`b4f-MdGlM^`4kjeQ)@av33R`1Xy;18>2Rek-UH-a3XQz-(N<3xY4(abObs z4jz=4Ts{N^_!opV*C+f5xym_(hK}&zdn&w|T_?haR5ZJe#TNyy+4U3iOFgi9StAgp z9?z7`$%)L_@z+uhd!C4klf9NFdfn7S%M%IT08)Lh3ycnS_j*w0l1IawyRAUs6ZFbd z!DLn{Rj7oCGB^~~0QRJyfZ1A$@Mkw>!1~`&ES5S8rTz=cA$yY)f375~xtjSCa^)g= zv+FRpiYMv#Qam}*{IZHko(zW{mXfkz{YNWJ-EM%sjO0lAqDv7Ql6NPdywl9Wm~}k~ z>fS7j&n(O+BLSn>kfEW8NbF_e4yN^V}AV{qRfNU4y$4ZG0Gla4VC9WzNsg+mA4mgkKG?09TCRw9|v95njO zeMTthX%_)>l6fY_8wk!w2QNy}@jjP9p}~=uP+=P0tpS8{z$fr~rTWI+F$FgeF7zT< zTA-=T8_2Aj?IMUImdR;e)Ka+Q$;jDP}x-K_vmB^Z3&+e1M*%N_I-CyZ!Z z;|6|>ist#zJP;)V9pH=Tj3D|&)XGNY`0o-;%@4nm;MaZ>+9^?ESUe7}8V7}4e)}8w z=$;g|nUrLGRf2r<>5SiXgdHD(Yt2_id~_gk4UhZlP>fKA@RTzo4`jYM4MG@Pg*!yw zpWUt|D=2?g@s{zJIZqk!l1FeY9~OCpSZsj zw_e-_#eG=ZN5ow!?&IPtj+!3`#G?m1N%9!p9A|ju%83_Ik2At`#G?m1N%9!p9A|ju%83_ zIk2At`#G?m1N%9!p9A|jurE2_?0+`e_9fo^xb|~kKL_@6U_S@;b6`IQ_H$rA2ljJd zKL_@6U_S@;b6`IQ{x5Jq?sF`|o?tKDp){{X)XK2mx5THfd+%Eu8o?3W;5$aV)2e~+ z;&N^vHZnJDxAtpBmOG#=u0eSFygz>{#{o^4C&JnfGyP)3M|f`gh`*>bk>S{@t7vVg zWVTvKxjr3e;%-WH;^$iNbGnO<@^CwN`_^|<-cI_NR{Agg)J=ZatNLvn_NoT9nB@(p zZUqefe7-d%f5MAPi5TZCaIa5fN!2&_MgF#*yV>TSz++7MKyM?%PqxCti+zNTd)LZe z@VAd};0lJPIxrd8{_S=!sM)*|+ZY2Dq1Gf^s-+|i*haGq) z;du@${J+A1aaVLg`!omk5-u@eyMBtpsbk>hU!DeZ4Ro+0+ox~quCl>m@XyEmiyeNJ z5+3Wo6@-s<;7Y=WI&dxFK_(nY&z`qQ4-cq0^i1p}JIr-x5R;ko<$B^ z%kUZpt|L6tf$IsEn{Xt(1@QCBnFfd6d%F{M@=sgLa}w<@wc7M%5zg6Y!#==}?|X3* zPYn4EFRo>LHe!a_^fXY+(Y~|wAW+3^-^ky~^nY{mll-5v=+PDnJR9X8e$;n1)XimIH2GQ zXema~AW8P_MkI?;=(yMw$2!mqUf5)!Ud}jVM4Z3qYPk>=zo!dy5|zJ?xMa zM@35u4j`U**(snXY2=|9+D6?$@+I)%W@<{>if z4&{A4f$1eP1K~qk#N%#yXstZDiDTGDP$e;5t9TazX+I(AHX@D1q;C9#f05-?^j6!b zRe4Y7j@~`IvL=$=Pv~LOJA?Xw^m=Wiir#nE{~Pq0`m23Iv_AM`ovkl?)EAqq_G|VR zD^1wZS5z}-YXN=po89RvGyTmLKDOt`I-`Kh3*fj()iA!l7zlRYdKVm#JfA$sd%ybc zQZ>8Yic?hRH>Lj^`lbJv{{{AzY>n|9OAr) ztAnEB*zL&+@o(@F74^||YfXKT)u|w6f5P!0@Lk+ne8*V$w!9h5m}q>%y5ckI<69_5 zQV#wJzdm!|3J~4?oBe#?Pt3BT&Vb%dXE;CjOMJMc2XVFzv`JkNn!318vBZG@*e z@J_-d4lLuPaSklwrQ;k}#!Dki*p^p}m-@r6^LXj;?u1wI$H)8+T_4S_K@MEO@NX>n z3NNlC{HX)i5`Nc&Bk5^@U+3}C@Ltlh$m#z}iND5yD+teYV4XSjtr}kL*!l@y^$p69E`Uve=(Ko(JUM4+KzhAAf=_9||cfVo6*7!;d z97=HKLsNRrCVeFIp=jP~TcBWUt!54{@Kb`}$|vj0;lNKBiP?4eL;1}5o81zJztqnt z->i7$%U0nNV}{%Ei6g1OwnQ9aJRms3`&}R$X0Z*=P^9WXK64fR9Vko}@;TmT{_W2> z{4?p@gu5wX#+Pt#vHd19O=K*{laKf^?fO>m6^_0rW%x7)t{`0Ez?Fo@IdCoE;~ba; zZy({n^@LL$cp2eup=U@J=xHSUnFF^He$Rp12*2gPI|;w)zzLM+CmmSy@%;|$Wq8t^-#PzTAN;2~Tz4TEfL997#_u{5tF7#i*wq z!t%`gj}Kb+`0d?VaNj z4o&bN9pYsnmmpjp4&b;c6fmK z%`?N0zrZhB`pSg+S?$qmPsiE%(zO3La0T(DI!D;!wae;ioaPl*Xf*8dpzb#6b~P*2^~zsav+ zi=XEBZ>$4XkiKIbxRUUp4qQukkO@c9v*-1$?Pp>y=~-^ow@J@Z2d-d#OB`6}S>(V% zPmKfDG5$;kt|we>!jbeAz^`-rxp!sv{IkUC8%$+KS1~nT&U4q_}X~kOIf~Z4|lHVWg{IXU2QQgI7`FjZGy&yIj_6O);eIxxuTw`E++aCy@slp$Rm)?u;_A(Tj zi7fuS@M;tc{IlYv_bL1ndk7!ZL->Fm!gstDr+jAqYh#C7`W(~f9qKl3x%Uch>Wo1G zc@y`}W$1wwT!#x-Zoij;(1QD}tO%aF;DvWq03$+JMW3i3*JE$Xr7XRCw#bn;sTM7a zQYYxkUWq4is1Ni#GX9I#KK3a7&x&3Du!nMdaj;XrraWwVH4Z;nJl6LgV}`5s2Xp-X zb{Cn&dPiyv#^>dBeyQ!(%J{rbm$;_9nfW~!I~?{{(tn=So-~o?_H!F-`83n7?V&u6 z#|t;*XK}pnfXUw;!Y9THFIVYD#S70uczd2xo*EVZ`X1WDwpU`-kLtfre+@l^-y1L7 zEbsL_ginbbZjW!o{)0ARt0MWpc%?#>uOVK2oAP;Y>~O0+du4nUW$*s9A#y4v5iEQ6 zvLrKC?d= z5IaAsyypC~!km9Tg#JuMq`PscP?z~<1v19`^Ad=hMB2niB(KX~rt!`kM%ueih=-ty{aB?xsZ;u0c=H_VOA=jW3QLB>N* zI&cN(Yro%tIeuvmJ8&)Gc@A7h_zDNECp^u8mk};;;6}pZ9JrP6aSq%@c!UG*B%JEN z3G8paHQO`FlScS62bTWyz0U0&^Yu0G>pb6>^-?#DpZr$(y8T@!3GxweDd~CBfh!2V z;=q-JpK#z>!uOf5t$#qzBKUQluWx&?ck~3D@(Mk<4qUY3gO;ycOI$2LCO-o^RHchHA3^{b!nTK0(e*~&ha7Mzid z_~AuBtMBb0`!{X<>FwGdO?}={D%Jw8z5Y7%Ia7V-G7cFN=g-F9S^uNFO8-9>nTd*3 z1|=u@AD6`{{m)1-bLfoUvTx>F`0tK|AK4IpKMVit?(xUa|4137|KlMrb+WTwilRY( zpQO^;`g_;278fGd&dl}B`56!|eU0Mpws`eN#fkDY#0xk1^El>h zG26!ymHzs8>FZSZlz8DL{)zGMFEz^_FMYiV-y2UpO#C}=_hn4_&GCFg59uF|m%dTu ze|-<>XT?k3qSBwzL;6wi(zlxBk5~Uz`JakY{w*qfLl5a6kC(nprN6$1^t0ln*H!vc zdPqMiUizIX{oZ);W0n8OIOR9P*TxA?op%ZBBe_r69@5_%FMX{_KdXoIQ{tsxq|%S-A^q@p>FZSb9r5JD ztHQTE7N`76RQTgPq`x;_`g)aqRuAc?#7nH*=riSeWe@4c$IL%s{%h_JvF6JG{e#E5&X=wA?ro3R{g)5)x4-oV8!jdM zssmRLe$s&}3E%I)wS>bCTt|4G1J@J2!hx3&p60-fgi9Q_mGC$RZXaj4*Ajlhgd^!$0>94oo*fVOj-GO-yh2aFfh(9_t^*4_Sq?1pq&sjOfm3yhPIbSNL_d_ngu*y{s?HFXFaGAM)e;FJ61dRpG;9hTHU+dsD+H$W2dsARZS{ zpEDJ{wei|#g$iF8FFad?FOC;puEKAQ7amaI6XS)m1mMT0c;T#Xgb#=pZt`o#@8jqn z$^-fRV61SPpW4Dbh^I_!LxaC3z+Gr0&hY#KxMT0i0Dn#TcRUaae+2(yhexiTh%Ib& zy=5w*Rn9b+@qil)T0eQ%G?+cWNRjQ<`bK{BAiX`a-fq8U{Y{LWzp}Tt>yO&;eN2D9 z)1Jxy_OJt25T572cDM;zl9!S znNi-Igg>-=} z3exwLBmX|aZ#m(@k5?U7;y>xY!jJnMxR&X|4lMkb=fL$0zrul+5uWD2jf6`axRvlY z2W}&LoCEJ9Ji>uRo>LuI_5TmrnzVZ?&}>rgIesqW;_2WW#oDX1X%}hzim*&u zTEnMYh6I}N)H7bnGn#70rX*DF?r>oV8t=2>VQOss`RupokV1tsogG8rWuVjWBqLX~ zX{c7*COVoT9(Rk0odnGVJ;1t)MSlQfYYB-a{I;G#C276Zn127-Joq0X=`BZU{BBAklgURbH8u}JQb3(l;Bs1*Hjyx_YswkAZvG$(ttKG z4ey{=9flKi;H3_>7c5e;i+uXc{*M9va+ZRE-qQn@D%Mn^MAlgU|F~ z5svuuXQ|^t_bc33{8=Q~NmxKTFReIybxO{ccndnPaC_AS#o8ChCmrR=H9S|MObZ0l z7Yx_VPwD7~SDf(y3b$8p4lMk#Dl-s12hmFq{WKN*z(Dv+FWx>>e3$~y4zEdzZ_(Tg zZ;7_PI4tiIG8cW(l5eqhKoG1p>rA)9E{GT{HXF!7A|Y8rkf^9@MU9BMDk@d0 zE7eL{+HS4dXsvG1R%*3f(JED}tMw&T+pbnCT3ep)_s-1T*_*qY__M#~^ZcKG&gV1v z&Y3yq%sFS~&VAXt8zecJNh(q|=8Dhuw~lj9%V3q3JCIt8+qdr&%rO3K+{_yOTi|mY z|7cv_-2V@(Xe{!z=i0HrlwjBDLhWFyPWcK4WA^$m!M%VE; zx$x(vTXXbRivCA)=~s#VQMvpH$njn6XZCx16<1tL54j@b$CWe>?fDqeaWRGb$o=vt zSAR109xdgt*Pa^eJakK*QwHow|6ajy;hG;gAJg*tug0tH{OQd-8t**!@w!~!zq2Lx z_5D&Dk=9MXFDca3dtC48_LvU&zSWdFRC9?X*e`8aZ{fzIu zzuJ75{A)HJA^)7sN6G)f=40f4X!CLM-?sS#`Ri;xN&XU>Pmy0^^J((u+ProBdaBJ^ z*RLnqymkG0jN~)(kNdGQv^lR|AI-NIw0w=nCL!|^pg&`5K1hC$&4iIeT=xgqv*g#> z@)o~B@oIm>6_NP8h6`@c_ggk|Gwh5bIo4jdl>MA~SHkhn^W}RNM&vcA79j}*2USDqwXmcK~18&H(IFNC*zim+YmG2ie+I*1y zEwlMB`GqzgAwOO6xklNq>0kbAib9{N65`xBTg_dCQ;eHXo&b zTWvl@zFqRVzpZF<9zvw^b`W(k!MD%|@mwvhEAC*hLUG$%q zOTSw5pL1P~@umJz-RO_XrSBK^m*?u=F8ZIjA;<2~v zE4ljpqQ6hBemVXjxyG0NFL%|?tS{?*(?ZaAi z;#~Hn{zvUO><7j8ExGK=_3@GG`pP~Y_)f{xx_Tq9kB4)Q`;6^J2#BqpsJ^l&YDep>eA(Z zUT4&*uEBT4ufgv`Tss$~7*#wjn_GE#<%+dyQmuoYo@>H={)6!Mi#pH0ikD7ZZ1Fs3 z{S$IrNqMIH=JLwEhLIS$<(Jp~GV_17GsA7dXf*I%3r@V2qWu-5&gVD&d;cbkZwV~Q z2*__K!95Oet=Ia0>A0>laZm8Y`TO@XUKQ^AD@C}z%+O+x-oL#W=*>WH26{8ln}Oa8 z^k$$p1HBpO%|LGkdNa_Qf!+-CW}r6%y&34uKyLVqW<7n?o9B*I1`F#1^i~i21TYBu@i{03JkoG2?*JFFF-Pl_~ zd#CsO_!-}gy+O41a-RL=y1^cZU_W?swd;Q1n6Hly%b(vD(cgJ+Lyz;Zr5k&#v^S&Y z$JfGc?2V_rr+dDijO)f;A?;19?{U0Ojmw|Ed(q!{de4ua4c*vVMtd*!d_P&zjlBxm zo3X0L@qT=0{&-(Re`ih4kDndg*xO8d@Amxsys;a5b+mW-${xo%t{Z!WwAbA8<74k3 z`SbS}`a3`E`F`v`{f~>cpHv_#H z=*>WH26{8ln}Oa8^k$$p1HBpO%|LGkdNa_Qf&aTRz;7D#Qf~(GWFUHk5y9_Y7|Ejr zCMF2XsK|cB`y71G!TTl){qR(Q!Q->-#ik2BjVbdvioBf3qEz3z~ncx`@L6X^F9Y3 zkbHELkc(WGEwA$2i@h1>%|OpHFyd2>wU6~&qgS#w1HBpO%|LGkdNc4p&%l{YtDBnF zHF_-LSM_&2pGMR<+EkU5A0nCryNfm6Sm3y0vVZ-Pmm5Y0XU`cFbQq^KAau!Q%O|CRYfYGFi4y znrgLIuz%M4#a2Ji>PM4tNZ*^wh&u5;CVW(ZVai5)Z9YSkF9H`uKmMPH@f5HSXdZ3L zQ(qC~+24+S%I^SDzj%B%^600X9THP{BCn!Iy< zhoHZBl5Kwk_$YY(;0MX+Kl!%FwmfSQ@FtMtw9o!$HF@T@6MQ*^L2mZ_Q?l(>fj2E_ zcljNfJneOKBcF1}cXlIRTw(h|`(E(*{P8*DE4z`ecE|_w$kUTMHF@T{qZ|3+V{QK_ zUk*N(|CDTV$ZyRf&wT9F{N5g_&BdE}XyifML! zXg>hn1d^Qo)7}nEo|=g~^6U?vkZnH--b6de&Hjs;JT*J>$Wz}p-L_A@61)i{Iqj3L z)8rXX7<{h%ocV~MpK?zDIg)u|e)%Z+DgPjl^4^p3%SX^p`Fnv@Br|f$)BjHNE23T+ zyeS);@v`6ai}g?eBwr8AB~Sew=vPF(BZquPNkN4D_mqj}V~JsXEMDQ~BeUDDIv|@@ za{s4b%V^>Mk4FhyBl*W2aemc!RPMhjriY37sh4?wVTAB|uk>Hd&+(r6yOU)ec1t`&=I0X0e<0<4FZB%B-ryDX9+m58Ly6!ECB7-! ztK|5TrT?|k&b?BuyZJd|n6Ueb#F=vZL#4ex$hf{I<9$ZjuaM);m;Qg%c~ScHBgFjt z%V9S%T(tL5d6Ei|k)nNr^iSE@D(xht|EfJM<@d_`u8?^;PVxuKydL_xcrJIO#EB9I zN<2_viNu2>s&SmSwzY2BwAPkM)26Ll*R-Owp}A@L12Fx(;Yu0b&2m2G$vB+jmmetXJSY1vlltG2_I@t)$4Yx4 znFpsGUJr18dr{jDxqqf|?1#CoAG|Z|{nmN?K>GpoE291C9P%A9uG^%)AIm(I$@Tk~ zT-U4R{CwH@T4~4V9(lbpXuh~k@Bzt3fxO2j zx!JF*%C_$ZZ(7n_@6V`T=a3I;@=p7-yaoMij|0i4x{)8hK*(1CDc=S(fh662N2%B+ z%H=-sRnOc1U(**6_x!KFOyuKtav!LX`%1gy50d-m4!NKHR_-@nllhw{_tgvK{;SiuR7UY z$Ij!H`*H;RinuR(PszQH(B8A?S44gfcvCizSETmk!iBax_fbFiT>BLD@73hV$HALG zlG8rz?bYPDFZ)jI#y_PNdq1Gasxvncp{>tNv`Tb}l+!J9ym(>{-jjhZ~yMFM<2`{Nd8+xLMtp+|Ds zr@cB&p6e_QKCk^V9QMJR&?7nR_d{E?CeM6s%_C3!7aj5`P2M?QZO2~D1wyYkql{1*=S;)t&zT-+aJpN(XWWLs&3>rI^?5ylGoc2Yl{g?gTpq(FU{$#g09|h5`i1PJ$ zNR=B8`0#Q{!>4p z$unQOz~@?@v=<18{I>$>PZF4GKcswkrI6nOqCOSK0BBZv$@vN#qr&c(-fv z)J)`%S9->1aeX*J-p4ra`;=U}lp81Iej=~;K9=_}_sjdGZ4%#;_bI=Y*k9fcZI}Ep z@;+ykiuSfxZl|%?GBLb zyQH0M(oS0PXG#8bY3B@yr^@y_r2Z(Gk8er4HBx_!l)qB8zbnUoM8^Gy)c;WGzb)fB zPWG$3|F>{tY37ED5!= zG`CF1^vo77ngp7g8>dZM5LmaiUNp?9ZLQ4+p;9_VtgF~`@jTXllEBD`0%MZ*N!}-U z-Np**ofgr;_09c#M7@1H@OnK4KHu@PtihJ&@lp@o1d^P`5BJY4nmn&Zli>5&uQ)H; zz8|~^J(ANt?QPcNc|J>l&u4$h>TLT#@Fw&~PWzPHsL5OVeI9x0zo^M`e@bcc&i#@0 z>lZhd%-ofeO@25gU_}99*6!9H2H<#lg$N2QYOZkpNX{B zV%t9(ysx#u=me6S@}kxL%l_*1cK)6DVSgO`ipY0>&*i_8Q%HGlTW6v4NI8ZWGAZmQAuR?3Fj!p&>(E*|TvY8$LD8=ITML@YV1e_-?UEogHumqUDFY*CT*M4GHKI1#-z4k zs7hm4WN@}M8`Gvy@?=cMlID5J1xsF?C&HK5$05%X#-+K}8Q1M&=vPF37kE=PkXJC9aeBM|u7F z-~1fAmB&sEoCArYsAe|ytyUhOlAjZ53|ag<>}#Pq?raO2GdtT6YfT*0)6ByronX#g zy!iCRs7|)bW&X@w*sxsKnl_D^qCPX+ASKjsxfgj+#N#r2m3y8j&peO6+Lk9@3El*f zob$lrvQCq?)*X1ac~JHX+q3O^!J9M=a@wc8>6*OtJOX@P``0+^gEwg$~sH`qsepK)#s6?e_I^#F-_jN?&!(0nmqeEHF;;e*1Esm z_MiR*z?(plQ+_bowxXZygKj9mt613If!l#3r@Uyj|FXX_YTI}E&;EAwDH`@Mi{cQ!GYdtW3A87JiPu`pCc%AuS{=?{3ME&+W^3+di z^3>duN1paeZ?^4|_klNoBxn9btNoYb)#s6C|6`hc^1JfLGrlof#QEC~q-QZ;u6)wo zm|L>_F9&a;oy2}coL|~+L_gz<0?DU=x$Il{zE#NY0CJ?_+uY^%$$h#=K3~f9{4R2^ z*w3$)_cxvLI^z!cyb42Dqlbm^V&8@t8SC~XkY&Yg&s+*w z?Y6yDp;lA91Gv^)+0wkmwC?1D6KbC4Y!&lX52VMtfTj@XvM#)6ulSZ77tc!x@M;e9 zxM-jJhTCm<^6lVFAjv7uec?e(p2vL}d_Mb2?#Q+u1aCr*Bgsc^3G*_V0Aq z2XE3i$Z4PZzy?j8$ItdW^3?CtTXsuC-M3puKb{yYBDIDV&6BS&FKMZ5TDuaDkybRX zSz~>3GS92dEAf0NWDTkNOxw&&clo4$s+39{?oC|ZY#%M#RF1KZBlMm5R&`YWE5v=2 zJ{xz#vLudG3f`1FeNv?M-6fhl^@HGZ?Q>rA->J!SU-!jw%X7RB(65O6KJcb&aQegC zjl0K|=RO<+pUWTWKc&f&Pl7jrB&U7a`$CiFyacv&V;}vBEc@V1+2FL#_kz=!Jdbn# zciiPO&tF$Gw}e)-wlrovWi_yRTS7H!L#?gy%fHq>RMTp02HXMoTvdDgn0Y?cf$Zt@eBi)Yaj zaB86~9*;zwXg~2iJ09j+kve`qK))i&@5>=yi*N5X7{?fEjJ5c?9`z>R3ZvO*F+!-V zH7-QU3ZowNMq?8GPDb$=6O20WeDa-5tD)5bjS%{#K-MW|f1e#sw(IbjYje}m+Lnge zpFn4d0c_9`2evVR3DEy9!Go8w^#Oo&0f4# z!++<`)3Ij>fyGHog1Jpk)|6xz>6v|Fv&s@Lk&>&Ri(?~rqj zLA!BHCZW|So6cc(t3yuN)$>;VB+kjh3k-aBS9Rw^?#-2uRTMzonLGB;rW!-fAIEVc zCCk15bmNf2cT(L%v)bs-E=?|lx_3lZJ=#=b=>BjVH;O=BkuL9dv908Y9HUy3ar&Zs zpe)CrJ$xsZtSjmAyCA;{viR<;tE}G0yreX_eW;g@?5anbY79M2j^jrAa^$7j#kQ`` zF~XXR(--9fbvOp?;k(DWiLAOV?|-VmNI@3gJs|EH5sQb$_L8EFvc#(;ycS^^O80Hn%q9roqGli(54zg_nYIm zk&qe;@@w97WyXkR^m?o3UH$DE~uMt0V@Eub(lUZ$+p7q3D zG<&r=TWCvBR-8F(>wZL`8-_i6w^NzOiHx&dlZ&D5^o7c_sm9R#;W%!jWZ9QsETizg zVGdbcpZ=6WR*?^Nx8sI3)fl=z9LJ56Ec+^-E-<2y!*~ANM6=o`v0al(qMmCl=!zV} zZJlylH`4u!L)SMNaxC2t^{OPp*V>))fl=z9LJ41Ag@T5uXnMnW$1x@z-oQ6Lr^f0Bou;^f)<=8!1`#l|wfIyLeZ}O*E^G z&*Zjha=TFP=`l}397~O&`^oX$NcXcEy5$EK82GH(O*E^GdVa_%3TSn<(Uv0J588Jl z-H!-#r3!@&> zc%@I9Y7E^Uj^jp2$Scz2lR4y-EXU~7WSqVzA1wK2F#lsQ|C+qA<3#HDA*(2$)vY$z zQl$G!`);KBQ4QTV2aJzAZDw53S*gZAA>_oE!Tm4_4bbmOG8!1`#wL^Cov-vhtN(P^^|hRndDE6Ht!-Qv!sq7a;WIWe7lf9z zhA&t<>9}QWQ!AD&#@oTQYeUQMVLm=?o6S$*!gb3nr;ov37ScfidjIxjpf>}(8R*Tx z|3U`J@V0qbU4LUlMX^z|xKDWZus+7F=hT_iFb@BbIKP&a78<1${fz;Oi!7OaQbwJ7 zdy0Apyk=lYA0^&lBAnxL~RyE zXT|OkXLxp>%sYU7$SJy0Ykzl-h;z&zMemtF+Wjt&zFi4f+J6P8u87J878nC(^$Qf? zV>vyRvO$H$pvlEy_GGmq{)6fUV&020^IrWW;&;aS)cCG*8k=Ls%1B-UPbsHQYFy9I zLStw}kuh}gz%b>@CigeSwN5b1x?_wn72}Peo}-My0Dk8KFNU?l*I7&gh&f45r$?X@ zMQ*%6wwOSU=>u}j_<>w20U+Pa2?F_^S{TT8Ya&4Fw+MlJmnjD1J4bOKKle`n`5l5J zkmII+x#*=Mgm0e!Nh9#m3SFK8q}C!JeQN^Jw`+m)Z99;@{R&9m-UJo{_XFwMm?OnI zhQ|Zx+fpEXTMMLbQQ#2Z&wzaY=l-LFAE;)LrwBQi+$T^n*kcqf7we`&TLZtwF+m#l z9f4&N`Wa*D%CKfije(v6j6%#3=b{rj+oWaY#5_sJ`+$ts4`fRK$asT5%7uYC4I3}~ zoCG8VfYfgWQu0P1^&bW@Uw;BJU$5e#lJ-!w$StnY-;1#*r{ZeOit8Z6H3o5w%EVO# zot@Gq_2Sas1dx6ufwYJ0<|J~0 z$XOJ~<~WcoVI1eoNd(B8#DHv1%6>!gJ|K@7zr=*ZB#_5UN}^f|XzD_DZx{3NAdq8x z0c75Xd{6L40-664B;Nq!m~FuRz|E5X8IXI)yTC!f!@e($(~Us-@+gpcoj}Gu?+0SO zw*ndKBa(jy$oU_+L-eDXMQYtUv20ASF=okNHA~r*o(=Zpk5rSuxfaj^kuddO)f;S(H%wKqc($lpawpCf9u& z$T>_&{^ef?yQe-bgs%Y7lUsn4dqB1idBPrF#Z+Ql(+tEl&4A1`O}!RJ1Y}8Sn4}he@a6iF$oe$(Z z`~k8Y_ozJg4=NVtwR)y~bdfQ-VxTd2asO1maFIBlyueYq&bien|EPFBc8M*b#X#}D zy(DZMB;%MNfsY9O;{yiwyk>!te|Eb2Z z&N+4cGS^FE`{Mc#*H5W9t^;swv`3CJ76zPcC1$Z<;@mwN=O8`T^;#UJJobGO)xLb{ zpXm|4=L2Nk?*Vd#o|QcN)H$omd6DOaZP<^j^PhdL-Kvf2#~#G>q{h4JRgsT}fTaCE zj!Vjnqt370oOiqUqx2N!(jSWZN90<+k95YcON$|Z7)U`!ENr`IuZZUcAn6_;4&N23BV?-UcPkK$*Jp)L(6WAqBj`&K3+k0&Ji(+)<-h}PRuLwKNoLM?8VqdP- zbb|8Q`n3CnADe)R%B<%CgK;e|$QaNfo(HvSx=Kz*`k{En!9ov->FEXdD|pt}R(zsp z^P{dPg*~`RGJe$v{8VedZ@2LGL$uNUAnXIe67~TecZmScXEzk0l?%^7cI-?8?E{@53ajiHOh^QEucr|y^CaJkw$ zy+-lwLhHF|=^q%Ch|!1R_9J!N%6*f4Vm%JP@n=7etoiL*Jv?U$JBLtMk%Z zV%*n&irk)2cSzln-xl(@=Ctf<#m3j_1{h^avY&BxYGd=<>%;2LO}6 zfxr}y&kxc-KIb#$i}SA+=tdVz7V+K!Bs~bEUoQZu@gb0Y4VfaICmao=UsXW*6#~+) zZvyGp-9Y;F7?6Jb5lFxO38Y`cE5vgRACS)<&jJnw&Og@9JJ<}#9A`a$+=ZNyI8W-j zV$QvyE!XqMebCt^tx_)_^AQ9x-Y}3BB0$C)1yU{s)ae2IUstw24_?MD zC8d20uVps9L0QU#6We zsY4Xx+7BEk$fibW!O5(Elj7IRRv8`3M`B7KoLtfmj zHJ57bl5mFpTn@PEL(sJ$iPEnELcUe9a z<39qVY#K<9`|K0P<$NI9F9s@7=NSE1Gu{w3M}H>lW!6oe&ryBQ(LYCxOTQ98%Woj9 zrhxP*4dh;7EEIc?7sx%x1X_Cqkb8q4$UP(gL>C(k-{s5#;9|7sp(38ZzHXcZy769qfN+5l@ z0!W`?z#+h=fxLeC*$m+as#&DwK>z$SDCdANsr|0vJ`r24>z62Wwn@v>OUYcMfsEHU zRm_1G$aqa4<$OS$4w)(ZoCzcafz-bYNXdJE)c-Y*`T84>`Fej=c6@GeC0yd#m=#yo z>z6cicEUc1{)VN$5ugWcQ6T+_0qIv9NWT(5`jrGyF9md?VRMAtNkCEnNW0BIYTO8< z-G_mNz*m8^Ys?kvqa4WfF?wG2@tbc7ALx&o*B52{nd6L~kK?m3@fmVKkmq=QJ|2MX zPL2zregMZ1DF~#$5g=P)5|#Z)pHm9g;Xuam5Rh>k^DhzK`9RvEOqcVEI)}(}N0)w= z=VWg8p2dH*?M^{1WGR!+|91TUFOuK-EB?gKwyzbMPW4#&-v*LC zk^HY9lZnIe9*!D6?|meE)c4>t@?z2H!mby{786JheL$`QKalG=0OWob1aduxf!yyR zK<>d&Aosf%ko#R6$o(z>G6qkp7e{5c}^`ApJQ5NPogW?!UJIx&K~$a*lZuYdib?QJZgd z9L@Qzh%49ryAL|sFb;`%Fatu~2V}f{AX@@J#v24uE)3M^qf>-_$wJZU15*EVASKTS zQvX&U^Yu88`TF^(+3~sUzvXX7TJkp5uYkGl4q2d77~2IbF1xK-!xDq+~6S_O1fb-VcC`HwonW*azhLcpv*D z?W1auTm0=V@xSGWzr=cvaX{vMwhm1vAdjhp#2}D9CM8CI^f4td22^w-JY!rB0vXRM zK*sR_ka3Wl*XEtt*lNBm?<4k)$AP4eB|o}A@NCP>C9l~k4mC#LJ&WRWQOdfLmFJVv zx3lNddxr3p<1mkEJQMBoSMeVC&#fi^IpTGa{{%=2>+!3Rlz$t@T--8Bw0{@qGC#TB z2Xa138&PbGs6$!O5BoUYyPWI|!@S{fIR}-P{f*LXCF!B5!O4LMURn3^6(MfEuTq7$ zN%SSH*5YEhM*>MIRzG;kDV}|^@qQB9&IFQLhlo6E22wjF`GvdGIF$(ttgBIH}M!(xMzmw9hG?3PG|9(AE__r5G`dIQK4iJ7m2&A8% z0T~Bn%BBu9$}5h*|1BG%y^m9nx%SwOv3FAtM4ceUC50ujzOF>rJ7Sm^w+_hKo02aW zZjUG4PslzW@6qD(Va-i8h5Q^KX_e$zcRuSWen`I}(8c4cE@~k`c>otAjETR9|@j`##G@(BgNdGK->s_irc$aEm*1J?&H9Ju` z$8nkCDIti5SuN4csXZII& z-v(yrJK3N2 zY}f3B;ol!72|dqbVP^%9zSE{UzdGl2k7mQH7CD?ZL+G6eByE#C>m?(KjDd?q-U|Za z8FTS_cJ5>6h&uOoj-3F{7Ja|}Xpyi#VzID)E0DFn0;x0X46)ze3gr3dRUq3@wI~xy zo^xiU=96E>6##OapyZWLQSh{{_(SK2@s0(OPMs_K3jrC+g_6G>NdN8vlE%-I=Sv`I z?tJ(2rSiWEI&I`LkI_g%cVp&#jU znJxHX{S|-GSpW4J&+3DRi~Prr5PAF+koGIeJ>tFyNd9ghCE`GiTzI6IkG}!?gYS2g z$BJVjkiIkl>CdH-{|=CPj{|w%ReQ9szXNDpuLG^?-0>dkdVMmG`~yJtKM$nc{>Z15 z4DxJcyB|^o!G;19gp`n#5ZSBQO|#{Qo0mXiF#QCSLWyS~>s25lt2^;i5!;JjEVdAet1jDWZu&!bc<&i6Vq?Jm#I z+H=HD9~7y0pLK~Xti?w8A1xIAz6K=im;9A^o}(!r^mW~#`Neg;0mlnTU)P;dhV9QH zJ6yNU=?s+m6(Vb6A?s}O6yrA-mKUb^OqVqFz+&UTw~CBmt%Hrhb%XFe=RhM_ z=rKM;xl^;_Y}5TOeV?-@jw$-TSNdOKz1Pz9xo4FopTZnJv_!=7GLZBa$+PbEUQL^( zug>ubsZ(Ag?1X@<-68p%lBbOQ*`ocu!R?yeAg-xj=_l+QTP*yep4#tK?lYM0b5Q4X zfXnj&`~5xpGvqy*KOEahYVTq@J!Roc5Mv>+2K3{#L$>+RuPBadC3Rf-RU_~vt$kgU zh(C!o+It_EIW7m-?<*>Qt^G*8!>HPv_cP*|Nxt{kvfq7m%TMtK_PWzt&s6i}C$X|? ze)h;Vf5rmdq0o+by?v_I-gkk>j}LA1=oFw^ew4p@epFkR{NVU2oQ1iR=ypF_sl^|} zIU+q>tXHQkagQ)0^F5w=O)mmH<|zhLblZs{o~MDNKLbS#{y5fhzRv@y{+|7LK=A8g zj4+V)B0#o8fy`G7$n#zt$n#wS$m_Etkk40BKwihDfxI3xmWj^;yg*(Dnm}H+`GCA` z^8*=M0I1X9i^X0w7f7lD(w{4Ul)MK>e;x-~=V2iI*$1RQBhL`ednW_w&*?z=(+K4C z<269~^IahQc@ju}Qb1mp_FE!85BL;F|In00YLC%Bk8MLPNt9Q6UB&&PE!XD(+o7{f zTBcr9<{<`Tym25cB!G-J38Y*KsMGSLV%*Dtq!^I;PXH9-%qmH?1`2Z5aDFpz#nfL6YMZnXGp z5!d-ZQWQwLKL%3cc_8in6G*$G&k_0X1G#?cfn3jD|9bcNsYEO!`lIIkMU@|UKdHa3 zTCd3)I8I0=(285~KR$~b{yzp#MJT>o>GC{Kv!}-Y#o1zi*mRDt^9LaPEBdZ(`?T@A-{@mJS0nV5uE$$sc=7ubUc8g-ojfQ-+hc=; zMsP`y(YLjq5nJgoK0!%0a#f%Y#o6W=RAdaoXT#QS90d7EfqLeKeft6N9lY`n?X?hX z6!o~oB#

$y0yZCNVER1(IF|vNq;g!Ji1E&LW_797vwBq>>{B;NI;-V{jVp1||C? z_-w8KZ~So%sx@DNLE%dTNXs$F6KOXA$KVBC7CU6*7KX5oODBB}I{-4B{+^_0aRh^OIwN+}D->IiJ@7IiH*WzP4bTcxh|duehv7#2VW%QD}kKv4j_+%7l4NYzY3L%?u+m6&*3w*%)7|#+TIkGYds0% z+D!ww`n{{f-s1z34*s_@VaZ2<%vT)9HJ6lp8pt)~#d(Hn%O^1a18OXW&7|83Z{+9`UB9QvCfSk)3AorzK$$v}s z?*MXcp9FHB+9UbTW&hxa*tZS`a-TXu^4|c`{`o-8{U#vytGgxN|8mhk2FSH=ERg%v z$&zo9{g(r|Hf{%U-}S@NIB{y|rYeerN0_r((=e=d;r!$7XxO+fA^ zcT4^W*}oge{qtSPd#)1eYch~)`xGGe&t}Qr3*;Jq4ahY<@@lbvE(MZb59C_k4CMZK zhvZTHuaN%SuS4!-G(6~Rah%BOPM>;?o^0?Ke?|$e=TRcAFP&{}&$~LcebT$8k8%8F zar|YjYsU=2?<5Veesg6EzDGM|acTO1)QIG;gnaMCahiqfP7^p<6FTi56C_o9vDxBiMh0bIMgJ%>MEYp3M7D}=x6f!uFaqo3p40OUSH z(x17jSX|p&p2N5GFm^GL_^V=VyRg7o^UN+IWP22CB)|1n{E64NKiAudxozDi-H+_)NRYbNKB!;)nSRsd$%M)HSxS76TRTI#0y$ z9FX*P$zLh`XPeV+<%7Ov_ej5%spIT_;hApnKbT>Ay<3d-M;!-jQaPXo>#Y}yT##3D zzgf2V(WWSlby_7EziI@&q_wm8p^(U167974K2VGx*SCCzt9;ISZYksF@=V71&QA7s zp(?*Z%=H_(#vGAteg+}QtE~yYY6MQz+UKqm@%qrlcuxVk#jE_)<5g|WcwL`k4=FN+ zEFO?9P8B5!6MceoXDruJD}HZmNnd=%GQ{wm=`m_ij7x+EVg%lB+G{7Lq+)d2Qy zQV__s5(cs*0^|r$AosEukb77h$ZMqpkk>{@Ag_&5K2YnzimU7MQy+A8!aj+5-ezIL1bWcs1G2>rq+bCb{R#r% z-@-R|j2lr(FK5)^`pwx^GJb$DzG9>?=BAP9;i;13(8S>Ipx{93SzKE8vqj`ytzm@$ zv@5#*b`i(OJH&PHBp~VcKuT@CQ}C|>>Cvcf3;rRXs8Jfn@nHjugFGV*=UdKvK4^X_ z#^X9j$aRncTKZwJe!}Mq-UQF~0MJ@LK+ba%$a#(fxep|P*4_lV}JdyoG z$`h$iq&*_-6FDA{_f-MO$ANCNEh^@9!HpvN^+49H2Qoj80IB(sZ2v2e>$c=3A-4(0 z`?G&a{=l2X{pn#q`n4EHKWl;XyB)|l?gBEdXMl|JA3*MNr)&}Te>Fhf4_+sERI^C! z2M+Y<>o*|hiHZ@dZ_byLm-iR_jL5e<#%(BxE9Cm@i#*m9S#58jeV1y74azy&ocj9s z5pA8QwfY}W-}@0RN1Djz^x+A8X)O8AZw@H zCfeENc3v01!DauRP)ZwzI!<1iHFRnKx0_oR6ApL3p(yyz4^y@o7`jr6kdgEOnuQy(9 z$UYyT$s%?9>DL>T$SH|&skK@0J<*oydZQjX+bk`i7nk`+02yx*NDC<-<4pr;-)I$f zrK&M&wa~8xk|IFr-wmYXFM-s52grO4X%zVyxF$P3x45>t#I-RiuCCV`yP&fZ|S9v-+e~}^0TCS^dYcL=m&vp4g=W|0WzmiAafc6 zGN*AMkGTYpIZXnKfhi!5xipZ+oN-@U>z;@BxQ_KMTnH zV18@%dO?##ZpTer&I4mp`@y*Hix_k52Px=mlQyXrkvWM18E*_o3vnRhO#msE1nTs_ zI^pN@KvEh={h=3#d`$vUe<_f2c`1AY1%E`V|1uuON_qg@M$I0NrR?o3Q&!ASnf;-TgpnjJ;6AI}b>^tAVr| z1#*3K0J%PXa8dX1hh5@-O2)5_U;X`!m?oc=`=H`96jZv0z}$vmbvh`RR@fqsd}9|=1tAn9WuYhU}ZxE?+Q zs3@~G4k$7Xz_a9HF_v}z;?u@T$T?HKQh)RJ#5lhMlIDJ2jB`DZ{;{pByg%Mm7-eML z9pOVv#uC)*$1fH!L}W}ciL{}JbDo48=R6H0?}Z%a+yrt@NC3Gf_<`ILf%Dwg5Hn2LClmNbww$}ESI9ybkh$+Tu%Z?DIjYfN`B`K(f^O}tRVG#AKyuKFUu-wdSOGeE}Uq_UEJM#*yP zZ4rLoHS<3_RQ}Z((9b_nIXAR5NS=SxaiQ*yji2Lw2gM&1xf@GiN1J}0Olb4X`FIR= zNhJpluz&BSWndb=_?uAQH%n_esY}Hgx$+5-=j}k!hY4-HY0m)6{|Nc{-x2-U{^S1X z5!^qa7&l7))%_FN-a;u>?HGe{&Nioh$$>@qzT9A=e@ow#`VIVm^nu5NU+xc#oxEC; zzmUg$*>^=e?*LgFbid$_0y2`*fYd|P$aRku(Z&m2BI4&bw4@_#q_Gds-hR0stci

GpnYO0&N!3h8Itc46-cpr~Q5$n)8nU)p=j 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 I&(OgC0ilwyt^fc4 literal 262656 zcmeEP3tUvy)*ryp@qyrD5+CSPRG4Mtqfkl*0X>tDlv>4GiPS-QMY?6vJN!Q)#7=7J@2@~@j*Wc)vR4~CYZh|9y&|t@{6K}Y&Yjkvz1ex@meOry~J@Sqe z{eSnfzfb9d_}GgIdtbnRr}pl~fA8#_%zvl%Cc5jA=^S5habfQi#DBPSdhfpY+k52n zluJk5kuneOdmujV;yai=@8Y{sh;QD-GdOSS&Z(-Pm$*lQ&1{JO?ai zIGRQ_kG0H+v{Ed!GtcESB7^lWw>!|2m81#_#a%$7NuxpHzCfQ? zsKb8>#dqWQiC|n$^jz@S@b^d%AC>+;^6vxsSKa^f2upS9X?SFAu~@1HZAK{aBZNMG z43EN1cr5=I?>3%;NA);7(jUjWU5oH&SA|ExB)rT13Xhjt;c<2$9;c7RW5nyAUQ7vG z`4b*L?7%xE9*?585Zy@muA7R-LJAFnMX7Gr9FKp|y93au>h^8$X!takPhXD5uSfA{ zG!Kt{pMj9|4MG)^)R~ldpPdLz{Q{4KwRoJf9`Dw_fX7g(M>ZAmmfP`Y_yVF2F2Li7 z)`{SbUH#ds?5hKLQnR=;|*eIeFX1bpw?{?g~!nM@z}i@@6;X$eY*{z z3xC7oS!%Tb7vS;c!+6Z6Ea%>f(Bz4Dy!s)c)k_gd_#UB78}T?o?|!CEetkO#!zt0l zi3p{>g2#DO^Ixj*Xub~7_Z~$kaScMRQS{Xrc(jedBfTXayGW#N--u92EkfCsBJ>Vb z>+B{7&3YV<5oLJXLy3O50grJSqJ^+2)lrpryiWz{wFZx$*5T3j0Z{)zl|GADcK1i9 z>8*G?zXy+h(YGDG#G?(>{K|_EiciNwbKtRoD)Z!1c$83q@~Jgm+YG+TsJD7{Lo}C4 zu%QB>#m^#?x*VZqpWyN6*?6p^UWliT(murF<(+sOYlz1->XZi5YBOHNqxUn2_N1cq zpl=7hfp;ybe5v0e)Zs@wzH5!>5fYl{>+#4Twfd0+uHjllUH`=6>t_(1aRWl{ug0U` zO+=lu5ZZ7*9?PhZ7t&|rN$%h7h-f6W{d}rr4wdEOxp-`R1JSAPB9yQlk6opRcB76e z>5In#J03?#x9%pP*-UcU>_&thr7!wXYkd9?qJ<>NQPk|sr{U3yM1IcO2z45b$4evv z8B|;c^;Y}0@NO~XRzO|xEQ#_tr{i(+E<8L``eZUZKT>avoDaV1$oedz##v5TZhs1o zjHP(w5w#N~u$IKsCeBW#ZwU|;qlk0mPLe&&nM24c0^AupA=d{8^&p+uMJYF-PQHyg z>O88#@J@IfqC8SB#N)mhc(ftH{nT#{@5UpYI;9oK?#LJM81^!yNBQn*ipRbC5FPp) z9%YLWtx3h>qVSMOD~N z-Tm`*2)$14+LQhsqQ@7M^4L%Dxanm)Hd1c$NvBt@#3Sk-U^%t~k1S&Oc;6LgpZQRI6@+@?_q>&H2S4c2V8yx(P3oza_HNM^u>|x zczn|nj|F7NcElp|JXLxaQGca29YDj=9_sGsFA*vvu|4y1Jo>zd$5K+i)})9jRe0=q z4AF+vOheKAl-|_45z1eV&_t4} zWgGAqO2cgH3WOdfO<8<9LJ`#VAH0IcFE=ClW-mO>r`D~aJVujtZ+sh}YO3!X(ycS8 z3VRyk@h~;JgKT!w-|)D5As#=>2H{t#+oO*nbdZ$zQhI2A$73*=pfA71qw_dC=Jdv6 z|3W<4QODc!5&CI89_7R`g(|ax^3Xm&=xQqX!GnnI+kr<8bqcrNu}?r)O7%#mJiK{` ze)G8Op2I5y+4S| z+%+Vz)`#(kormafO6s&T5RLd3LU|t}wDn1ZR+0#Ky5X^;FCMF?dnS=W^rF68L>Vn7 zIXL$SqINQKmWBx3LbmBDQg$ADekC(RX_`1?pR%z6I)ApuPp_TcExL>RTXe3n)c<6PHC=EEdHRU0M`n(W(I35ngm% zq(v!OomjnRpV#a6wLkwR;$JBE=ji;)!t=)#gTGMl=j;6Un)ub#Llw{1h03hG*%2sJ zd3r+9F|XIFxN~fZJ1#SviKh#qtvn+Z4hA3bGA1?<#JKVd$7e*8?RO~?zk81xA+bCo>07@% zlbE<(5R=i%6FCuU)l9H^rYAUKI$2a((cy?G4B@im_ftVGMMYRzH%@j3y66o4z z-_fV>V>rnTUi&{em*}fFo*J9!xx$vwechW83exGDt~M&oR5z*Faj7YrrZ>)1D-_jf zt7(8|Y|Q+X;3?Rhg+iT{k&+rWJ=W!MITX*;Hm`j@QmttbET^*6;Eb@Q+u!)UwEQ>jf}KtX?qY> zvz$uz542tyeegsADUeGY9_vyk$GOyL4ww4XwX6Je`L7sM)YVtRcEI5m!gi?EpYtIr zWH*Wv7J$WPJEDo-6aD^!WE_-tz@*y_w4qP5Ut@A-NoLzYrgK?C@$~{GH<4tv9Z^JX zB*<7nT<%%mkqU{_6=$W{!2tQJgRv6fl+IkJXRqDrS0CGQr&f;kRaRrq(C# zK;on+J~jDdDc-P}+(k5hHCag_6Qm}?!B&@=q=2q9gM>j%F5o1gCUFkn+~1%6=Mc;<_OeT=!~b|A)z!QzQt#r z=pn7EL&^JF%(0C*g5_N% z^9VC7l1wD;P>KckLu1@B$uyOj9*|7%UK0~_BaJ&c(+Fm|Su!mF1)9^8i*Fr&JBk^g zIgc&I8`hj`qWNo1E{_uC0j4w9>e8IXplgqi)Vkw;BmAO5b22%X=zSbFX-*$#&ME23 z14uMTU$&9DOMNM$y2~+U60)vtD8`s~q1U>;)Czq$?<>}q{2b`ZP6|U`_;cvXrZ0rP zko5hJ=!<#G^T)HLh3KHF=NbQga2Gc-^aX;r(1cHG znb=YgmzeNr4HJKUi>jMZVZx_7nOG%=RVIA8nThWRqGrOUtC{$uAl91j>Dx@4C5Sc? zK7EOaHwa>!37^hq;s8NRG~v@yCY~#Zgik9uXkGX>RL+b~hrfxJY(CsX_BS6hz9t)B zHXql6tuFJ?4|MI4&*{_ni#SP`k7&*%`fQGy%*UzY(?Liz$bM9j@|*DKt5Xbo+7q=3 z#HT;(#223Ec|%}2p4o-4#HaI6iF$k*a=adTGh`(^KJ9o9so}!c!KB*`e|#FlWVa+6 zQa-YpljoWns_Hul2DUxU!_3wevX^e)KHf@v`tA-^nnhPYX(oI|N@L*D-0goge0t+e=$P>MbW$;i zKo4Fd6I0%yCkPG`F2S*upv9)9h zgHN|H)BabeBE<<|@aenEv|chve0mEfY`x?*d>WuRM_$Go)*J`X{57YHayj&+&o+ep@M+T4|9yOVVt6zD2J}~Gym@2>$!9+HT>Es$A8*z$d8i}@;mr@2 ze32vv;mtKnZX?NsCcOCqQxCsLSqI_G$C&t;AkHlh#G4)_E*HdwCcHVDiT@D9B__N% zjfo|KSYg7O6PP$w5UWgh^ExID6hzI0H-|8>t02~z@a6y}wh%;{32*jh;!g{?5#mgE z^L!?56~sgn-gGc=nIID09K|_Ub8baiX1rPR0$#E?=tX3Ia}a}JBiJ0Y1Y2DL>A~?Z z2OoSypT>WSFq?z)n!lR7Ng@+8YVH_Ux0<{Iy7sG3lh+VtHJQS>L_fuGlbZYic=I(RAEYlUNcuzI z&2}h+jyLz9ocj1F@n+^`R+=6Pl;#+P{qW|2%D)=k{CNa=C_LVbyq)A-c?L`Y@-CrX z%~T?HmSjWTCHWI3H<4sR-X-}xCfEE!BpyoMpJ9%5%n>Z_GMT%X=~>AX25*jIrWukc z4BpISrfVdV#G6MsYTY{q#SGA#d!NP|)|^d5^Vghg7Ju_h?M1NFHNdz**X|~%b;sYq zNn)mU3Fi`hE5}WmbIN#g1`-X@mvyA>A@JtG8x6eq3PuiHUnJh_u#xp;NCxy}BZd9& zX4wb-`*_oDKfuh<=%9)R#eRTv=?~rhVW2x1KmmpS{@a&UJoGXY`COrEf6Q>EHX2P?@ zOdKhQwI)3KHzuYEqRoV7Z)ReGAjX;S?6pj6B#4P7Je$qLJ@dH{2+uyieAb26%mr+x#wP8h;Td33Kz|6O?xJ*&H{Sn^VWLF(`YG zy_rkK!h~mEz0Sb1KZ72KXWv+dFFeu1QekRFuSZzo*^vt77+)=LQZ2WZZ+NAQL<$3ZlI z&6&xggc;8s9$vTRYy(|eOi~N~DZ;Ed<2je;_c(6SoKwcLuOZPOeK}0(9sU9*b~A~258U(N(;!|LJp=p<~12%?US=?ADfoDPa7S{?k!R-X_V$ z_$!fMHj|f0vN8TjyxEJ%k4ti>@%K#Tn93Z%9Pt!mK72aW2tMaonUPe*oT`h~$IxWfn<% z2)x-2h0yWlODLxaZ#H|EmFA}&P@4BC?1wjBU-nnSoBtYs9tw{)SKdJKZo3~$0rD=P z-pfp`_6V{e?~*)+$?GNAkatPGgUK&TawvHp%^Ys#2$px5On+v&K{AEGo1K}duVe~? zH=8k2JIN&R<~tmjcqe!khOpFUi@4ls(8EEFon!;mwZ7SI3)n)G82fZeD~hJke9T!W0z!3t@>jr=k+| zcrzs4?CC^*hR2)7Mvwx}z8g%s?eO<+?q~8iNjAn`i3E2u`7%j1#$Smy*D<+^B!?P* z-(rr&%n>~P%3K~{rmst=jKv8OZk)}5E(ZNRA6n)p~vRuau$O(GYQteZ#8$H7*Y znoI*-%M@xdk&}d)tSzRrqepSvq$Ym=-t;2*Abn{;5+4F@Zg&}Yvp33V!kbUL!Adiy z3zX*aH%V!X{h`j+|7v(M<5F}?c)WS#H6-tIi@+2h?-J^zFnOvZ8}cs62~565k_~y6 z)-~G-BU;Xq&;?41|;xn9QPlUd7d<|hg|7Pqz|G(hP-+Dm=LgUTt zLrI8-&UArdb%;mv!Px{awpc=L89zAK1x z%LDP|txSAM5Eq*8=2#})C5TH*cyl-tZxqA|6W+X>iHaarneb*R6T1kaX2P32nAltp zYfX6b947v7C$&O`&4f4GG4T^Yj5FcQXePcbh>0e=X<_1Hf=GC?FK2J9NJB+xoo_4GA8AuHkW=KWWa?TDKW zCf#=UK=MKQ@-#_*2)uc3UjuKhM>$P+^Sl>WXXWl2F|}1fI-(Gf4n)I$!jDz2yb4( zLf&@#bnKJ}HQ`CcODJ6K4sc8E?MC#2W-L&V)DT zGjV_*n(<~S6VDYy!kd*Gv=-9j!i+bEPsU3&2g8W$Zw_W)*a#j-yMe7PbI=lW?UEh2d9oV2O-rUdr(EnY{Hv&B46FV*%P%2#G5}ng)iXWY!6fL z%mRcZ-kgU@)cZF>`ZtGmK}Uwin;mgV1?S&y1Cwq${PAWCliiYRjK2~IT9|yZBpc(e z#GBOvDDi=k9BTaim^nH#NAUP7b6Lzx4J4Dqo6m97+UFvaJYdx9kw=nC>*;3@&0kH< zc$#G0JZc{8S+|<(09_j|)T9z&9yPz6NP+0(95<=SAAmPIp%Ov*av@242)x-Fh0xd2 zuR%HW@l!wl{sb${oH!`Wg!!a2hJQ2n@xL10yfG0S6CQ6)${>+kG675h@-Cs?a3;@_ zWJBI1Ii1P3OR^#Fl6*dshf8uOd2huWy_h3d-eod}(y5HCB~uu@xs93j-%1q;fBv1B z)=MUdH*evDtxPa}E$__t%^Br(9e z!ns6yIBwFMQ^uS7k!X;<^dfZ+fj3(sYaMTPKzxLgp;cyl%r{~?G=On7q|6H5fK!sOqaz{IhFSXCZ)ALw;V z94LsI$-g;-iCqP;)`T|)FtLRo+D!h<-c0;y95+Io32&ay#I1suX!375n7B+332%<# z9IS~nxiI6+nz4Av18HL-`(4b;LEOcn}e00YajfbK8;_DFb|~jIhW|?Ic_os zr;aywA=MyzFqV|rgg3h)Umb6*0X-0J&UzSMz`xl7rl9*H2ur-#c}_jv4CCMY#(|Cv zk2hbvlx#=xO<>Y(hdWsczS zSLV{6ndV3)i8p(4nXKP;LEZtQ=IR^qhSlUFqWP=InVSZP|vKxvLq*bi?W zDE+J9&7b4Z>EZEaBu;_g{QC`H3XpdR^=f((xw9l2@-E4rFu92&8}cs6?=iV%v`9RZ zyg$Pn>zE^0-eod(Gt;w@DGc5m$4oOMQyBkdCNo_lnIzsk%2DgP1k3|8=ick_hBapa z(flA@JtP za}2!s3PuiHUnJh_@Br&ek7m%9jTH97n`NHA0N%7-kxLS4y{lc6CHUfB<;2btdGK)< zJbLp*q(onHCL!?Xa3-&jQE`2L(E`9C?A=!-aRG8do%B*XH`rR9a0HkF#%Fn+D2B;y zNjAo3-T%qtn|3>;6w>Y9N^;9(|6Z);mu}$pc2! z9>YmF$cuA5(frlqjQdE|&7*1x*y>V~_MmIyg_^{0l2DUxuc5S~y$5rf8N7NlW&F6Oqfkd%#aZ)}Ag36Do7C6P!j z83v{Rd6!UdIFsi|vLWx1oX+IiCE1X7Nj{&+!zDSCytiVGUd$0J?=qP~7f=~nOQtY* zbQ?46&!LKh_kS|eddVd5=q;SEHM1i=4bYq;ILj$CCy8kOno~w{6Qntf!B&^%RAX+S z9U`0Uj{ltI33T(rE1XO8ha5L)&MD*3{YW%OUwVS? z`DXHI*V6h&j-r05c$8SL{e34~`Ip<=gW?pmTv3T%1;0|XI_Wq+RvcpgLZZktCsuLi z#VPJW2XPYlDpzPX=6StKld-8!D-2@ZJIP>1T`Dv;W#X}} zb5Q9s$`E{HGUbp_p}6nZgx^~)L%4S7SW2$5e{#*Jn6^8A?9QAtYCDzsF=5=GsZML$RHQjyxw znJ%@$8;k5vmL(|DOeLivzg4E1mYkWgD!)l4y>$;vt|`Q)$&^oT$yCspGaPF1X4~*> zGRm=p=yM5HlWd(#N*XPmQh^jw z#rF_l@yqoy!0NX%0KZy48NXUTE%AT%m+PU~$%baDEsO=YI9!D1^&W^>5m{6lQ2;S- z?6p66NtC4&TAUob@kp98XRxhsk_5s4_@#YSK-!>PsEoeThSjx5#dFCqW%S5q5JH4I z>{L>A<#!xo{64!vI8gmpS}Xxcn&V2*3Y+3R>p2`mWj+~y*c30( zuQg${%#xr%#y!q`kSr^mYIGzkh^Ni+x~ zVE^#NuwpLta*j7cTQ8$c^WN;ZQdfEZBx-Qnck1=3Te`3F+IJ8$jgmk+mt$<_u`}CS zS^>6F#gmzk?X{Q71c~e|rHv7kJjb$gN?o4IZC-mC@f4TEl>7p+Vb5G@f17G6Ivg>j z1qZVm5WBYS28>DK!-F_?iQy@)HVo^N25UL9dJ1b5_w2)S|sZ~~ZqYPp| zzE>ED-NoFaD-};`jQK+na%!xKia#Q)`$VZWYF+6IrQ}e4jG{K=h9rATZOPTnBtBHT zxD_?2o$hNvWh&GyUi%vqMmqsUt;;_{YX)@Xi#GN3N-TAX18rvECS}%=F@iOYzBIAM zF{|ftMO$-H`Mr zS5YBEkiDeTk)uY2wEh92|6dV-zz=K50xt?&{bFu_)<75AqN={K`tRBgL){Lfu5Ew~ISdqWbo zLYUPfTqWR}D;!GEk=RM+1L?pduT*9ovBX*|lj1Vf)LNxzKvcgp|EUpy$ec_U2qDzJQ5cKECPT%oapk$zVveQO!3^n_yUrK;QajCcdD&B z2HHxmed2{tmXfkN&x+|}!OVr;WZ{jX+O$|!jY{t-ul+K-N~xN@v+gbqt`90!hd_tG z+u0=EInWJUXzTUT7}kbLgCWeRr~|n*G5vG;4Pj2;XD%>P#Rw)@z1cZ{;sSEdOp3D5 z2(|?+6Vs^}PZEGAF?<1fM5);gNFbWA7GiVW#rS|mu24+hvDAR6B{9h{3yLL^>y3oG z_G5HZQVdu=ieE<0=xKaPd}62)qZAUt=ikw5b)$AK@nMLTflO9alA2DB>vDh-O7BT&*=uqLunkqN_del26QkmG)S;3Hpb!_gx3m4pR| zq^jPMeKGf2QHV^>SyOQOF4J@V&TG8hm`+Z>w=uf>XS$zFm0x)eC=*kroeRo;jjKy3@p4p7LAFeJK$8n$wTV49y{2 zSL#HAC_1)yJm3&h7B~Vc5{(*L8 zPQYf^WS4r26aEzizLnHbsUuUbO&w7;Gzb>%f5RJ+&(zm}5h4_C?%3cANIoH#Tq(n0 zngh=le3z=#{*6y2MH6i&Xq~7O-JWcTDQ<(t)pn4KcnaBdnGgJ_4opr*OF<%Z&s~zw zb2pacCn+RnK~0j7nEwNf>Aq3J2I3?i{5rv3P0Ree}a4*r+<5X zRagJEqy9Y#IafSO$XJkf`oF)6TVL(h#f>QPXLNDvA^)i^4p8dj^moP=b@eyvb5m}< zLgjy>vv2Y5?2&&~XP6r&AB_pg@Q2}5DMml6 z0>a2)jS5&i1@9CUt69w9p%^VfQ9RLWr#Q|17#LwpOC(@ZsCY&xiu;L#nUpkOk7kds zNLOSvf*3LWmYk_hv1L*sSp+Ar{x~REI~(Fed8q@O%F<&5?7iMb3Z}R4vrQVHc+0R% z=TzKR*<9|^DBVYlbRXn&MWGJh^eDUdP^GUCrU^kF<^tL555l3IUmD<0Pb$6$Zs${d zzm!3;bRU4bAbqHF4& zh{_81%CmqvA-GoI)`wjxW_{b2I`ENJFbLg&{>)KIb`$_cR`GfXURXyx8UEsr;Pr|_DXYh3dcDC38gwNjT~Sw{ ziDCf;Z6bdvCBN7$%adyJPZb^(Q{1{4N5f90e$^+%@AJR0zCvp+W02J!xT~NiAuV+) zFU$@|*6~-D0Q{w|fT5$XGED9{#SQ0IdB0>d8mokS&DA~b!%v>ce$M(jsnzo^NOWe1Eut^WBP-2e18f&dD%5Gz6gl zO~h*qRSR*V6Q#skDyP9{lp=hH`_JcJPEyo^YcWH|Sa$`ce}^+Ysg8{9>&PedW|r5R zu40m3m8r&NsViMY>myu6yN{*L{30SNCVf+;8y0R5JCW@e*R)08SKMi6H%FAxI1a1e z(fpGfJp?VsLOMC;_6ZlK<{D}V++x2Ncplv z2voYK-)`LdLHElDM^}y-<5uFZFU$b}_1d2S1V}7lxsO%i2%L=8aOf2xg|FXhG z5V-=)pICiM8amd#ABHcCp6jn!-{pRVsj*~oOT78LfV#1OQ^u7NHp{Br*AJqi3fpAW z?&R3u*wiItw0K7FMH^~^4F(K_hy6Xg)3XZsx32u10r|h?^3VTijs@g@U5NZI{XO}Y zae{jNKS}q`e=WxX^8ezr5cS8qkoDGI>gxg9Vmi%a^X(ZJ=e75zoIL~42bXXe2J*OJ z)i(5}G7QJ~u%loLIy%fICOvWd4Us-l{g#WWr~0PTNOjk7QVpHnBLV4ImEW6Q|A6$a zfiUZ}K3@6Qo`l>(l0z`&2e18hdz2+pJwUT6>@!=9nB49P>xCDC`30sl2oK`$rYv=1 zCKcKe-uyQDwzo#KrLHlr6b|HXMu&KGx}|L1ml2S~{x>x52O-y^RqL89 znB&4rR6?u9isw>}W5vr!%LXkP_}n@z5ya>h|1k6KC`esefe*CqkRJ&r6k0cPU>dUi zAohm2qp&LGPID^mA~J{gQ-(jZ6&s6e@q;K8WUx5Om%$qd>ceX`N!JM@4Nix> zuizHcZ5W01y7e@&zDQ&p-&xiz(K9en8`cLkgKvbZ6^-Fod-4*lYfU6J7r5hp{X|sZ z$4FllzDMwss}QFAR#E<#l3CP>o=Z8d*WorJ?@1!>_$^c{3@Uv*1Cz9eA+6@#8Sw-6 zPN?l8vSts-nzc1jZ~c2}Ci(~VFH!5x15}0fRB!CspM{4GbK0V91MLKGQfA8f{7#u& zR=QTyMq!!k&Q_Ou8mvJxz#MJHht)04iZJHCfnR^{0WIJ0{!PF6FYqx068i>R>S2b+ zyvUdBO4*d(QR#97rm+(Ppt&(nMcQ0JGhiiUXTdjwg`g7pmIHsskvU@-H}AJJ$1_t_ z=3i`pCKoy1j`*!#`^-fY6-Jl~pQk58o^bgBrhVF6hbb&ijKzItLvrP!)?w`RRJ0!O zi$h}@L9%-ysHmfyK#PiYhInto`*;LPOLoNEKL##n=@2eP4m9DQeqjE+UW=a2J_MDb z8BR+<8zyZPBueTd1WRis!Sf4u7POF@jvkyG!RRe~x~-9}nq~tbNibnrJ{XhyDE7d$ zQb1!TqjwOBIS{*SYodL-Y&U4>$z;%}_@j+HM^c_e(-V@SVoK&waaHS18yXXNWYc(? z$PNZ=D+?u^h|#x@R)HCc3^v}E7)SdOhvQeONnY_1I}~YSXn{fkkzJS3?_lgl@bzbR zl-n@>-!!9Hg=m7dM1i2?p8V`9gh2exS6E+@=qnEnjk#ienFHVOSO=gBTpZjS9tAG! zFPhR2Cbrd{~kz`c444GpF z?y(QxiokPq70DfT*KWmn3zdv&ZBONbr$`c};E6ucw>4BphaiDlgucEaGs@ zj$*rr>;naRcuQ+pgqhU*BCl7h)Mt9IPJ(6mBy8cpHjb}O9@YL%p{nC^9v@nXAwhcz z{iI#j!x$g>1dk8!teq*(h`?9A&09+QoM12HR_6^k6IIu|it<}ZVy8_+`w(`)hI29J zPVR*ln0yCVd4c5vP(0;opVNTl&bk^sBu=Ttb^i$aEb$sUGn*g-47IuVgB_Z&C?9PZ zgnzY;mJp;6c)&^a8%AdvK-N&sE&`SuvrL7`faGDnXwsQVQS!3FTtW7lh!Rdt#3mqK zVu0Hc`#3g=-Ls`idH-Z8p7{3XD5{Q_{5#1GDU8K1w7dn%aZ7D5gf9Phq=!mmt9wK> z?%zYLCaW=v@;0h*J4KCZq;bhS(@+g8bD;M{HRK*&R72kdOij?0nW^@_Mj{pGp*0ct z&6ka(YGPUOv~FYugsTgcq(ZSJKY7&YS6}_Sl0N@e2j)^Kv8;x@udy?y#aaqlFNKI& zdJS~M3?i4nR1~ddYZxhAMwhFuO@+vK&vJs%$Vr3@=s@d7EC#7y!x$L1b^s&+<46)E zP1_@rLVfSCUP0E$eFdheU|*r1X_2A{89QCbn0SGB3;($EA9$=ssSEw~d&i;N+M*;9 zzB;zY>i!Im^&Qjqf)6h+~UR_)X9Ue%@qk{il^lXj38f5Tx?do4O;{Yv1aPB&!9)@Hs*; zi>u`Oa+rbQ9WljULZ$@bBM-~dKJJMK(F94wF1iQ3h=S&!m9sMIONj9UR$8njUIEGaD8DDpMsO25z4o0* z7XpAgpH(brs1cdMqlUfon8Jt#1J@GL+7nzhG?$0j_i7dG#-(vl z*E7cI$zFRT=S3o? z9^@OuXnH_rL)H<+J-`6~&GDro&SFgUx1Omm z=``ud{aVZx-Ab_!<(d7>lneolxo&zuTl+LC7lW6D!wBXG>&tVHnX{o&VM{~i0c zXnx%mt>U#m_;aKM#{>e0ePJJFPNg~Vwza7(BJ#UppIbI*2(GlCDN}J-K~tH+Af&)E zsL$4>wUG7*--NbILJocQM{ANmT>`u4B0B`}aHrY4_8t_WtM1iRI7vz4Pe?Q86KbCS z2d?5#lZ)vr5A?Vqpo!vcu13HjoL+=g#ZkPs3f@A961KnwUbcgCJA5h+c(gH!LiXBg ze*qSY7BLB>{++{B9Dabqasi9hFMmFRXRtx3`igtpK$!Yu6UO#fclze#@VWxT!FAf6 z8;qvvHg>Ui?JIs{`#K6vL9Uy1CSC|1h|cmP-iR4JbV(-k5mkog{5n^mNNA7(PuF?K zS^NHMoR2JX4@kmroGWiCI+aBszgDR3b!NaEgz&82XzF(dN~rr)`usvw4VduxrA@)` z>G>9y`Mwq`E;rVuokQJMS8^wpUL@*vob*EA2lOQTs0Ug2nzGpPVz{sV5wr*lWo+uT z_kpFM48nV^!lnQ059aiJ?ZN4zJ(_B_pug)*Uf`8L{KMr>KaupmJpK6T2kW*|j5;5E z$D@u`-iZ?N3{yNXP`}s;_7*<7A`5)SZT59 z_c*gip0U51ag&@g`0ObRz*w*SR+Nw0!fPKbLV)DMLml34jVo)RqQmk#_uQNfe`LtA%y0RFqUYB`Icy$`Vvil^6oj6(HS;u zj93#(RzB)CM4Ks|Yh$sWVii_m^4rkSQQ!K^-`N<6`-?vG+S57ev)@!84DaIPu|D>O ztk7{@I*0O}kYq*OlZopWF2o?^qFtw3w6?JAK-MuO?^1DLTCrSNNv)7ei`O_on2$*m ztzl`uLhW5@qwYJLi!sC$#%6l*Ff;b%55)Ncas(o^OcfKbBs3aEQ#iPHG3N|hO(R8} z5$o)B2eSs2I@ra83u~ZUI z8s5=185M=2w#g;KmOAQMxP{6bdiXf4aeQ(J`EXLB@D!E6VHW`oHAe?sP0NH@keYVf zcVcQP3R=1Tteb2LEaKDVC#XTGq3FKPSLVXyrbm?d#x2zhL2 zH^=gJlnD8qF-eBL*SUiuaD84L6PN4rP%$`qejvvHl1AFrvujxG=}jcRNwqP0vPOf@ zE4#rRZLp}UR>Iy+X{04XEovG9@1aK&T;rn@6~`eZ;N+eKb12f&;#It|r?_VzP&A*|zSi2H4L|ATdr4ml9a03`$FSr|Kx^H#V#5-qCPjF;mC!9wXS^X62pvhVf2P>O?gTSr$$fY*q6XIaN zMMz_d%krD!6-vPILUEQ^G$zE?={wy1r%ZZj35WbGkUH*geZ1YS4Qs<42xphJ3$`tc zni~9_4So+AAq>Bv&tmI|cJMSqPH-MWUp}fH4AWqeMT!P}|7Mu)XG7RRd>_J|W0rwE zIJgDWgAJ{iEI3KLntAQx=)Q;|#333e*#>QVM=EL@`5|H3AJRa^mZxYsitanLhLvDa z<7~)GnyuWKZ-wa6^#DGG5M`?CRmk#srlPReSL|2VcfU0XTd7^c9o9)H!tx(21rDdn zH2K<=O05sm8j(pNOVkIz4<0qKt|`jxfH#}ej>=Azu|Gg9LF*NjnkC@tf|ar{N|@tR zE9ut&R43a|+Ptb?>Y?t%94AL9&)7|lVi+22d21FKXlAyS4ntC!(fw=O4+>B9Ay@=D zdpZ%;I?FR5c??Fj4D6<%`_y7Nh#P6ZsojS$F;)FUeDyln5%oZp=MG$Ia7RuSpbRt= zp4pq|c7~#?oCueCEjZXL6^Fn)+ih8e?ky#5WhyUoSQXpsFIZxnB=}^r!!&-3e|5S;jj){>4WDZ?{P%QiLQz&O8vaAg15I|R z8AweU^+VFA4+7ql_8h)+oHzJdx92~GvFC^K+bf={u*v{?{*d6t_?%ItxcfV5+8Q=J zqY4SS)GUj31IZV9Di`Z__#jg)P*T0Ch1|@B(5I*Dj=AsA-^8$!uI8cJsSBY`ZD{+} zpk*{W!*#K=d#gp!k%)pz6}6zw&0EHf-I=6Rz8$;W5G$oSQi@jR7-PinKg~1hr=#6r;%31Y{Mb=y;D9`eO!w8>DlOcfvm2kNd%cHw6yVH>dl zk2DW+8)));x|adAJP8toj%}8poy%feMfM9b$2DJq4xG@aTUqtv5M8>Qq2SRm?t-V# z)h}S3l(f{7^_tgy6gDB|>asC0Gcw-Bn{uzcnyiE;3%Tq<$Xx(8de$zl{Ud|%yR{j= z!1<07UG{hJc5OzZ2zNo#boZ@~(;5&bdmrAru#qqeP|q{;QLTB5L`3O06OZ-sM%{K) zuQF*@U=^3`Hmdl6mV;r@r8dAkMJSC_8O2{;O3^4{eimL|fPbXETraqRej zA-x!XckL8in++gA@{+85!O{y9z(-XZQP)G(J1Z(C*p=SwL_L5pX8>7aG!C^kpw3pU zkQy#9gFB53DE0Oj4}ANHu1(fQzMSsVyAnJP-c{FlcfN1D>mv9%C@Kn#W}|oM6?yY{nu(lZ0ENX$K);ryTO9krLg@H3gtBev?%VURrP+aG6zz`Y z)VPqS_b794s+SG>I;)`1%Dcq&$przWz zF4bx4RoEcE74}JfMr~h#4#M~F3w$Il)Q5${_4N396BP9x?K#o98IP*An~tM%LF*&9}Ywmx<4lwH){gAvv;Q49vowF1))+k3WC&<{PtJ*_l@g#ebbTr%t8HgCME9c zpDmEdQo27-%{qq$*XOa%o(5M|2eAnMA5hkRBhCz$H0|&@L++_vkM&jU00tr74&EUR z(JZv25Y|0v_(R$fFRA&*+NMSn4830wLkqyFz8^q%)8OdTwp;mg=|4LSqayYf!gq8b z22m%?k`+0Qto#%m323Weq{M0`#?3)Z@F~nKR!R141rbi&WCl*Ub0uu)gImSCAC31% z&e}_tQ^9OpH3!L)nJk8vgx+kU^G!u7oa9nL86D(DIb9aefdb-2KOm4-8>4^_W_TuY z96akpX|Y7rmr4uN(~-O=ylG3_K!<*iG_GUM#bDCI-CV!>k28d*9;JqwwVFzF3cC;k z>vQ+tPoO?m(AhXNxKW>-q%9%pGm&Z@qCOVv4h&nLE`MNs7C&?X^_lgFxjxOq)aNNa z6&Tz<4eF}T@CJWe|9t!43DoC}kInVzL;4q@e=4cwA^In(uKK7^zpFmM>%9u8e|Boj z;#!&jgm6Ue{zz1a9Ff>ExIz1h^vCCjY%FV$?kvVV_Mse*`a58_h=O?OnWO~`-7^Ub zkxhVX)GFPXX}k%x33a^*>93^v!KUHvEV#$yFCqXv0L}i5ZJ$&AUI4r@KW#SZTB$w6 zhBLGua|+XZeoU7fk0l;%$0(R9j5$=AL%KA@Dh>e2yVRz_rFnipLIv-U>4bmxP2xbw z{R($=K;eF710T9@+nDAn9I{8Aijn8i0D8f0nP(qx@a`SqFh12zsH=lawBOrb>6`rf z>q{QALO01;rumv=aA1GIQITq!S(t0#-+{t5EE3g_Jr_xxAbM_cK#~P-$yThTG6nYB z{7U~~rqof)P627swn_Bd{gk4}(@W+I(`?~B_w`&cIR4z86CD|%|K!#M&#*Z2ipHZG zjaERd${=k(6!EgzR-lb=dLGklD64O;0c=Omh3+jPsSS|A1eWNeP(1r0B+q5UgPF48 z7l9f+c&b+6cVqC9&tll$SVJq}6<)gq-Ql&LOPvDeO)DH> zwpsF-?53^#iZH(FdqH7I5h;#x@+ahPN^U zzE_ON8L8?q-cKU^O<#dG{Q3&qlyZIL9l-}^Im1C$q93Du{FH&$zMHahznf5j81|%~ z(F=Nc294Fe`SlnaV#UlwFoD-Zy0GZgiX;L)iYZnisft()snjBY1~4UyDS3<&-Jq4> zJKuaE;m9#Kb&h4?(ruCH6MSWLmO8`cDk_ho7I_`t87=bjdeI{EHX_q=i;WgQI{Zed z=nEjZHrh;sjsF(Jyi{w>B`9=S@&}QOs5Y$VQ)1fBs3XQ`47NxW@CzM; z`pZ5+S)AfL%Ajm27__~aC?t>6wP-ZtDcTldl&j#jbC)Lz*g{?r4(ACx1asHLX2<6#mldk zQ$LG^d&bLek<|I{^0o?)v25Bh80(S^a?UQy3&zDK+WsNR>tuW{&NT61Mg_7f;ICN2 zS1<^Vm$Uhw){3&zY##WREE9g;Ez~;x6sGAwB>!w3PeJu|Q3D9Lk{!TRu)F$Rh`7va zc0gWd*O6C~fK>8be)mhz_PwHM4hv=;^rK&?5(ELtySNl6PPS2;6-TK;dZ7ze&=?6f zMStdycb&+Y$ceW2$?@SlT5hI0b*%0J;qjbSUt+13;%Ii}U?;%(>{zSzUo0zs} z4?=q}OG9s6j$hY6w;E2EOV=3P1}{A}E3U7_r{*~)sydt+9pf7|+(wD3u7DCS7fxOKIt zPY#P=Q&c>h816sp-=q26^aTl;>0!D`zZXQKK_)ej5Xtufz9`s8GJuT`{g^|_fZT+L zp)ENRx2JimPqE6c@ncKL*9oDi>9nv86qKWNGky4kW?wa^+~df1nnHGBeR&Upe#*WtYL3AA-aYdK>U+gXbA5OI9J;;}sb#{}S9rm4v;zlx z^?ilvL+F?4J0iHgF@JDV3NI1M zboBE%_*o|vYvoFr_VoA205&8M=dnrPpjAmSzE;MQpZMhJ(vtb@-2+4NPBnG|C`zkT7^m#7>9G4skVd%rW3R&I|`zuGhXB4(lJ3@9S z3@+QrG#%pPr|AQt@JMnc{QX)~5gsAWrRESL}AGpJ=mSBb$(|GHphO^&|@UoTBZztW&7n`*C+ zUSb3}SBicM?(r%`h1-NrShw(AiL4>`yc3smhUx=9w&%PFCY_|Dhil=$_dfrYLm@4| z9Hco9&!OAy;C_+_z4rMR(tca9A4M3gByO&3sy!{QS7|E(J}B7C$X84mP7Lq{-6sR% zcjCV{pnk{xi%`EeunOW_svP(C213Xqj*lAh=ac~Yyrn|^$hcK%>)8y4Zo^lZ=4(R; z8{l&MGM|LqA3*mxoLe!+NgD$*UNFb?^=nKM8cR_WyNPsBm%#nx2Zw#gJ<7>I zmc{lYOnZFkK_aqk<^9CwG_{qstD2;#?nP>u9`>xz5AOM{LGcN(x%}9Wg#36l0he*; zm53xw4p|BF_h%fN`5nD~M5%aG@v9#XDkoGw zx@Ca(jpY{8N7nci^e(yrhMXz!dDH0A9R;IsctOK~ z5iRFM-@%Jv2x2gd&y+lT@M8Mc)aQN&FIIj@EvX;8aDbPRX=5bQl9F+G?u10MCsXC7 z$Bpu9X;`Vokr=`uZk%AC)t1Iwg;-i#x-u4<#u1|5{?hJ7zSVmfy)bxY^B1~LCPTq| zee&pHKAR!?B$vhm^vM-(a-WF983!<;8fz2uE2VO$`IW*S>A&CHfzCYMeskk|#zABQ zZcJ(FI-kMvhxt>k*B*i7>3jx+?%SzYqtcIQeDN=NOrs#|F^!=?$28K8cT6K_{~vNO z4r`Pk_SZkG;Tx5V0Ixri7uD|uJ#2Bq2KRjWp@CWq7@>Y2W*_M}NiyGjNO!40rDsDm zp+hl>n>IDGrOzSrJ{CjwNv(&Te0i=7Ri0YB{Qc#@en0jy(~T!M)9kq{4)>dJcBHEY z{=uot@1O!k(;DNi{666KR**_IrvgVV^wg@QU_gQk0Y_OWc0R`fesAP9(qr;I>WB+D zW(DUMSO9-~XU=~UC#dJ&?+gF@dvGiu{~z86&i_Na3(U|I^Wii7d;K=>ZHc=XQm~JSQ=JZvR(Q=zr0bqmvFUsgq*r2}(;SRg7Ej_=jt}pt2^)o4L+OLkD z^4hn&O09OvwKgQ|gnm!uV$Ln__f$sny93mbg?vJxCA}C;=Vd(d_h&53;`e(hTc8N0 z-=F#9pWOYN!X^rj4)uE~Ptb?P@2U8%2J-v;nN|3hQ@NK@;d1;Nejp`qKIKr8RCg-*D9X(w2| z_J45sih84)%JSpLn}$kn))$~FFq)MwG%l)>6_oZ*e1-9s?mRWV!8r_kf(2f9XvtH- zMiqVrT5Sxy>0h^}ZK=y(&^KtyKR@Q%0K}hFcl;FgFiZj`@OvXqmsxz*?FDs{*?(Y; zI|tJR9#;X7u{GrjPw29aq7@D@Rby#`{>;GZC*bhS`zDT1laANIDMeR;I1aN)&M(uHo5OR~$M$P*PHP0$r&09E8 zu;@9k6AI*C6`&=x23s!4UYo_E=;Ee5M~rv(qsq z$(tL%i^;;*5JPPFL8Y+|4)sT2u>(Nfm5DYPPvtKDn>KGNO>;)Vyqa!QVCpoc zUXFDfaXQbbsM8#@=!42uYOn6_Rkl)VNtGoJUkWukpTM(eDS_V?Kt-)*QoErc@=$+U zm=kz+Z6W)I3g?+l;N_vZ#tFPUZ5T6(wWIA^GcmSZ8~z|mkfi-NFGBiPefM#>)E`{9 zCWhRK+aSWc^yMTGe(xF4U2-j{sWuQzN+zL=bg;h;5f+Q;-YsuMU=4N$bv~AvHasg& z6_YC!+b^=oJo4awLOU*7XO1l4j7?cAVU1rdf&jY3$ z{o8jn9Wgte40k15xA4E?_jO{JMz@lr?3(mKV8Z$Gx{~I&{|j#0EOiaFTdpi8sjcE} zMeDAx6KE6Y$yjYLgq-Y%%iRGDaT+eW23lUJxKDF+0SkW2DP65Cs*Q~C%*HA*b#)>Q zka={0m;>gSPot(@n>u2ozBlO4k@&z|$OZ+iXV5)k!=I$vyC4+S#$-9%urx(0V!igJ zkbKwx>$C;*HqAjpP`}M=7wEuQ_?r_&zC6D3d=eLu(Dhus#<-`-q+`ia@cgQw2qn?o zZ1|6r_Mf0Ov^&RZ-y=eJ4Q={dM9@3avhhD>ZCY-G*IrI<)m3ZL@*>>Ra2i>kaGpRz zW8gZ8`!bs&qf*p5;7a&_1`eN|4+I+bWzO0}?O0cGCwE`w!H#1TSy?i_N=E^O6kD4P1{+?r8J6B zGL1GYsMZU}ibI#P#hCXFpL?d8Em!5YP*-7060Q-KgdNq13cfLu&hTgDX~#nqMo9yaYBkps2#pLO#W8Iio%1M<`~q5bXw z_*)Lms{67&Un_(U==givp_SPFvdjkQ(_URqV|~cuwtn}A@qL2Y)97e%onWFA+&uo8 zXHF+jLcULM=-{grzNQLJ&kQV=lQ17C&)AI=0U`lYJVPB?-UlqS84lw*DhFLA=*eHSc|OJ;pJYZjld`azX+?e~#hsOmFSSfh^yeFn;i9ZEWQ#t` z(zITvB-AVCG5Vwt3I@0UgB&u4=Dr*rq#VeT5|Zy*j4`6f*AX8OKEN){u&j(D%zK2W zgy~m^&*6jQ`;g+7l1|e*KRu;-4?!YOX=-ujsDI<7MyyZdjP~8Xjw2Qa$XkW8-Wg~& z@;Bqic6Vw9RGzNh;hjE!DX7<(%;8(C$3f-6FmM~S_7EDeX&gNlIN_#U=Ds)K1zA$C z-%W96#|GWH=q!_4-{Nr55jMiHXsOoU=2MqO>f1+wA%ThCO_<63TdC!;)>0EAXuYtR%AyP#y;__I&rjd@cc=LxMe@N9Jn5)4UT=vh^7mW7% zE|BG87&A~3Z^6fOLE{;aa zQbCsjc-2uDBJCOAe~H__VIb8AvCye)GDRDXCKc=|I$QAyuKZ-qjc4hiVcfX;%RAdhVV*hUqc6A zJYCL!Ek@7EhV8p?*5Cv3ofDejbZ9}RnAEkj@l0g$VKqa-+ysz)ydVj;|bNb zmZXV(u0iZd`7`Q^`5$S^$*rIM6FV+Qy`c)Z*c6S9!TPE4D37Us;QDE@7=(BNf*ZHP zujj@aYaa!>uj`=O?=JMEooH-%Me;ke94t8ofGGSAo1n|^r_do)8 zocdHNV4W7Dw@dBFUIB32$Q%vj+3lF(&v}>}?jS>vOb%QZN{0zhBPu=LGXLAd90Cmf zQG}9k-=7F!z}Y227-+U2B&R+bw5}MdsX&KTlJJaANb>WKP-)~|a$Ki|{gS$WKkA{n z{QKwm{QEl|WIkMw-jN1Mul*V-guG5|@f?hIPtcSFmVxR7i|JENN9w=9v%&UAu16c| z*=tb_vG>H7?86`52Cq#+nE&_Y_2ikHioTxgg7G%ivr{-0u%7(%-zihf0(JKSa=ZiY zOgRQdL*}0*TGm4Odj;6QU$PqJIOk4jJ>!XY}fN3b7vj2361Dn1raz*aFpBB&sNfUsQGMtoas zBdyi8S`n3(q5+ifP>I-9e3gh+Zj81O`xAVz|L^zA+`YS-z1e7O`}_a@$p>cdna4S2 z&YYP!^OpWI{v3y1@9hSRxFA-q_g*acBi2hlKz$JV4ePyo93?cO*E?s4Ukh7owcgpE9#QL^nGz*py|X{FJM1QtpJ@}3l|H68((P>z6 z#)I~wyxyq0)`O1^z)K7`uJ?(_rKh4Cdh{K=lfAv9E#^QIxmlGKp?>7hmUS7fxEQOVKnXsbS zqsK+?zzp~Jd|z6|qC1eh&=~lu3p*uUU1FRva6Cw<{kMgJ}IX^jPLa9fJ?LPhP}wd{B}EOJObFk2GLaZXm;B$p)oF7RReg26fHy$GQCYgc71U&0;_{(aOF z#s6fAY-d;PsV3`RKy!*#Id#Z8&7Gc3_I^>HjO%Lm;pUeh6Ds||d(4Y{c-&kT2{2EZ zZ8KJsL#{kZ!R}6Pr36mi~xf%U9U&{0S$!aLAmAJXj};z&4-QMnVTf+81hcnIU&i zBnHJ`dcT{=**_p_8Yt6bULD@&3yIy@+s_x8{E($dl1<(6XBdaJ@O6p8_qR?}s&~L0J5M*G; z{W!}>bFmu%_%5vpx$joqrT5|fTYOsiJ6T9iQ=}hTpF#Y=^d#{eqkL;YyEc-c{+gl3 zAk8x2<}os0G=L#Uws|4B;bS4kDVkE4rJ9x6kh`1mE`2QI4nctHQqhE*XB7S|$w*Be z<}ycPG3)2oP$hyF<$;+U@WB2PV8vktJoDkcVLrPf{fkIaYbaj#Fj#arCJ6;ez zEIB^UCx!6|cmlfdA$NZywo2lBO{EU)1gW4qA=7(qA=6DP%s|mrP}v$uWgQb~^*R;b zfstjJ=@5vJY2@a4B(_TPK|%L`Le~Iv4Uy=68iDSwKoA&tnMSu#qiewXe-Y@$3cB+Y zy4^sxI}+W|5$Jvn1WQMv&k&JL)aZ8OeKw-gCDcpMeM4Od6g2`}V^DZ@_1%^1-k3+(J)zKHQLf00L^n?*8tWH?p(+;2c`zf9#nA%rKueV> zMq&DK_)?@M-X$WHbVX&JP#LADw17%WB$Ym-k}+m&I8L6dlXEW$LEvFrDz4W;)o_|IhwW&@>yMv znTnm}nUB-ljlX()l!RFm19+_urnS6hiZ<2@dspxnBRxhYn@O}8AKU^WmZ9;*Y}VKs zcwqoW8yy2MvGId8~O>jk<}2rt~mFEql1(21@XJp;V*|fUy!2G)|17 zv5p*~c1Y8w718vB`&A+TMhM9^3c z{}PnG&v2bsK$-b4MYpZuq}*LahWC`hVFfaQhnpsfWdct&G2opv-1FbLFn>hWJm?Hw z-H=On8Y(8DWJQV)$8nLYmRC~Vf2Cl##zt2CU=<<}aXgE-wyKV@SoMe8lY%uFG!mHxA|ND0%A$zuWlDxj!}+%eA`68GYeP0eL1P+2EhFqn zyv!DIyETn+(kKTF{1+OZNNTHGZ?R~UqyAZC42;KU8X2o0Iz=QUlE@cAWF^aw^V=jc z#~L3fI*X#{9AVL!1N%RM&g$7=f#qpB2E1ylk-!(Tm>HkYvBp|=*N9ahxlw#txmn4i zs0dZK*EWL4g+hb^6U9UJhBDN$3s(t^4=MXV(NdULOOcaWo5p%cZqX>wG?wC>dP@s{ z@zWc^8S&|iY=T#fWzSzOMCL0ZH6Q{$@8%qdE|#%TMD{T$GE#$ip$H;Ng$Ofpv8FMd zq3gQ|p7d*k#?gw#eV}n4Xw=y>K9l5DMyfT9`$F!6R_P!k1Hv>=Q$@SF2@P#TyM@LY z7H*)Z7Bp%>qrs*TjG}R@rcsM?HxV@IDk-dy9%z@?>>&FHgDn-lY$i*6j3V+Fh&%=& zjW&_&C?e~Djly~?u()c^Y4x17*R)R*0P2(j=ZVBrW zO#=qz4y6DhngbOoBSx7FWsr~e7;5F?HleXh(O3%_Ye6GPx(m@>e-w@VK*oHm#k-Ud zH0~q~^pKYB-ppvqh9BF4=;+k5qVW7);SmNevA(?__jV%Uj;M!c@nbhFfYX0N3n1Lf zFFxiV&HAy(wj|GBa%)nxQ#mE}JY^r#rwbpu(ccRNOJ@BQZQY;WrBp%C){y~gKG9GC z?w?)HK15G4o+&H>le^)kqD z(w)0i@84UKFG22P7?om?66}~ym`Q1om0}UV2VuBC;5PuH*n$e(%gA)|7>ICp*peAS z&QS1-5cWJ(JUM3}%ub0yl08GARFj)usW6FmzK-V=bHb~&5-RYi3ZS*O7oQkr(GvW3 zZnXTr*=X+I{l6vwIsfJ7jrG~qUL!oMhsNluVpSV*FfO=0vM$5pN_e0yPmiq2Uf4a< z^zis$w5kH`h1cquJPfHAY`g(`Kz|3_)d?#Hvz=c&oyyP(ci9fXzeX9*{{z1 zI`(l;E)jdVM2y)|9IX2cviG2)gKS(UTniD&_F@lO6!;`_jAgib!hcv<>byQYiMEs5 z9J`o*{`H|yb7#z7A!|PD?UkqTu$dDtJi)}qm7VIv3~Uq(at(Q>dCdxTF6eM_Bn8UY z+L=}P?hp3jz3eXu=htKD6edHl68|Mby~xk%a^@4qeK)49XGURH{fvbbxH407qIWkY z6tnE#iMY7HILyAv;dJY`zML>R!Drw!94_9+NF=jht=Juu#@nJM{Hl|$w)ca!q9^Af zvA*(C@^5sPlcTcvB}`qmWP|$A@u*)Graqz_)b)K5k@KAyx#vFWNjnc@g!emOlOWFZsZE0R-Pe$HDc@uC z8Dmn-h4&r`;aKHa9G=J_vpi5lA3P2!zQfEH_2kYBp6gEHZ!c`Cgyx1C2y_XJ%)&0? zI?WpI?8cTm>dAN6Xh(jtcsv_bVm}YyE#8%}=;xC25vVfQ{()@dP*3v=JRgapuDhl| zS8*~q50lX;x$jux-9g4?&c6)1QHHxXb`d$;#eNmML76{C_N$Edup!F}xf`xwO(lA4 zqrkRAT)u{A*bV$zs3CM-mfHXAWrnU$+kA19L4bs{z&V1{$LKu=*A93eGgFT-&-F#P zA2Nh}%Mitvc;d7$Fz*rILoJltAfx2msqK)NudgVq*{UUpQ=r z2;i+~0bsoU4#)emvgYAUkUg-A=Oh1=B>cOqOm5nX6`ge+@L;|Pbt^F%VfH@?abzso zD$9SkN2h)ZSi?f|Hi~GAwLdRZSD1HJa^->MPR15a-#>?j18HZkor+zb1qc4V@vBb8 zrj6#YDGkBC%TsXbn2%nrX6sV0mIE{FYm*0{{~(2Nun^}Ag6`4R(AXu970j!#yS@l^ zEgN8TIrJ_SZzct{GHI)nzy5p@^WkJ9ICc%<%nrHxB7w@^0cbtV`#{lr7I$B%uVZJ6 zaeEq>2)eGE2J(RvzJ0Q%m>c*ZrOHe++jzCbEV~;M<@a+QG3fpyBeJP-0ex`*$83Y{ z-@~sM3jvu}Kb}J0!U1^fAJsAZnI2iMqFSN1hth6N2g4b}PG{aX>mQL4VQcDhd6t;QGH zQgv1iQnF=1s<|rFi|bFOtgvo4mFCD4Q0*?!gwuVxeKe+E8jQ!RLj?M&42l5<Q91=c}oqm~RKZTKixxRt~A1O+K zWqNihMId{O|Luo~!~4f^1p^+R&ZMz(7%q&EI#Z0A$CtsoOU+?lKA~yB&*NBScDaY` zDLF5h<9yzz`1bF1{-*LCC_=*XMi;19|Ml}Xel-S-cXiT_7&R{6oUQTz2XZoQ2?0Z*vFZV*MnJ`wbE5qHR)gf6+QJ^N=x4LnZc zSPvzc>oYEit_0XZf0xTMXLnl{1P1m!oRA=1CYYZ$%#=CymFvDApQo zImJn1dBog{haAe>rP3k9W_<-f|3(%X!-I3v^kq9*186T#LWRSoA!N z5DbWEEv>{inm-wNl;Hd%{pP~21fvqpBpO=_CpOId18HI#V!{w$gFt*G{5iy_< zI6S|;;zAyCE;6m7*CR@dd1fgtjVs2baTnmyxMF>293GF~Q;bXFdgFYObzj`)e)PiX zeRDLCj{rhyh_q<8$XwoxKcAo_?gHG!y1RJtEf~er<7xV{4n;przo+5|Y2PjUcLJl_ zpDKqCiU8q;hN3iMd@61JOVX-u$-;I23s@HnT-6lM6kw0AY8kA>z}2w(tm0WQL5iml z#k14&A-I@3@6|5r0q5oP$TRT%9na% z%=7sI$3pcw5r3el4B=(wc~DEt7&On;dil3YRiLexm$uSN%tf@Vm;EBnkA?MfGMKXU z(+vpndYNaGWh7PoQkiY#{Fl!tha0#5z=u_`Kjit1Og5P6X)v_P>VOq?9F+SnT`XGCyF0ol2TS7?fl7FP|EN;{>Q$GU%4( zw*6CpZO?aM4%OVWM2uxu|I0bZ>w-D1@%5vwlEyN4L3!>j==*p+OBfjC4~&|&bkv;h zGy@iAJ}T&1a~Vk`o4ru`Fa$WSJmgLVjT)G9=u9v*w8zm1iE|&AS54goU4D)BxqzU( z0BD~WCunz?L13)mJW|i~RnlhcH1EBY(Qw5C`erZbwnwT>R{(j0-WD307Vny$R$t%; z)}+mAP0SA5UvS`HpuiuuOSJlPT;U|e`wdjZ$P8R`l|wIznV{@--1Cg_)Fqwx#7*@} z*%6rS`7%xxalW>jO!4){Bcv5w*P>TQLIVsv#I0S>Dp8>v(ze7sE)$gbHx^Iq$t{+NsXU{R{9(M_n4gcZpt9s%G#+QQL5f()o*K?`+iKFI|IhYK&|8$Ya zE@D1AoPU|mhK<$T{C2Uz-^K+B@!AtE1O#2Zu27BCUBV=;M#8$15Di|CZN8(Mm@KSs zC{8ZOw5QgyEJYAjaLe8WndS`PCFr_SH?!ZR(TPw+Fm|C}NLG!2HU9R7A9ZGnFb$W& z@V&}A7O*CFEs0#@oU)4o{UA0<4ca}9+|(TqUSocWE^wL&7GX3 z_BRg=xt~Qfm(dRni&$-#hi%vr<~;V;G7QxRnE+WpFE-M{VOlw^rNb3WsHFPZu-8b1 z7iRLxn@YJhtla#ch0<4$Y9BRY2u@&wbH?!aMHKRG`&coSalj5R46Z(;G5F1=1w#-- zqof*9wEvOMc>1oc&osK)3LK{{eGY-v$Wf}EYIh^1V#m%GsYoBt&K@)#eVS9U+QDk~ zi%V6t>&FHYr|nVg%nPKsN42|38X±0^Ia&9b?USM9zc+d$h_(01{Dv4ti87k0Sh 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 +#include +#include +#include "QFile" + #pragma execution_character_set("utf-8") CRaster::CRaster(QString strPath) : m_pThickness(NULL), m_pRasSt(NULL), m_strPath(strPath) @@ -28,8 +31,15 @@ RasterST * CRaster::getRasterSt() const bool CRaster::readRasterJson() { //!>ȡģʽϢ Ƿ񱣴goodͼƬ Ƿ񱣴badͼƬ Ƿʹõģʽ - - QJsonObject jsRaster = QZkJsonParser::ReadJsonAuto(m_strPath); + QFile loadFile(m_strPath); + + if (!loadFile.open(QIODevice::ReadOnly)) { + qWarning("Couldn't open save file."); + return false; + } + QByteArray readData = loadFile.readAll(); + QJsonDocument readDoc = QJsonDocument::fromJson(readData); + QJsonObject jsRaster = readDoc.object(); QJsonObject Rsaterobj = jsRaster.value("Raster").toObject(); if (!Rsaterobj.isEmpty()) { m_pRasSt->m_beilv = Rsaterobj.value("beilv").toDouble(5.07); @@ -60,7 +70,7 @@ bool CRaster::readRasterJson() bool CRaster::saveRasterJson(emTySaveJsonType emType) { - QJsonObject mObj = QZkJsonParser::ReadJsonAuto(m_strPath); + QJsonObject mObj; switch (emType) { case EMTYPE_RASTER:{ @@ -89,7 +99,11 @@ bool CRaster::saveRasterJson(emTySaveJsonType emType) default: break; } - QZkJsonParser::WriteJsonObject(m_strPath, mObj); + QFile saveFile(m_strPath); + saveFile.open(QIODevice::WriteOnly); + QJsonDocument saveDoc(mObj); + saveFile.write(saveDoc.toJson()); + saveFile.close(); return true; } diff --git a/src/RasterSDG20/muban.cpp b/src/RasterSDG20/muban.cpp index c98c9d6..482af91 100644 --- a/src/RasterSDG20/muban.cpp +++ b/src/RasterSDG20/muban.cpp @@ -23,7 +23,7 @@ #include "QCheckBox" #include "QLabel" #include "qfinddevice.h" -//#include "vld.h" + #pragma execution_character_set("utf-8") struct RecvData{ quint8 data1; @@ -36,25 +36,12 @@ struct RecvData{ quint8 data8; }; -muban::muban(QWidget *parent) :QWidget(parent), m_pRasterCom(NULL), m_pRaster(NULL), pDetectStatePtr(NULL), bInsertData(false), m_graph1(NULL) +muban::muban(QWidget *parent) :QWidget(parent), m_pRasterCom(NULL), m_pRaster(NULL), bInsertData(false), m_graph1(NULL) { - QString uifilePath = QApplication::applicationDirPath()+"\\ui\\Rester.ui"; - QUiLoader uiLoader; - QFile file(uifilePath); - file.open(QIODevice::ReadOnly); - QWidget * getwidget = uiLoader.load(&file, parent); - onCreate(getwidget); + ui.setupUi(this); - QGridLayout *gridOut = new QGridLayout; - gridOut->addWidget(getwidget); - this->setLayout(gridOut); - int a = getwidget->height(); - int b = getwidget->width(); + initUI(); - this->setBaseSize(a, b); - resize(getwidget->size()); - getwidget->show(); - Rasteranalysis = new QRasterAnalysis(); Rasteranalysis->loadAnalyseUpdatefunc(this, &muban::Appanalysis); connect(this, SIGNAL(recvDataSignal(QByteArray)), Rasteranalysis, SLOT(recvDataByCOM(QByteArray))); @@ -157,18 +144,6 @@ void muban::Appanalysis(Raster_ComFrame m_ComFrame){ } } -bool muban::onCreate(QWidget* parent) -{ - if (parent == NULL) - return false; - QList m_obj = parent->findChildren(); - for (int nIndex = 0; nIndex < m_obj.size(); nIndex++){ - OnPolished(m_obj.at(nIndex)); - } - OnPolished(parent); - return true; -} - void muban::SlotRecvDataByParent(QByteArray m_data) { emit(recvDataSignal(m_data)); @@ -204,59 +179,42 @@ void muban::SlotTxDataByParent(QByteArray m_data) } -bool muban::OnPolished(QWidget * watched) +void muban::initUI() { - if (watched == NULL) - return false; - QString strObj = watched->objectName(); - if (strObj == "Raster_SendData"||strObj == "Raster_CheckSys"){ - connect(watched, SIGNAL(clicked()), this, SLOT(ButtonClick())); - } - else if (strObj == "Raster_ShowlineEdit"){ - Raster_ShowlineEdit = qobject_cast(watched); - } - else if (strObj == "Raster_ShowlineEdit_2"){ - Raster_ShowlineEdit_2 = qobject_cast(watched); - } - else if (strObj == "Raster_ShowlineEdit_3"){ - Raster_ShowlineEdit_3 = qobject_cast(watched); - } - else if (strObj == "Raster_gridLayout"){ - int a = 0; + //connect(ui.Raster_SendData, SIGNAL(clicked()), this, SLOT(ButtonClick())); + Raster_ShowlineEdit = ui.Raster_ShowlineEdit; + Raster_ShowlineEdit_2 = ui.Raster_ShowlineEdit_2; + Raster_ShowlineEdit_3 = ui.Raster_ShowlineEdit_3; + QGroupBox *pGroup = ui.groupBox_2; + QHBoxLayout *pGridLayout = new QHBoxLayout; + m_switchbp = new SWitchButton; + //m_switchbp->resize(150, 100); + //m_switchbp->setFixedHeight(50); + m_switchbp->SetOffName(tr("ֹͣ")); + m_switchbp->SetOnName(tr("ʼ")); + m_switchbp->SetPressOffBkColor1(QColor(230, 10, 10)); + m_switchbp->SetPressOffBkColor2(QColor(230, 10, 10)); + m_switchbp->SetPressOnBkColor1(QColor(46, 183, 67)); + m_switchbp->SetPressOnBkColor2(QColor(46, 183, 67)); + m_switchbp->setObjectName("switchBP1"); + m_switchbp->SetSwitchState(1); + connect(m_switchbp, SIGNAL(onStateChanged(int)), this, SLOT(onButtonClick(int))); + pGroup->setLayout(pGridLayout); + //pGroup->setFixedHeight(50); + pGridLayout->addWidget(m_switchbp); + pGridLayout->addSpacing(1); - } - else if (strObj == "groupBox_2"){ - QGroupBox *pGroup = qobject_cast(watched); - QHBoxLayout *pGridLayout = new QHBoxLayout; - m_switchbp = new SWitchButton; - //m_switchbp->resize(150, 100); - //m_switchbp->setFixedHeight(50); - m_switchbp->SetOffName(tr("ֹͣ")); - m_switchbp->SetOnName(tr("ʼ")); - m_switchbp->SetPressOffBkColor1(QColor(230, 10, 10)); - m_switchbp->SetPressOffBkColor2(QColor(230, 10, 10)); - m_switchbp->SetPressOnBkColor1(QColor(46, 183, 67)); - m_switchbp->SetPressOnBkColor2(QColor(46, 183, 67)); - m_switchbp->setObjectName("switchBP1"); - m_switchbp->SetSwitchState(1); - connect(m_switchbp, SIGNAL(onStateChanged(int)), this, SLOT(onButtonClick(int))); - pGroup->setLayout(pGridLayout); - //pGroup->setFixedHeight(50); - pGridLayout->addWidget(m_switchbp); - pGridLayout->addSpacing(1); - } - else if (strObj == "Raster_textBrowser"){ - Raster_textBrowser = qobject_cast(watched); - } - else if (strObj == "Raster_frame"){ - Raster_frame = qobject_cast(watched); - QSize ht = Raster_frame->size(); - QRect a= Raster_frame->rect(); - m_chart = new myChart1(Raster_frame); - m_chart->setTitle(tr("դݲ")); - } - else if (strObj == "Raster_groupBoxSys"){ - QGroupBox *pGroup = qobject_cast(watched); + + Raster_textBrowser = ui.Raster_textBrowser; + + Raster_frame = ui.Raster_frame; + QSize ht = Raster_frame->size(); + QRect a= Raster_frame->rect(); + m_chart = new myChart1(Raster_frame); + m_chart->setTitle(tr("դݲ")); + + { + QGroupBox *pGroup = ui.Raster_groupBoxSys; QHBoxLayout *pGridLayout = new QHBoxLayout; m_switsybp = new SWitchButton; m_switsybp->resize(150, 50); @@ -274,90 +232,73 @@ bool muban::OnPolished(QWidget * watched) pGridLayout->addWidget(m_switsybp); pGridLayout->addSpacing(1); } - else if (strObj == "frame"){ - QFrame *widget = qobject_cast(watched); - QGridLayout *ppp = new QGridLayout; - widget->setLayout(ppp); - } - else if (strObj == "doubleSpinBox_beilv"){ - doubleSpinBox_beilv = qobject_cast(watched); - } - else if (strObj == "doubleSpinBox_baseheight"){ - doubleSpinBox_baseheight = qobject_cast(watched); - } - else if (strObj == "doubleSpinBox_min"){ - doubleSpinBox_min = qobject_cast(watched); - } - else if (strObj == "Raster_SaveRaster"){ - connect(watched, SIGNAL(clicked()), this, SLOT(onSaveData())); - } - else if (strObj == "Raster_ResScan"){//ɨ谴ť - connect(watched, SIGNAL(clicked()), this, SLOT(onScanDevice())); - } - else if (strObj == "Raster_ComBox"){// - Raster_ComBox = qobject_cast(watched); - } - else if (strObj == "Raster_Baute"){// - Raster_Baute = qobject_cast(watched); - Raster_Baute->addItem("115200"); - Raster_Baute->addItem("38400"); - Raster_Baute->addItem("19200"); - Raster_Baute->addItem("9600"); - } - else if (strObj == "Raster_OpenDevice"){// 豸 - Raster_OpenDevice = qobject_cast(watched); - connect(Raster_OpenDevice, SIGNAL(clicked()), this, SLOT(onCtrolDevice())); - } - else if (strObj == "Raster_CloseDevice"){//ر豸 - Raster_CloseDevice = qobject_cast(watched); - connect(Raster_CloseDevice, SIGNAL(clicked()), this, SLOT(onCtrolDevice())); - } - else if (strObj == "Raster_SaveCombp"){ - connect(watched, SIGNAL(clicked()), this, SLOT(onSaveData())); - } - else if (strObj == "Raster_checkBox"){ - Raster_checkBox = qobject_cast(watched); - } - else if (strObj == "Raster_showState_lb"){ - Raster_showState_lb = qobject_cast(watched); - } - else if (strObj == "spinBox_maxsize"){ - SpinBox_max_size = qobject_cast(watched); - } - else if (strObj == "doubleSpinBox_mid_value"){ - doubleSpinBox_mid_value = qobject_cast(watched); - } - else if (strObj == "tabWidget"){ - m_tabWidget = qobject_cast(watched); - m_tabWidget->setCurrentIndex(10); - } - else if ("Raster_doubleSpinBox_B" == strObj){ - Raster_doubleSpinBox_B = qobject_cast(watched); - } - else if ("Raster_doubleSpinBox_K" == strObj){ - Raster_doubleSpinBox_K = qobject_cast(watched); - } - else if ("Raster_SaveRasterDire" == strObj){ - QPushButton *pBb = qobject_cast(watched); - connect(pBb, SIGNAL(clicked()), this, SLOT(onSaveData())); - } - else if ("Raster_frame_2" == strObj){ - QFrame *pFrame = qobject_cast(watched); - QGridLayout *pLayout = new QGridLayout; - m_graph1 = new QSimpleTickerGraph(pFrame); - - m_graph1->setUnits("mm"); - m_graph1->setRange(0, 300); - m_graph1->setPointWidth(5); - m_graph1->setBackgroundBrush(QBrush(QColor(15, 10, 10))); - m_graph1->setDataLinePen(QPen(QColor(255, 255, 255), 1)); - m_graph1->setGridPitch(100); - m_graph1->setReferencePoints(QList() << 10); - - pLayout->addWidget(m_graph1); - pFrame->setLayout(pLayout); - } - return true; + doubleSpinBox_beilv = ui.doubleSpinBox_beilv; + doubleSpinBox_baseheight = ui.doubleSpinBox_baseheight; + doubleSpinBox_min = ui.doubleSpinBox_min; + + connect(ui.Raster_SaveRaster, SIGNAL(clicked()), this, SLOT(onSaveData())); + +//ɨ谴ť + connect(ui.Raster_ResScan, SIGNAL(clicked()), this, SLOT(onScanDevice())); + +// + Raster_ComBox = ui.Raster_ComBox; + +// + Raster_Baute = ui.Raster_Baute; + Raster_Baute->addItem("115200"); + Raster_Baute->addItem("38400"); + Raster_Baute->addItem("19200"); + Raster_Baute->addItem("9600"); + +// 豸 + Raster_OpenDevice = ui.Raster_OpenDevice; + connect(Raster_OpenDevice, SIGNAL(clicked()), this, SLOT(onCtrolDevice())); + +//ر豸 + Raster_CloseDevice = ui.Raster_CloseDevice; + connect(Raster_CloseDevice, SIGNAL(clicked()), this, SLOT(onCtrolDevice())); + + + connect(ui.Raster_SaveCombp, SIGNAL(clicked()), this, SLOT(onSaveData())); + + Raster_checkBox = ui.Raster_checkBox; + + + Raster_showState_lb = ui.Raster_showState_lb; + + + SpinBox_max_size = ui.spinBox_maxsize; + + + doubleSpinBox_mid_value = ui.doubleSpinBox_mid_value; + + + m_tabWidget = ui.tabWidget; + m_tabWidget->setCurrentIndex(10); + + + Raster_doubleSpinBox_B = ui.Raster_doubleSpinBox_B; + + Raster_doubleSpinBox_K = ui.Raster_doubleSpinBox_K; + + QPushButton *pBb = ui.Raster_SaveRasterDire; + connect(pBb, SIGNAL(clicked()), this, SLOT(onSaveData())); + + QFrame *pFrame = ui.Raster_frame_2; + QGridLayout *pLayout = new QGridLayout; + m_graph1 = new QSimpleTickerGraph(pFrame); + + m_graph1->setUnits("mm"); + m_graph1->setRange(0, 300); + m_graph1->setPointWidth(5); + m_graph1->setBackgroundBrush(QBrush(QColor(15, 10, 10))); + m_graph1->setDataLinePen(QPen(QColor(255, 255, 255), 1)); + m_graph1->setGridPitch(100); + m_graph1->setReferencePoints(QList() << 10); + + pLayout->addWidget(m_graph1); + pFrame->setLayout(pLayout); } void muban::changeEvent(QEvent *event) @@ -565,10 +506,12 @@ Q_SLOT void muban::onSaveData() mB = Raster_doubleSpinBox_B->value(); if (Raster_doubleSpinBox_K) mK = Raster_doubleSpinBox_K->value(); - if (pDetectStatePtr) + if (setfunc_) { - pDetectStatePtr->setDia2ThPara(mK, mB); - pDetectStatePtr->save(); + Dia2ThPara st; + st.mb_ = mB; + st.mk_ = mK; + setfunc_(st); } } } @@ -673,10 +616,10 @@ void muban::showEvent(QShowEvent *event) { int a = 0; bInsertData = true; - if (pDetectStatePtr) + if (getfunc_) { - float mB=0.0, mK=0.0; - pDetectStatePtr->getDia2ThPara(mK, mB); + Dia2ThPara st = getfunc_(); + float mB= st.mb_, mK=st.mk_; if (Raster_doubleSpinBox_B) { Raster_doubleSpinBox_B->setValue(mB); diff --git a/src/RasterSDG20/muban.h b/src/RasterSDG20/muban.h index 2ed69e8..071de60 100644 --- a/src/RasterSDG20/muban.h +++ b/src/RasterSDG20/muban.h @@ -3,8 +3,9 @@ #include #include "RasterAnalysis.h" -#include "IDetectState.h" #include "qsimpletickergraph.h" +#include "rastersdg20_global.h" +#include "ui_Rester.h" class muban:public QWidget { Q_OBJECT @@ -30,7 +31,11 @@ public: Q_SLOT void onAddData2Graph(int nData); QString getSysState(quint8 nValue); - void setDetectStatePtr(IDetectState *ptr){ if (ptr) { pDetectStatePtr = ptr; } }; + + void setSetDiaParaFunc(SetDiaParaFunc func) { setfunc_ = func; }; + void setGetDiaParaFunc(GetDiaParaFunc func) { getfunc_ = func; }; + + void initUI(); signals: void recvDataSignal(QByteArray); void sgShowSys(QString,int); @@ -45,13 +50,12 @@ private: struct RasterST* m_pRaster; struct RasterCom* m_pRasterCom; private: - virtual bool OnPolished(QWidget * watched); - virtual bool onCreate(QWidget* parent); virtual void changeEvent(QEvent *); void Appanalysis(Raster_ComFrame m_ComFrame); public slots: virtual void SlotRecvDataByParent(QByteArray m_data); virtual void SlotTxDataByParent(QByteArray m_data); + virtual void SlotRxNumByParent(int num); virtual void SlotTxNumByParent(int num); virtual void SlotRxSizeByParent(int num); @@ -95,15 +99,17 @@ private: //tab2 class QDoubleSpinBox *Raster_doubleSpinBox_K; class QDoubleSpinBox *Raster_doubleSpinBox_B; -protected: - IDetectState *pDetectStatePtr; + Ui::Raster_Form ui; +protected: bool bInsertData; class QSimpleTickerGraph *m_graph1; protected: virtual void closeEvent(QCloseEvent *event); virtual void showEvent(QShowEvent *event); - +private: + SetDiaParaFunc setfunc_; + GetDiaParaFunc getfunc_; }; #endif // MUBAN_H diff --git a/src/RasterSDG20/rastersdg20.cpp b/src/RasterSDG20/rastersdg20.cpp index 6ea09cc..7f0272c 100644 --- a/src/RasterSDG20/rastersdg20.cpp +++ b/src/RasterSDG20/rastersdg20.cpp @@ -76,10 +76,14 @@ void RasterSDG20::onStartSampling() m_pmuBan->onStartSampling(); } -void RasterSDG20::onShowWidget() +void RasterSDG20::onShowWidget(QWidget* parent) { + m_pmuBan->setParent(parent); m_pmuBan->SetData2UI(m_pRaster->getRasterSt()); m_pmuBan->SetData2UI(m_pRaster->getRasterCom()); + m_pmuBan->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); + m_pmuBan->setWindowIcon(QIcon(":/image/leaper")); + m_pmuBan->setAttribute(Qt::WA_ShowModal, true); m_pmuBan->setWindowModality(Qt::ApplicationModal); m_pmuBan->show(); @@ -143,27 +147,28 @@ Q_SLOT void RasterSDG20::onCtrolDevice(int nValue) } } -void RasterSDG20::setDetectStatePtr(IDetectState *mpDetectState) -{ - if (mpDetectState) - { - pDetectState = mpDetectState; - if (m_pmuBan) - { - m_pmuBan->setDetectStatePtr(mpDetectState); - } - } - -} - double RasterSDG20::getDiameterValue() { double dDiameter = 0.0; - if (pDetectState) + if (getfunc_) { - float mK = 0.0, mB = 0.0; - pDetectState->getDia2ThPara(mK, mB); + Dia2ThPara st = getfunc_(); + float mK = st.mk_, mB = st.mb_; dDiameter = getThicknessValue()*mK + mB; } return dDiameter; } + +void RasterSDG20::setSetDiaParaFunc(SetDiaParaFunc func) +{ + setfunc_ = func; + if (m_pmuBan) + m_pmuBan->setSetDiaParaFunc(func); +} + +void RasterSDG20::setGetDiaParaFunc(GetDiaParaFunc func) +{ + getfunc_ = func; + if (m_pmuBan) + m_pmuBan->setGetDiaParaFunc(func); +} diff --git a/src/RasterSDG20/rastersdg20.h b/src/RasterSDG20/rastersdg20.h index 002fa6b..31df5c5 100644 --- a/src/RasterSDG20/rastersdg20.h +++ b/src/RasterSDG20/rastersdg20.h @@ -10,12 +10,13 @@ public: RasterSDG20(const QString filepath); ~RasterSDG20(); virtual void onStartSampling(); - virtual void onShowWidget(); + virtual void onShowWidget(QWidget* parent); virtual void addThicknessValue(double); virtual double getThicknessValue() const; virtual QString getThicknessValueStr() const; - virtual void setDetectStatePtr(IDetectState *mpDetectState); virtual double getDiameterValue(); + virtual void setSetDiaParaFunc(SetDiaParaFunc func); + virtual void setGetDiaParaFunc(GetDiaParaFunc func); signals: void sgSendData(const QByteArray); void sgShowComState(QString, int); @@ -25,9 +26,12 @@ public: Q_SLOT void onSaveRaster(int ntype); Q_SLOT void onCtrolDevice(int nValue); private: - class muban* m_pmuBan; - class CMySerialPort* m_SerialPort; - class CRaster *m_pRaster; + class muban* m_pmuBan{ nullptr }; + class CMySerialPort* m_SerialPort{ nullptr }; + class CRaster *m_pRaster{ nullptr }; + + SetDiaParaFunc setfunc_; + GetDiaParaFunc getfunc_; }; #endif // RASTERSDG20_H diff --git a/src/RasterSDG20/rastersdg20_global.h b/src/RasterSDG20/rastersdg20_global.h index d72fcf3..7498af9 100644 --- a/src/RasterSDG20/rastersdg20_global.h +++ b/src/RasterSDG20/rastersdg20_global.h @@ -2,28 +2,34 @@ #define RASTERSDG20_GLOBAL_H #include -#include "QObject" -//#include "IDetectState.h" +#include +#include + #ifdef RASTERSDG20_LIB # define RASTERSDG20_EXPORT Q_DECL_EXPORT #else # define RASTERSDG20_EXPORT Q_DECL_IMPORT #endif +typedef struct tagDia2ThPara +{ + float mk_{ 0.0 }; + float mb_{ 0.0 }; +}Dia2ThPara; +typedef std::function GetDiaParaFunc; +typedef std::function SetDiaParaFunc; class IRasterSDG20 :public QObject{ Q_OBJECT public: IRasterSDG20(){/* pDetectState = NULL;*/ }; virtual void onStartSampling() = 0; - virtual void onShowWidget() = 0; + virtual void onShowWidget(QWidget* parent) = 0; virtual void addThicknessValue(double) = 0; virtual double getThicknessValue() const = 0; virtual QString getThicknessValueStr() const = 0; virtual double getDiameterValue() = 0; - //virtual void setDetectStatePtr(IDetectState *mpDetectState){ pDetectState = mpDetectState; }; -signals: - void sgThickness(double); + virtual void setSetDiaParaFunc(SetDiaParaFunc func) = 0; + virtual void setGetDiaParaFunc(GetDiaParaFunc func) = 0; protected: - //IDetectState *pDetectState; }; extern "C" RASTERSDG20_EXPORT IRasterSDG20* RasterSDG20Create(const QString filepath); diff --git a/src/tpMain/IWheelCtrl.h b/src/tpMain/IWheelCtrl.h index 0a49c72..66f2930 100644 --- a/src/tpMain/IWheelCtrl.h +++ b/src/tpMain/IWheelCtrl.h @@ -11,6 +11,7 @@ #include "qstring.h" #include "qobject.h" #include "InfoFile.h" +#include class ModelManager; class CChannelInfo; class DetectState; @@ -62,7 +63,7 @@ public: //net virtual bool sendModelLib() = 0; - virtual bool onShowRaster() = 0; + virtual bool onShowRaster(QWidget* parent) = 0; signals: void sgModelChanged(); void sgModelChanged(QString); diff --git a/src/tpMain/ProgressView.cpp b/src/tpMain/ProgressView.cpp index b1ec8e5..df9fae9 100644 --- a/src/tpMain/ProgressView.cpp +++ b/src/tpMain/ProgressView.cpp @@ -13,7 +13,7 @@ ProgressView::ProgressView(QWidget* parent) connect(m_pProgressDialog, SIGNAL(canceled()), this, SIGNAL(cancel())); m_pProgressDialog->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pProgressDialog->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pProgressDialog->setWindowIcon(QIcon(":/image/leaper")); m_pProgressDialog->setWindowModality(Qt::ApplicationModal); m_pProgressDialog->setAttribute(Qt::WA_ShowModal, true); } diff --git a/src/tpMain/WheelCtrl.cpp b/src/tpMain/WheelCtrl.cpp index 91a9845..092c9fd 100644 --- a/src/tpMain/WheelCtrl.cpp +++ b/src/tpMain/WheelCtrl.cpp @@ -11,7 +11,7 @@ #include "CamConfig.h" #include "QThread" #include "qsaveresult.h" -#include "..\RasterSDG20\rastersdg20_global.h" + #include "QLibrary" #include "databasesql.h" #include "DetectDataDB.h" @@ -55,7 +55,7 @@ WheelCtrl::WheelCtrl(QString strPath, QMySplashScreen* pScreen) ShowInitMsg(pScreen, tr("加载光栅通讯模块 ....")); qDebug() << "loadLibRasterSDG20"; - //loadLibRasterSDG20(strPath); + loadLibRasterSDG20(strPath); qDebug() << "loadLibRasterSDG20 end"; connect(saveResultThread, &QThread::finished, pSaveResult, &QObject::deleteLater); connect(this, SIGNAL(operate(Result2Ui*)), pSaveResult, SLOT(doWork(Result2Ui*)),Qt::QueuedConnection); @@ -108,10 +108,12 @@ void WheelCtrl::loadLibRasterSDG20(QString strPath) #endif if (lib.load()){ _RasterSDG20Create func = (_RasterSDG20Create)lib.resolve("RasterSDG20Create"); - m_pRasterSDG20 = func(strPath + "\\user\\raster.json"); - //connect(m_pRasterSDG20, SIGNAL(sgThickness(double)), this, SIGNAL(onThickness(double))); + m_pRasterSDG20 = func(strPath + "\\raster.json"); + GetDiaParaFunc getfunc = std::bind(&WheelCtrl::getDiaParam, this); + m_pRasterSDG20->setGetDiaParaFunc(getfunc); + SetDiaParaFunc setfunc = std::bind(&WheelCtrl::setDiaParam, this, std::placeholders::_1); + m_pRasterSDG20->setSetDiaParaFunc(setfunc); m_pRasterSDG20->onStartSampling(); - //m_pRasterSDG20->setDetectStatePtr(m_pState); } } @@ -275,10 +277,10 @@ Q_SLOT void WheelCtrl::handleResult(Result2Ui *pResult) qDebug() << "end thread save Result to DataBase"; } -bool WheelCtrl::onShowRaster() +bool WheelCtrl::onShowRaster(QWidget* parent) { if (m_pRasterSDG20){ - m_pRasterSDG20->onShowWidget(); + m_pRasterSDG20->onShowWidget(parent); return true; } return false; @@ -305,3 +307,14 @@ void WheelCtrl::ShowInitMsg(QMySplashScreen* p, QString str){ } } +void WheelCtrl::setDiaParam(Dia2ThPara st) +{ + DetectState::instance()->setDia2ThPara(st.mk_, st.mb_); + DetectState::instance()->save(); +} +Dia2ThPara WheelCtrl::getDiaParam() +{ + Dia2ThPara st; + DetectState::instance()->getDia2ThPara(st.mk_, st.mb_); + return st; +} diff --git a/src/tpMain/WheelCtrl.h b/src/tpMain/WheelCtrl.h index cec8fc1..3aba146 100644 --- a/src/tpMain/WheelCtrl.h +++ b/src/tpMain/WheelCtrl.h @@ -1,7 +1,10 @@ -#pragma once +#ifndef _H_WHEELCTRL_H_ +#define _H_WHEELCTRL_H_ + #include "IWheelCtrl.h" #include "qstring.h" #include "qmysplashscreen.h" +#include "..\RasterSDG20\rastersdg20_global.h" class CRaster; class CWheelNet; class CamConfig; @@ -24,7 +27,7 @@ public: virtual double getThickness() const; virtual QString getThicknessStr() const; virtual void appendThicknessValue(double nValue); - virtual bool onShowRaster(); + virtual bool onShowRaster(QWidget* parent); virtual void addLog(QString msg, int nType); virtual void saveResult(Result2Ui *); @@ -52,6 +55,8 @@ public: Q_SLOT void handleResult(Result2Ui *); void loadLibRasterSDG20(QString strPath); void ShowInitMsg(QMySplashScreen* p, QString str); + void setDiaParam(Dia2ThPara st); + Dia2ThPara getDiaParam(); signals: void operate(Result2Ui *m_Res); private: @@ -73,3 +78,5 @@ private: //QSaveResultObj m_saveObj; }; +#endif + diff --git a/src/tpMain/qaddmodel.cpp b/src/tpMain/qaddmodel.cpp index 06258d7..00388d0 100644 --- a/src/tpMain/qaddmodel.cpp +++ b/src/tpMain/qaddmodel.cpp @@ -8,6 +8,7 @@ QAddModel::QAddModel(QWidget *parent) : QDialog(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); setWindowFlags(Qt::WindowCloseButtonHint); connect(ui.wf_model_add_button, SIGNAL(clicked()), this, SLOT(SlotAccept())); connect(ui.wf_cancel, SIGNAL(clicked()), this, SLOT(SlotCancel())); diff --git a/src/tpMain/qipconfigdlg.cpp b/src/tpMain/qipconfigdlg.cpp index 8370c65..c706338 100644 --- a/src/tpMain/qipconfigdlg.cpp +++ b/src/tpMain/qipconfigdlg.cpp @@ -5,6 +5,7 @@ QIPConfigDlg::QIPConfigDlg(QWidget *parent) : QDialog(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); // setWindowFlags(Qt::WindowFullscreenButtonHint); // setWindowFlags(Qt::WindowMinimizeButtonHint); // setWindowFlags(Qt::WindowTitleHint); diff --git a/src/tpMain/tpMain.aps b/src/tpMain/tpMain.aps index c7c7e632764719f6ebf0dc0ccac3c3b4f67ca92b..f317c6ae42753ef7776f6dd5357b75653d3450eb 100644 GIT binary patch literal 2536 zcmb7GOK%%h7(G*rls-@+Dj^mu+{YpjiaSn2C{-oojK_3{J!57ZCy|US$DTND9VhZb zp^Hjgu&YEi2(jcRbAL4sk^4jNqe;K92B^QWHaJPH;fk zr?!Rxbxl5pI7W#c9rQTsQ#+u~NNIg!=m8iiZV;_aO#_EWqd=dovQJ|PpW!anvCJ6T zDpre8P8chVP0ojuYTUohyTwdRRbh+X!D@z@4E68xw~jlM#d5?vQnl0;R2I}D`^Qv4Zz!sn#_}#%X1Z0-r1x(HM0@8sBt|-6C-CE zW)Z7mX617mj$7eY)x>h%yg22~c+Z_(kR4Xx zq0YMrmy!jCJFTnz7AVX0ZR(GIAn%An?&0%8C4&bfHIbsnB6DkuH{|J;9%xT{PI_pc z9R~c)U>d8w%dw`$9`E3hxy*HgHizu+2JIiSCh1&XB{*#V^69eseDL$*r+XLM<*&M* z{OyUNfUEQidpocCyQ%UYvyKkq^_2h8=nMNvcmGt=JFT6){nOs*caNTJ|K)xE>|Iw3 zbS%W;R2ipF4v74N9uNCo&dDX(%f5!nw#Qn#v5Mn7m0>J?hVU`2(WglJwz8Jp9&?|9 zR-4Qg}{wGG<5!}g49 y=DA*Y`tyX%JWmTB{X~fV4<88!Exvx9Pk>sSH-t%Q=lY06l52!#p3>*Pc;;V2^Q_PS delta 374 zcmaDMJcVn50;9=9MP=h7%nS^!Rxv)Qi3O=e0Y&*)smUcV8Kp@ssU;v*aZz$iNr7)- zW*(H%D@vX`o8>6$Lk0#0mC3an;*3laC%#U62jT*;2SYf66OjJ@|0IxPU@%}{;a~!@ zKw=QU!r{tb#Sp{b!;s35$WQicIG-U4$WCS`0m@}ClrkhSxB&Sj5V6UoO!{01 z6DFrHd5Bst=rI@q6?-z|0k!1-wWKhlPQJ+`JGq8YhLLIVOh$i3oymqA;=IVtFqs_6 zq0Gt+bkv&33t99hCvdVbzM1@xMV}2A6bu%Oll55j*g)P(V4PgXA?E?|S_aS$*t`am X0s}W7Sp(FLP;&|_4zd@bf`I`5ZaG|_ diff --git a/tpvs17/RasterSDG20/RasterSDG20.vcxproj b/tpvs17/RasterSDG20/RasterSDG20.vcxproj index c730ea9..79744a3 100644 --- a/tpvs17/RasterSDG20/RasterSDG20.vcxproj +++ b/tpvs17/RasterSDG20/RasterSDG20.vcxproj @@ -47,7 +47,7 @@ UNICODE;WIN32;WIN64;QT_CORE_LIB;RASTERSDG20_LIB;QT_GUI_LIB;QT_UITOOLS_LIB;QT_WIDGETS_LIB;%(PreprocessorDefinitions) - .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtUiTools;$(QTDIR)\include\QtWidgets;.\..\..\3part\libzkq\include;.\..\..\.\src\RasterSDG20\Analysis;.\..\..\.\src\RasterSDG20\Commom;.\..\..\.\src\RasterSDG20\mythread;.\..\..\.\src\RasterSDG20\widget;.\..\..\.\src\tpMain;%(AdditionalIncludeDirectories) + .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtUiTools;$(QTDIR)\include\QtWidgets;.\..\..\.\src\RasterSDG20\Analysis;.\..\..\.\src\RasterSDG20\Commom;.\..\..\.\src\RasterSDG20\mythread;.\..\..\.\src\RasterSDG20\widget;%(AdditionalIncludeDirectories) Disabled ProgramDatabase MultiThreadedDebugDLL @@ -56,16 +56,16 @@ Windows $(SolutionDir)..\runner17\$(TargetName)$(TargetExt) - $(QTDIR)\lib;..\..\3part\libzkq\lib;%(AdditionalLibraryDirectories) + $(QTDIR)\lib;%(AdditionalLibraryDirectories) true - qtmaind.lib;Qt5Cored.lib;Qt5Guid.lib;Qt5UiToolsd.lib;Qt5Widgetsd.lib;libzkqd.lib;Qt5SerialPortd.lib;%(AdditionalDependencies) + qtmaind.lib;Qt5Cored.lib;Qt5Guid.lib;Qt5UiToolsd.lib;Qt5Widgetsd.lib;Qt5SerialPortd.lib;%(AdditionalDependencies) true UNICODE;WIN32;WIN64;QT_NO_DEBUG;NDEBUG;QT_CORE_LIB;RASTERSDG20_LIB;QT_GUI_LIB;QT_UITOOLS_LIB;QT_WIDGETS_LIB;%(PreprocessorDefinitions) - .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtUiTools;$(QTDIR)\include\QtWidgets;.\..\..\.\src\RasterSDG20\Analysis;.\..\..\.\src\RasterSDG20\Commom;.\..\..\.\src\RasterSDG20\mythread;.\..\..\.\src\RasterSDG20\widget;.\..\..\..\frogs\include\libzkq;.\..\..\.\src\tpMain;%(AdditionalIncludeDirectories) + .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtUiTools;$(QTDIR)\include\QtWidgets;.\..\..\.\src\RasterSDG20\Analysis;.\..\..\.\src\RasterSDG20\Commom;.\..\..\.\src\RasterSDG20\mythread;.\..\..\.\src\RasterSDG20\widget;%(AdditionalIncludeDirectories) MultiThreadedDLL @@ -73,10 +73,10 @@ Windows - $(SolutionDir)..\runner13\$(TargetName)$(TargetExt) - $(QTDIR)\lib;..\..\..\frogs\win32\lib;%(AdditionalLibraryDirectories) + $(SolutionDir)..\runner17\$(TargetName)$(TargetExt) + $(QTDIR)\lib;%(AdditionalLibraryDirectories) false - qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5UiTools.lib;Qt5Widgets.lib;libzkq.lib;Qt5SerialPort.lib;%(AdditionalDependencies) + qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5UiTools.lib;Qt5Widgets.lib;Qt5SerialPort.lib;%(AdditionalDependencies) true @@ -168,155 +168,112 @@ true - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - - - true - true - $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing CMySerialPort.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing CMySerialPort.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" + $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing rastersdg20_global.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing rastersdg20_global.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing rastersdg20.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing rastersdg20.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qsimpletickergraph.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qsimpletickergraph.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qfinddevice.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qfinddevice.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing muban.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing muban.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing switchbutton.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing switchbutton.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing mychart1.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing mychart1.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qmythread.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qmythread.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing RasterAnalysis.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing RasterAnalysis.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" @@ -327,24 +284,34 @@ $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qextserialport.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing qextserialport.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing myhelper.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\3part\libzkq\include" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing myhelper.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp - "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" "-I.\..\..\..\frogs\include\libzkq" "-I.\..\..\.\src\tpMain" + "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -DWIN32 -DWIN64 -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DRASTERSDG20_LIB -DQT_GUI_LIB -DQT_UITOOLS_LIB -DQT_WIDGETS_LIB -D%(PreprocessorDefinitions) "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)" "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtUiTools" "-I$(QTDIR)\include\QtWidgets" "-I.\..\..\.\src\RasterSDG20\Analysis" "-I.\..\..\.\src\RasterSDG20\Commom" "-I.\..\..\.\src\RasterSDG20\mythread" "-I.\..\..\.\src\RasterSDG20\widget" + + $(QTDIR)\bin\uic.exe;%(AdditionalInputs) + Uic%27ing %(Identity)... + .\GeneratedFiles\ui_%(Filename).h;%(Outputs) + "$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)" + $(QTDIR)\bin\uic.exe;%(AdditionalInputs) + Uic%27ing %(Identity)... + .\GeneratedFiles\ui_%(Filename).h;%(Outputs) + "$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)" + diff --git a/tpvs17/RasterSDG20/RasterSDG20.vcxproj.filters b/tpvs17/RasterSDG20/RasterSDG20.vcxproj.filters index 4503e53..2487a32 100644 --- a/tpvs17/RasterSDG20/RasterSDG20.vcxproj.filters +++ b/tpvs17/RasterSDG20/RasterSDG20.vcxproj.filters @@ -42,11 +42,6 @@ {a59fc7d7-edee-4333-83e2-834c6a540f67} - - {7bb7450f-10a5-47f0-bb6e-2e3f139ae9cf} - cpp;moc - False - {f44e5ba7-5926-41f9-b16b-0aa2b4cc97e1} @@ -66,9 +61,6 @@ Generated Files\Release - - Generated Files\Release_xp - Comm @@ -78,9 +70,6 @@ Generated Files\Release - - Generated Files\Release_xp - Comm @@ -90,9 +79,6 @@ Generated Files\Release - - Generated Files\Release_xp - Comm @@ -105,9 +91,6 @@ Generated Files\Release - - Generated Files\Release_xp - Comm @@ -117,9 +100,6 @@ Generated Files\Release - - Generated Files\Release_xp - widget @@ -129,9 +109,6 @@ Generated Files\Release - - Generated Files\Release_xp - widget @@ -150,18 +127,12 @@ Generated Files\Release - - Generated Files\Release_xp - Generated Files\Debug Generated Files\Release - - Generated Files\Release_xp - Source Files @@ -171,9 +142,6 @@ Generated Files\Release - - Generated Files\Release_xp - Source Files @@ -186,18 +154,12 @@ Generated Files\Release - - Generated Files\Release_xp - Generated Files\Debug Generated Files\Release - - Generated Files\Release_xp - Source Files @@ -239,6 +201,9 @@ Header Files + + Form Files + @@ -262,6 +227,9 @@ Header Files + + Generated Files + diff --git a/tpvs17/tpMain/QCamSettingDlg.cpp b/tpvs17/tpMain/QCamSettingDlg.cpp index 244266b..6f1d770 100644 --- a/tpvs17/tpMain/QCamSettingDlg.cpp +++ b/tpvs17/tpMain/QCamSettingDlg.cpp @@ -4,6 +4,7 @@ QCamSettingDlg::QCamSettingDlg(QWidget *parent) : QWidget(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); QGridLayout *pLayout = new QGridLayout(ui.widget); m_pImgViewer = new RoiImgViewer(ui.widget); m_pImgViewer->setObjectName("Imageview_Setting"); diff --git a/tpvs17/tpMain/QChannelMgrDlg.cpp b/tpvs17/tpMain/QChannelMgrDlg.cpp index 59a6fd7..1dd1cf2 100644 --- a/tpvs17/tpMain/QChannelMgrDlg.cpp +++ b/tpvs17/tpMain/QChannelMgrDlg.cpp @@ -5,6 +5,7 @@ QChannelMgrDlg::QChannelMgrDlg(QWidget *parent) : QWidget(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); } QChannelMgrDlg::~QChannelMgrDlg() diff --git a/tpvs17/tpMain/QDebugDlg.cpp b/tpvs17/tpMain/QDebugDlg.cpp index a35c23a..dcf0bf5 100644 --- a/tpvs17/tpMain/QDebugDlg.cpp +++ b/tpvs17/tpMain/QDebugDlg.cpp @@ -7,6 +7,7 @@ QDebugDlg::QDebugDlg(QWidget *parent) : QWidget(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); connect(ui.Dlp_Next_button_2, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.Dlp_StartDetect_button, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(&m_simuliter, SIGNAL(timeout()), this, SLOT(onTimeOut())); diff --git a/tpvs17/tpMain/QModelMgrDlg.cpp b/tpvs17/tpMain/QModelMgrDlg.cpp index 0b7de94..7edc558 100644 --- a/tpvs17/tpMain/QModelMgrDlg.cpp +++ b/tpvs17/tpMain/QModelMgrDlg.cpp @@ -35,6 +35,7 @@ QModelMgrDlg::QModelMgrDlg(IWheelCtrl *ptr, QWidget *parent) : QWidget(parent),m_pCtrl(ptr) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); connect(ui.m_pbAdd, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.m_pbDel, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.m_pbMod, SIGNAL(clicked()), this, SLOT(onButtonClicked())); @@ -82,6 +83,8 @@ QModelMgrDlg::QModelMgrDlg(IWheelCtrl *ptr, QWidget *parent) ui.ModelMgr_model_edit_height->setValidator(new QRegExpValidator(regExpNum, this)); ui.ModelMgr_model_edit_diameter->setValidator(new QRegExpValidator(regExpNum, this)); } + + ui.m_pbDelAll->setVisible(false); } QModelMgrDlg::~QModelMgrDlg() @@ -251,11 +254,11 @@ Q_SLOT void QModelMgrDlg::onAddModel() QAddModel m_AddModel(this); m_AddModel.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_AddModel.setWindowIcon(QIcon(":/resource/logo-8.png")); + m_AddModel.setWindowIcon(QIcon(":/image/leaper")); m_AddModel.setWindowModality(Qt::ApplicationModal); m_AddModel.setAttribute(Qt::WA_ShowModal, true); m_AddModel.SetClearData(); - m_AddModel.setWindowIcon(QIcon(MODEL_UI_ICON_LEAPER)); + m_AddModel.setWindowIcon(QIcon(":/image/leaper")); m_AddModel.setWindowTitle(tr("产品信息设置")); m_AddModel.setFocus(); if (m_AddModel.exec() == QDialog::Accepted) { @@ -433,7 +436,7 @@ Q_SLOT void QModelMgrDlg::onChangeModelName() } QModNamedlg dlg(this); dlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - dlg.setWindowIcon(QIcon(":/resource/logo-8.png")); + dlg.setWindowIcon(QIcon(":/image/leaper")); dlg.setWindowModality(Qt::ApplicationModal); dlg.setAttribute(Qt::WA_ShowModal, true); QString m_newName; @@ -842,6 +845,17 @@ void QModelMgrDlg::TrainOneTskFunc() m_strTrainModel.clear(); } +void QModelMgrDlg::onUserLevel(int level) +{ + if (level > 4) + { + ui.m_pbDelAll->setVisible(true); + } + else { + ui.m_pbDelAll->setVisible(false); + } +} + void QModelMgrDlg::updateWidget(QString str) { // update images diff --git a/tpvs17/tpMain/QModelMgrDlg.h b/tpvs17/tpMain/QModelMgrDlg.h index 408d9c4..8cbcd1c 100644 --- a/tpvs17/tpMain/QModelMgrDlg.h +++ b/tpvs17/tpMain/QModelMgrDlg.h @@ -38,6 +38,8 @@ public: void TrainAllTskFunc(); void TrainOneTskFunc(); + + void onUserLevel(int level); signals: void sgPrograssShow(QString title, QString strValue, int size, int model); void sgTrainShowInfo(QString str); diff --git a/tpvs17/tpMain/QSettingDlg.cpp b/tpvs17/tpMain/QSettingDlg.cpp index fe2ab0a..d61a33e 100644 --- a/tpvs17/tpMain/QSettingDlg.cpp +++ b/tpvs17/tpMain/QSettingDlg.cpp @@ -4,6 +4,7 @@ QSettingDlg::QSettingDlg(QWidget *parent) : QWidget(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); } QSettingDlg::~QSettingDlg() diff --git a/tpvs17/tpMain/QSystemSettingDlg.cpp b/tpvs17/tpMain/QSystemSettingDlg.cpp index a3e97fe..9975498 100644 --- a/tpvs17/tpMain/QSystemSettingDlg.cpp +++ b/tpvs17/tpMain/QSystemSettingDlg.cpp @@ -34,6 +34,7 @@ QSystemSettingDlg::QSystemSettingDlg(QWidget *parent) : QWidget(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); m_setting = new QSettings(".\\user\\systemfile.ini", QSettings::IniFormat); readSettingFile(); m_listwidgetItemStr.append(tr("相关设备配置")); diff --git a/tpvs17/tpMain/QTimeMgrDlg.cpp b/tpvs17/tpMain/QTimeMgrDlg.cpp index bb527bc..ffaf42b 100644 --- a/tpvs17/tpMain/QTimeMgrDlg.cpp +++ b/tpvs17/tpMain/QTimeMgrDlg.cpp @@ -16,6 +16,7 @@ QTimeMgrDlg::QTimeMgrDlg(QWidget *parent) : QDialog(parent) { ui.setupUi(this); + setWindowIcon(QIcon(":/image/leaper")); tablemodel = new QStandardItemModel(); QStringList stringList; stringList << tr("班次") << tr("起始时间") << tr("结束时间"); diff --git a/tpvs17/tpMain/lpMainWin.cpp b/tpvs17/tpMain/lpMainWin.cpp index d46e34c..2d125c5 100644 --- a/tpvs17/tpMain/lpMainWin.cpp +++ b/tpvs17/tpMain/lpMainWin.cpp @@ -17,11 +17,15 @@ #include #include "saveimgthread.h" #include "lpGlobalData.h" +#define VERSION_HUB "3.0.0.1" +#define VERSION_ALG "3.0.0.1" +#define UPDATE_TIME "2021-02-20" #pragma execution_character_set("utf-8") lpMainWin::lpMainWin(QWidget *parent) : QMainWindow(parent) { + this->setWindowIcon(QIcon(":/image/leaper")); QMySplashScreen m_screen; m_screen.show(); qRegisterMetaType("TimeStruct"); @@ -53,7 +57,8 @@ lpMainWin::lpMainWin(QWidget *parent) connect(ui.btn_start_detect, SIGNAL(clicked()), this, SLOT(onButtonClicked())); connect(ui.btn_clear_data, SIGNAL(clicked()), this, SLOT(onButtonClicked())); - + + ui.action_userManager->setVisible(false); QMenu *pToolMenu = new QMenu(this); // QFont font; // font.setPixelSize(24); @@ -112,7 +117,7 @@ lpMainWin::lpMainWin(QWidget *parent) ui.statusBar->addWidget(m_pLbDetectState, 1); ui.statusBar->addWidget(m_pLbUser, 1); - ui.statusBar->addWidget(m_pLbBanci); + ui.statusBar->addWidget(m_pLbBanci,1); ui.statusBar->addPermanentWidget(m_pLbCurrentTime); } //加载用户管理模块 @@ -565,16 +570,7 @@ void lpMainWin::IVariantMapToUI(const QString& camKey, const QVariantMap& vMap) m_pCtrl->saveResult(pResult); saveImage(pResult); - delete pResult; - - -// m_IsDetected--; -// if (m_IsDetected <= 0) -// { -// m_IsDetected = 0; -// //emit(sgFinish()); -// } } /*多线程获取算法参数*/ @@ -637,6 +633,10 @@ Q_SLOT void lpMainWin::onLogInOut(QString strName, int level, int state) ui.action_Login->setText(tr("登 录")); } onUpdateByLevel(level); + if (m_pModelMgrDlg) + { + m_pModelMgrDlg->onUserLevel(level); + } } Q_SLOT void lpMainWin::onActionClicked() @@ -648,19 +648,46 @@ Q_SLOT void lpMainWin::onActionClicked() { m_pUserCtrl->ShowUserMgrDlg(this); } + else + { + QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("该功能未启用."), QMessageBox::Yes, this); + infobox.setWindowIcon(QIcon(":/image/leaper")); + infobox.setButtonText(QMessageBox::Yes, tr("确认")); + infobox.exec(); + } } else if ("action_Login" == strObj) { /*用户登陆*/ if (m_pUserCtrl) { - m_pUserCtrl->CheckLogin(this); + if (m_pUserCtrl->getLoginState() == EM_LOGIN) + { + QMessageBox infobox(QMessageBox::Information, tr("提示"), QString("%1 %2 ?").arg(tr("你确定要注销")).arg(m_pUserCtrl->CurUser()), QMessageBox::Yes | QMessageBox::No, this); + infobox.setWindowIcon(QIcon(":/image/leaper")); + infobox.setButtonText(QMessageBox::Yes, tr("确认")); + infobox.setButtonText(QMessageBox::No, tr("取消")); + if (infobox.exec() == QMessageBox::Yes) { + m_pUserCtrl->LogOutUser(); + } + } + else + { + m_pUserCtrl->CheckLogin(this); + } + } + else + { + QMessageBox infobox(QMessageBox::Information, tr("提示"), tr("该功能未启用."), QMessageBox::Yes, this); + infobox.setWindowIcon(QIcon(":/image/leaper")); + infobox.setButtonText(QMessageBox::Yes, tr("确认")); + infobox.exec(); } } else if ("action_about" == strObj) { + m_aboutDlg.setWindowIcon(QIcon(":/image/leaper")); m_aboutDlg.setParent(this); m_aboutDlg.setWindowTitle(tr("关于")); m_aboutDlg.setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_aboutDlg.setWindowIcon(QIcon(":/resource/logo-8.png")); m_aboutDlg.setWindowModality(Qt::ApplicationModal); m_aboutDlg.setAttribute(Qt::WA_ShowModal, true); m_aboutDlg.show(); @@ -670,14 +697,17 @@ Q_SLOT void lpMainWin::onActionClicked() m_pNet->onShowIpDlg(this); } else if ("action_cali_raster" == strObj) {//光栅测试 - + if (m_pCtrl) + { + m_pCtrl->onShowRaster(this); + } } else if ("action_setting_ban" == strObj) { if (m_pTimerMgrDlg) { m_pTimerMgrDlg->setParent(this); m_pTimerMgrDlg->setWindowTitle(tr("班次管理")); m_pTimerMgrDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pTimerMgrDlg->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pTimerMgrDlg->setWindowIcon(QIcon(":/image/leaper")); m_pTimerMgrDlg->setWindowModality(Qt::ApplicationModal); m_pTimerMgrDlg->setAttribute(Qt::WA_ShowModal, true); m_pTimerMgrDlg->show(); @@ -688,7 +718,7 @@ Q_SLOT void lpMainWin::onActionClicked() m_pDebugDlg->setParent(this); m_pDebugDlg->setWindowTitle(tr("调试工具")); m_pDebugDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pDebugDlg->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pDebugDlg->setWindowIcon(QIcon(":/image/leaper")); m_pDebugDlg->setWindowModality(Qt::ApplicationModal); m_pDebugDlg->setAttribute(Qt::WA_ShowModal, true); m_pDebugDlg->show(); @@ -699,7 +729,7 @@ Q_SLOT void lpMainWin::onActionClicked() { m_pworkUI->setParent(this); m_pworkUI->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pworkUI->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pworkUI->setWindowIcon(QIcon(":/image/leaper")); m_pworkUI->setWindowModality(Qt::ApplicationModal); m_pworkUI->setAttribute(Qt::WA_ShowModal, true); m_pworkUI->onExec(); @@ -714,7 +744,7 @@ Q_SLOT void lpMainWin::onActionClicked() m_pModelMgrDlg->setParent(this); m_pModelMgrDlg->setWindowTitle(tr("模板管理")); m_pModelMgrDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pModelMgrDlg->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pModelMgrDlg->setWindowIcon(QIcon(":/image/leaper")); m_pModelMgrDlg->setWindowModality(Qt::ApplicationModal); m_pModelMgrDlg->setAttribute(Qt::WA_ShowModal, true); m_pModelMgrDlg->show(); @@ -727,7 +757,7 @@ Q_SLOT void lpMainWin::onActionClicked() m_pSystemSettingDlg->onShowWidget(lpGlobalData::instance()->m_level); m_pSystemSettingDlg->setWindowTitle(tr("系统参数设置")); m_pSystemSettingDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_pSystemSettingDlg->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_pSystemSettingDlg->setWindowIcon(QIcon(":/image/leaper")); m_pSystemSettingDlg->setWindowModality(Qt::ApplicationModal); m_pSystemSettingDlg->setAttribute(Qt::WA_ShowModal, true); m_pSystemSettingDlg->show(); @@ -740,7 +770,7 @@ Q_SLOT void lpMainWin::onActionClicked() //m_CamSettingDlg->onShowWidget(lpGlobalData::instance()->m_level); m_CamSettingDlg->setWindowTitle(tr("相机配置")); m_CamSettingDlg->setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint); - m_CamSettingDlg->setWindowIcon(QIcon(":/resource/logo-8.png")); + m_CamSettingDlg->setWindowIcon(QIcon(":/image/leaper")); m_CamSettingDlg->setWindowModality(Qt::ApplicationModal); m_CamSettingDlg->setAttribute(Qt::WA_ShowModal, true); m_CamSettingDlg->onInitWidget(); @@ -788,26 +818,42 @@ Q_SLOT void lpMainWin::onButtonClicked() } } +QString lpMainWin::SecondTimeString(quint64 value) +{ + QString strTime; + int seconds = value % 60; + int minutes = value / 60; + strTime = QString("%1分%2秒").arg(minutes).arg(seconds); + if (minutes >= 60) { + minutes = (value / 60) % 60; + int hours = (value / 60) / 60; + strTime = QString("%1时%2分%3秒").arg(hours).arg(minutes).arg(seconds); + if (hours >= 24) { + hours = ((value / 60) / 60) % 24; + int day = ((value / 60) / 60) / 24; + strTime = QString("%1天%2时%3分%4秒").arg(day).arg(hours).arg(minutes).arg(seconds); + } + } + return strTime; +} + void lpMainWin::timerEvent(QTimerEvent *event) { if (event->timerId() == m_timerID) { - QString str = tr("系统时间: "); - QString strDetectState = tr("检测状态:") + (DetectState::instance()->IsDetect == true ? tr("检测中...") : tr("未检测...")); -// if (strLanguage != "Chinese") -// { -// str = "Time:"; -// strDetectState = tr("State:") + (m_pState->IsDetect == true ? tr("Detecting...") : tr("Undetect...")); -// } - + m_runTimeCount++; + if (m_pLbCurrentTime) { - QString m_currentTimerString = hubBase::genDateTime(); - m_pLbCurrentTime->setText(str + m_currentTimerString + " "); + QString strTitle = tr("系统时间:"); + QString m_currentTime = hubBase::genDateTime(); + QString strlong = SecondTimeString(m_runTimeCount); + QString strTimeTitle = tr("运行时长:"); + QString strShow = QString("%1%2 %3%4").arg(strTitle).arg(m_currentTime).arg(strTimeTitle).arg(strlong); + m_pLbCurrentTime->setText(strShow); m_pLbCurrentTime->setStyleSheet("font: 14px;"); } - // state if (m_pLbDetectState) { - + QString strDetectState = tr("检测状态:") + (DetectState::instance()->IsDetect == true ? tr("检测中...") : tr("未检测...")); m_pLbDetectState->setText(strDetectState); if (DetectState::instance()->IsDetect) { m_pLbDetectState->setStyleSheet("font: bold 14px;background-color: green;"); @@ -1207,38 +1253,25 @@ void lpMainWin::onInitAbout() ).arg(tr("轮毂型号识别系统")) .arg(tr("本软件由杭州利珀科技开发,用于轮毂型号识别和分类,可搭配流水线运输系统使用")) .arg(tr("若需要进一步了解该产品的相关信息,请访问我们的网站")) - .arg(tr("软件版本")).arg(111) - //.arg(tr("算法版本")).arg(strWhelAlgoType) - .arg(tr("算法版本")).arg(111) - .arg(tr("最后更新时间")).arg(111) + .arg(tr("软件版本")).arg(VERSION_HUB) + .arg(tr("算法版本")).arg(VERSION_ALG) + .arg(tr("最后更新时间")).arg(UPDATE_TIME) .arg(tr("版权 (c) 属 杭州利珀科技有限公司 所有")); m_aboutDlg.setFixedSize(500, 300); - //QLabel* lbTitle = new QLabel(m_lightBox); - //QLabel* lbTitle = new QLabel(&m_mainWidget); - //lbTitle->setPixmap(QPixmap(":/image/Resource/logo-8.png").scaled(50,50)); - //lbTitle->setStyleSheet("font-size: 28px; font-weight: bold; color: white"); - //QTextEdit* pEdit = new QTextEdit(m_lightBox); QTextEdit* pEdit = new QTextEdit(&m_aboutDlg); - //QLabel* pEdit = new QLabel(&m_mainWidget); pEdit->setReadOnly(true); pEdit->append(aboutString); - //pEdit->setText(aboutString); - //pEdit->setStyleSheet("background-color: rgb(0, 0, 0, 255);color:#1E296B;border:0px solid gray;color: black"); pEdit->setAttribute(Qt::WA_TranslucentBackground, true); QPalette pl = pEdit->palette(); pl.setBrush(QPalette::Base, QBrush(QColor(255, 0, 0, 0))); pEdit->setPalette(pl); QPushButton* lbClose = new QPushButton(tr("关闭")); - //QGridLayout* lbLayout = new QGridLayout(m_lightBox); QGridLayout* lbLayout = new QGridLayout(&m_aboutDlg); - //lbLayout->addWidget(lbTitle, 1, 1); lbLayout->addWidget(pEdit, 2, 1, 1, 3); lbLayout->addWidget(lbClose, 3, 2); lbClose->setMaximumSize(QSize(100, 50)); - //connect(lbClose, SIGNAL(clicked()), m_lightBox, SLOT(hide())); connect(lbClose, SIGNAL(clicked()), &m_aboutDlg, SLOT(hide())); - //m_lightBox->setLayout(lbLayout); } Q_SLOT void lpMainWin::onLanguageChange(QString strLanguage) @@ -1377,8 +1410,7 @@ void lpMainWin::SendResultChannel2PLC(Result2Ui* m_Res) qDebug() << "SendResultChannel2PLC"; CChannelInfo *pChannelInfo = m_pCtrl->getChannelInfo(); ChannelInfo *npInfo = pChannelInfo->getChannelInfo(m_Res->m_strModel); - //npInfo->m_value = 5; - if (npInfo&&DetectState::instance()->m_bObjAll2A == false) { + if (npInfo && DetectState::instance()->m_bObjAll2A == false) { if (m_pNet) m_pNet->sendResultChannel(npInfo->m_value, m_Res->m_dDiameter, m_Res->m_dThickness, m_Res->m_strModel); emit(sgShowChannelRes(npInfo->m_ChannelName)); @@ -1407,6 +1439,8 @@ void lpMainWin::SendResultChannel2PLC(Result2Ui* m_Res) void lpMainWin::SendResultChannelCOM(Result2Ui* m_Res) { qDebug() << "SendResultStr2COM"; + if (!m_pCtrl) + return; CChannelInfo *pChannelInfo = m_pCtrl->getChannelInfo(); ChannelInfo *npInfo = pChannelInfo->getChannelInfo(m_Res->m_strModel); //SComframe frame; @@ -1501,5 +1535,30 @@ void lpMainWin::saveImage(const QPixmap& m_pixmap, QString m_path, QString filen void lpMainWin::onUpdateByLevel(int nlevel) { + if(nlevel>4) + ui.action_userManager->setVisible(true); + else + ui.action_userManager->setVisible(false); +} +Q_SLOT void lpMainWin::onSendReadOnlineLib() +{ + if (m_pNet) + m_pNet->sendCheckAllModelState(); } + +Q_SLOT void lpMainWin::onThicknessTimer() +{ + //查询厚度 + if (m_pNet) + m_pNet->sendThickness(); +} + +Q_SLOT void lpMainWin::onwfPulseTimer() +{ +// SComframe frame; +// frame.data1 = 0; +// frame.data2 = 0; +// frame.data8 = 50; +// SendDataToCom(0x43, frame); +} \ No newline at end of file diff --git a/tpvs17/tpMain/lpMainWin.h b/tpvs17/tpMain/lpMainWin.h index a3cdfda..23a3776 100644 --- a/tpvs17/tpMain/lpMainWin.h +++ b/tpvs17/tpMain/lpMainWin.h @@ -66,6 +66,7 @@ private: Q_SLOT void onLogInOut(QString strName, int level, int state); Q_SLOT void onActionClicked(); Q_SLOT void onButtonClicked(); + protected: bool onInitCoreCtrl(); @@ -79,7 +80,7 @@ protected: void SendModelKuTskFun(); void SendTickTskFun(); void onSetModel(); - + QString SecondTimeString(quint64 value);//计算运行时常 Q_SLOT void onUpdateDefect();//勾选 更新界面显示窗口 //net slot Q_SLOT void onTcpConnet(QString str, bool bConnect); @@ -110,6 +111,10 @@ protected: void onInitAbout(); Q_SLOT void onLanguageChange(QString strLanguage); + + Q_SLOT void onSendReadOnlineLib(); + Q_SLOT void onThicknessTimer(); + Q_SLOT void onwfPulseTimer(); private: void onShowResult(Result2Ui* pRlt);//展示识别结果 @@ -120,6 +125,7 @@ private: void saveImage(Result2Ui* pRes); void saveImage(const QPixmap& m_pixmap, QString m_path, QString filename); void onUpdateByLevel(int nlevel); + protected: virtual void timerEvent(QTimerEvent *event); virtual void closeEvent(QCloseEvent *event); @@ -181,6 +187,7 @@ private: QVector m_VecTranPtr;//国际化语言包管理 int m_timerID{ 0 };//定时器 更新状态栏信息 + quint64 m_runTimeCount{ 0 }; }; #endif diff --git a/tpvs17/tpMain/lpmain_en.ts b/tpvs17/tpMain/lpmain_en.ts index de8eb06..baf1f47 100644 --- a/tpvs17/tpMain/lpmain_en.ts +++ b/tpvs17/tpMain/lpmain_en.ts @@ -211,85 +211,121 @@ - + 序列号: - + 显示名称: - + 相机类型: - + + 虚拟相机 + + + + + 海康相机 + + + + + 堡盟相机 + + + + + + + ... + + + + 路径: - + 设置 - + 图像高度: - + + Gray8 + + + + + RGB32 + + + + 图像宽度: - + 图像格式: - + 增益: - + 曝光: - - 应用 - - - - + 内触发 - + 外触发 - + 软触发 - + + + 打开 - + 触发 + + + + + 关闭 + + QChannelManager @@ -477,6 +513,8 @@ p, li { white-space: pre-wrap; } + + 开始模拟检测 @@ -485,15 +523,9 @@ p, li { white-space: pre-wrap; } 采集一张 - - - - ��ʼģ������ - - - ֹͣ + 停止 @@ -829,81 +861,81 @@ p, li { white-space: pre-wrap; } - ��ʾ + 提示 - ��ѡ��һ����Ҫ׷��ͼ�����ͺţ� + 请选择一个您要追加图像的型号! - ����ͼ�� + 加载图像 - ͼ��������,���Ժ�..... + 图像加载中,请稍后..... - ����ʧ�ܣ��������Ӵ����ⱳ����ͼƬ��Ϊģ�壡���� + 添加失败,不能添加带检测背景的图片作为模板!!! - �������� + 加载完成 - ��ѡ��һ����Ҫ�޸ĵ��ͺţ� + 请选择一个您要修改的型号! - �޸���ģ�� + 修改了模板 - �IJ��� + 的参数 - �޸ijɹ��� + 修改成功! - ��ѡ��һ����Ҫɾ�����ͺ� + 请选择一个您要删除的型号 - ������ɾ��ģ�尴ť + 按下了删除模板按钮 - �Ƿ�ɾ���ͺ� + 是否删除型号 - ��Ʒģ�� + 产品模板 - ɾ����ģ�� + 删除了模板 @@ -915,7 +947,7 @@ p, li { white-space: pre-wrap; } - �� + @@ -924,90 +956,90 @@ p, li { white-space: pre-wrap; } - ���ͺ� + 个型号 - ����������ģ�尴ť + 按下了添加模板按钮 - ��Ʒ��Ϣ���� + 产品信息设置 - ������һ���µ�ģ�� + 添加了一个新的模型 - ��ѡ��һ����Ҫѵ�����ͺţ� + 请选择一个您要训练的型号! - ѵ��ģ���߳�δ�˳������Ե� + 训练模板线程未退出,请稍等 - ���������ͺ�ģ����������ѵ�����ڼ�ϵͳ�ļ��⹦�ܽ�������������ֱ��ģ��ѵ�����ɣ�ȫ������ѵ��ģ�彫��Ҫ�ܳ�ʱ�䣬�ڼ佫���ܽ��������������Ƿ�����ִ�У� + 将对所有型号模板进行重新训练,期间系统的检测功能将不能正常运行直到模板训练完成,全部重新训练模板将需要很长时间,期间将不能进行其他工作,是否继续执行? - ȷ��ɾ����ͼ��? + 确定删除该图像? - ģ��ͼƬɾ�� + 模板图片删除 - ��ͼ�� + 个图像 - ���� + 警告 - ����ɾ��ģ������������ģ�壬�Ƿ������� + 即将删除模板库里的所有模板,是否继续? - �ٴ�ȷ�ϣ��Ƿ�ȫ��ɾ���� + 再次确认,是否全部删除? - û��ģ��!!! + 没有模板!!! - ȫ��ɾ������!!! + 全部删除完成!!! - ͼ���������� + 图像数量少于 - ��,�뼰ʱ����ѵ������ + 个,请及时补充训练样本 @@ -1018,42 +1050,42 @@ p, li { white-space: pre-wrap; } - ģ�����½��� + 模板更新进度 - ���ڳ�ʼ������ģ�� ����Ҫѵ��%1��ģ��,���Ժ�..... + 正在初始化所有模板 共需要训练%1个模板,请稍后..... - ����ѵ��%1��ģ�� ������%2/%3,���Ժ�..... + 正在训练%1的模板 已完成%2/%3,请稍后..... - %1��ģ����ȡ���� ������%2/%3,���Ժ�..... + %1的模板获取特征 已完成%2/%3,请稍后..... - %1��ģ��ѵ������ ������%2/%3,���Ժ�..... + %1的模板训练完成 已完成%2/%3,请稍后..... - ȫ��ģ���������ɣ�%1s + 全部模板更新完成!%1s - ��ȫ��ģ������������ѵ������%1��ģ�� + 对全部模板进行了重新训练,共%1个模板 - ģ������׼�����Ժ�..... + 模板正在准备请稍后..... @@ -1069,38 +1101,38 @@ p, li { white-space: pre-wrap; } - ģ��ѵ������ + 模板训练进度 - %1�ͺ�û��ͼƬ����ѵ���� + %1型号没有图片不能训练! - %1��ģ�� ���ڻ�ȡ����ֵ,���Ժ�.... + %1的模板 正在获取特征值,请稍后.... - ѵ�����ɣ�%1s + 训练完成!%1s - ѵ����ģ��:%1 + 训练了模板:%1 - ȷ�� + 确认 - ȡ�� + 取消 @@ -1576,7 +1608,7 @@ p, li { white-space: pre-wrap; } - + 打开文件夹 @@ -1598,6 +1630,8 @@ p, li { white-space: pre-wrap; } + + 未选中 @@ -1618,64 +1652,72 @@ p, li { white-space: pre-wrap; } - - - - - - - ���� + 班次 - ��ʼʱ�� + 起始时间 - ����ʱ�� + 结束时间 - ���ò��� + 设置参数 - - - δѡ�� + + + + + + + 当天 + + + + + + + + + + 隔天 - ��ʾ + 提示 - δѡ�����Σ���ѡ�������޸ġ� + 未选择班次,请选择进行修改。 - ȷ�� + 确认 - ��ȷ��Ҫɾ�� %1 ���Σ� + 您确定要删除 %1 班次? - ȡ�� + 取消 @@ -2027,6 +2069,7 @@ p, li { white-space: pre-wrap; } + 开始检测 @@ -2088,6 +2131,7 @@ p, li { white-space: pre-wrap; } + 检测状态 @@ -2123,6 +2167,7 @@ p, li { white-space: pre-wrap; } + 模板管理 @@ -2158,295 +2203,276 @@ p, li { white-space: pre-wrap; } + 关于 - + About 登录 - + Login 用户管理 - + 系统设置 - + + 相机配置 - + - ���ر�Ҫģ��..... - + 加载必要模块..... + - - ���� - + 工具 + - ϵͳʱ�� - + 系统时间 + - ������Ϣ - - - - - ����״̬ - + 班次信息 + - �û��� - + 用户: + - ��ʷ - + 历史 + - ϵͳ��ʼ������... - - - - - ��ʾʶ������ - + 系统初始化完成... + - - ����ͼ���ͱ���ͼ��һ�������������ⱳ���� - + + 显示识别结果 + - - ����!!!��������%1��δʶ���ͺ� - + + 相机图像和背景图不一样,请更换检测背景! + - - ,δ�������⹦�����ɵ� - + + 警告!!!连续出现%1个未识别型号 + - - ����ͼ��,���ڼ�����... - + + ,未开启检测功能造成的 + - - ע �� - + + 获得图像,正在计算中... + - - �� ¼ - + + 注 销 + Logout - - ���ι��� - - - - - ���Թ��� - - - - - ģ������ - + + 登 录 + Login - - ϵͳ�������� - + + 班次管理 + - - �������� - + + 调试工具 + DebugTool - - ֹͣ���� - + + 系统参数设置 + - - �����˿�ʼ���ⰴť�����⹦�ܿ��� - + + 停止检测 + - ��ʼ���� + 按下了开始检测按钮,检测功能开启 - - ������ֹͣ���ⰴť�����⹦�ܹر� + + 按下了停止检测按钮,检测功能关闭 - - ��ʾ + + 提示 - - �������������� + + 将清空所有数据 - - ȷ�� + + 确定 - - ȡ�� + + 取消 - - ���������㰴ť������ȫ������ + + 按下了清零按钮,数据全部清零 - - ϵͳʱ�䣺 + + 系统时间: - - ����״̬: + + 检测状态: - - ������... + + 检测中... - - δ����... + + 未检测... - - ������Ϣ�� + + 班次信息: - - ��ʱ����δ���ð��� + + 该时间段未设置班次 - - ��ǰ�û��� + + 当前用户: - - ģ���ⷢ������ + + 模板库发送完成 - - - ���ڼ����ͺ��� + + + 正在检测型号数 - - ������ + + 已连接 - - �ѶϿ� + + 已断开 - - PLC���յ��������ò����� + + PLC已收到相关设置参数! - - �Ѵ��� + + 已打开 - - �ѹر� + + 已关闭 - - �����ͺ�ʶ��ϵͳ + + 轮毂型号识别系统 - - �������ɺ��������Ƽ����������������ͺ�ʶ���ͷ��࣬�ɴ�����ˮ������ϵͳʹ�� + + 本软件由杭州利珀科技开发,用于轮毂型号识别和分类,可搭配流水线运输系统使用 - - ����Ҫ��һ���˽��ò�Ʒ��������Ϣ�����������ǵ���վ + + 若需要进一步了解该产品的相关信息,请访问我们的网站 - - �����汾 + + 软件版本 - - �㷨�汾 + + 算法版本 - - ��������ʱ�� + + 最后更新时间 - - ��Ȩ (c) �� ���������Ƽ����޹�˾ ���� + + 版权 (c) 属 杭州利珀科技有限公司 所有 - - �ر� + + 关闭 - - (Ĭ��) + + (默认) - - Ĭ��ͨ�� ֵ1000 + + 默认通道 值1000 diff --git a/tpvs17/tpMain/tpMain.vcxproj b/tpvs17/tpMain/tpMain.vcxproj index 6cbff70..e6de626 100644 --- a/tpvs17/tpMain/tpMain.vcxproj +++ b/tpvs17/tpMain/tpMain.vcxproj @@ -1357,7 +1357,7 @@ true - Console + Windows $(SolutionDir)..\runner17\$(TargetName)$(TargetExt) $(QTDIR)\lib;$(OutDir);..\..\3part\opencv3.4.1\x64\vc15\lib;..\..\3part\Cyclops\lib;..\..\3part\libzkq\lib;%(AdditionalLibraryDirectories) true diff --git a/tpvs17/wheel.sln b/tpvs17/wheel.sln index 1ddec6e..95f801e 100644 --- a/tpvs17/wheel.sln +++ b/tpvs17/wheel.sln @@ -5,6 +5,10 @@ VisualStudioVersion = 15.0.28307.1267 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "lpMain", "tpMain\tpMain.vcxproj", "{A229CF5C-81EF-4909-AB6E-49C746F1ED4C}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tpAlgorithmQt", "tpAlgorithmQt\tpAlgorithmQt.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RasterSDG20", "RasterSDG20\RasterSDG20.vcxproj", "{CE765894-2106-48FE-99C3-D8D7624889A0}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -15,6 +19,14 @@ Global {A229CF5C-81EF-4909-AB6E-49C746F1ED4C}.Debug|x64.Build.0 = Debug|x64 {A229CF5C-81EF-4909-AB6E-49C746F1ED4C}.Release|x64.ActiveCfg = Release|x64 {A229CF5C-81EF-4909-AB6E-49C746F1ED4C}.Release|x64.Build.0 = Release|x64 + {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.ActiveCfg = Debug|x64 + {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|x64.Build.0 = Debug|x64 + {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.ActiveCfg = Release|x64 + {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|x64.Build.0 = Release|x64 + {CE765894-2106-48FE-99C3-D8D7624889A0}.Debug|x64.ActiveCfg = Debug|x64 + {CE765894-2106-48FE-99C3-D8D7624889A0}.Debug|x64.Build.0 = Debug|x64 + {CE765894-2106-48FE-99C3-D8D7624889A0}.Release|x64.ActiveCfg = Release|x64 + {CE765894-2106-48FE-99C3-D8D7624889A0}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE