From 01d7117aa6259e26758a655b03ca154aba1070b0 Mon Sep 17 00:00:00 2001 From: Next <1406099478@qq.com> Date: Fri, 1 Feb 2019 19:22:07 +0800 Subject: [PATCH] =?UTF-8?q?v2.1.0=20=E5=8C=BA=E5=88=86=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E5=92=8C=E8=87=AA=E5=8A=A8=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E4=B8=A4=E7=A7=8D=E6=A8=A1=E5=BC=8F=EF=BC=8C=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E5=88=B7=E6=96=B0=E6=97=B6=E6=94=AF=E6=8C=81=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E5=92=8C=E6=8B=96=E6=8B=BD=E8=8A=82=E7=82=B9=EF=BC=9B=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=9C=88=E5=87=BA=E8=8A=82=E7=82=B9=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=9B=E6=B7=BB=E5=8A=A0=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=E5=8F=B0=E8=8A=82=E7=82=B9=E6=A0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 17 ++--- index.html | 154 ++++++++++++++++++++++++++++++++++++--- screenshots/preview3.png | Bin 0 -> 334483 bytes version.json | 2 +- 4 files changed, 151 insertions(+), 22 deletions(-) create mode 100644 screenshots/preview3.png diff --git a/README.md b/README.md index e52ba9d..0021519 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,6 @@ -# ccc-devtools v2.0.0 +# ccc-devtools v2.1.0 Cocos Creator 网页调试器,运行时查看、修改节点树,实时更新节点属性。 -## TODO - -- [x] 拖拽布局 -- [x] 实时刷新节点信息 -- [x] 开关 -- [x] 控制台输出节点信息 -- [x] 组件信息 -- [ ] 节点搜索 -- [ ] 拖动节点更改层级 -- [ ] 自定义布局等配置 - ## 预览 v1.0.0 @@ -29,6 +18,10 @@ v2.0.0: 节点信息自动同步,避免手动刷新。增加组件信息显示 ![preview2](./screenshots/preview2.png) +v2.1.0: 区分手动刷新和自动刷新两种模式,手动刷新时支持搜索和拖拽节点;添加圈出节点位置功能;添加控制台节点树,cc.tree(); + +![preview3](./screenshots/preview3.png) + ## 使用 1. 点击 Creator 右上角进入编辑器 resources 目录,再依次进入`static/preview-templates`目录 diff --git a/index.html b/index.html index aaa57ba..017102e 100644 --- a/index.html +++ b/index.html @@ -42,16 +42,23 @@
C+JwZ5V}>UAgYkZAj5A)b5_cB1zQbcYQ`NCUC0i-SlYfDEP%zlll;)9 zrWsAdw+k_@$K~99S?37J0Q2|=_Sd)0edUnXHUCGud%!EJ7peHw@;_cJ98!2#?D6T- z_n5v2Ao#$X0=SXaoc&Gw{&JBXEEgFid+5y|bEh&0+w z0T^)azwA-QX2k*e3mmEIOEf-@bh>+OA-fe}$VVc+UlpbnUT1x<1vx+tXYevkePGq^ z(QGs1B5Uf`wEbgj*3{H;p6zHHsW9!CU!^Lbhti0)Jge`dLt)^aA6R5x7ZdLn5{lZF z`d(eo6%!*xxNpEut4VXN9|%-AfY6x~VNZ<&Jx+e^Wd|tDmg-5p;SaB<*IVXhX)*7r zTkF*1>uRO3Bxu__1FCjbTHMPd;s|L9Y`vrwXLD!al}b)Twrt+;4Vht3A(DWYu2znP zgdF2TAkax(*a`@#Gyqi2NNf2P1qJ0_;F$TJU{9!xnz9~gVfY4t&ziMH-Jrly^m0kw zXbgrjJgsVl?P22tAjI6*e{+|VwXRRfazZlvGR?zP8yQ_slAR-e=pSBJPS41wY~or= z+jP(ticUvP8zjpfVvpp6b+}2XD~RM1?6L{0Q_rphdvNzvzZCvnCEP_4t9sk v7T?!LOT%|KM+bf{+mbNqzn(|61ThMXc#7U#W^*|;B`>X zvO(Gk^4a!igOJdC;P@_Y8XmQ-2y5{H$$=c@U=Z-YRkM?0>;4*u#A~$49Ek8v7>|o$ z7N(!F6ntN>h$dA^RM1 h!0UD&t-h8dWiT?vT00t0~!? z7RZ=NyUkoGBB^IbZZP3y)|&_YjrTc>qoHe*6F1@d1_+ix- LzZ2OvbpGBsZF{ue8E~1D#4Cc3!o1sRjDvUp0Wg{6 zNC@f1ETFa)z*Y1;# CL^ zpUXkI >YP1(<8stj*n3n&-ERvc@fr#!lx&Z{ziwCNRyTxe^zT-t~9@!R%T( zDsLX!5ZPnk>lX!xSvdM=zn&WM%QB}&<``xJ0KCCs$}O!f)&H@G|4iIKh;{y}L3kk| z;z+f^kLa@6GSw(4yYI+po9^?^28RRu)JPv^983=v5`o~hlCp*lQ%>277)n&+_S3=M zkeLgc(!t~Qu8g&H e=(g#>*RSIP@hm#^L;2rynr03{;#pxYAv+}%ZB=Ej%!mnz z%|{aAj9qztFTLs0F|}BKa@#(u`#+?y=w*yFoWq=XU;`b@1gt?#4(Y#?le?kT(h-Y= z`W&H!jo1(m%I>D8&tJbr5N@r!yOnUAqNb)Ul&1@U|13p26f{N|(ir5}xjea6VIUe2 z6{WIC=?d!ftEBr4&l!~O@M8cAEEU W96_q&?D!uQSHBcQ)aw^#vL5Z$_ z99@aDuG>|Exf~|sr5`Ly9XK$GrKHUMnNGMz66wGk7te@P05l32{iTAvNfy4iH=a|` z^Qi$Lfvud)754~D7YQz! CGegiafnm&rijS8(iQ`mM$U^A#2_j?q?(^jS AZmeivL?4QQ5So 6{D32!qUBLZLb42AW B zPM&^251Uo#kwqnu0ubm(LAW?LG{_fKB4vUFa@o|ui0_jC(JFaV2RxWwccg~+Av5~) zVG?~O( }9PE4=(P0htIEP3E?l9sF6g^d~=GTUl9Im{Hu; zHd-59tg^Fi0N=fP#VwEX=4VD5n^jTKWp8@j d(isW}S$Xx5Z&S^12U7 z2pPG6fHrc-m7fR;%Qyay9a)H3su&<*Ay37NzaX*y^8&c#i!}sRsu8-HA3k!!eeL|P zc7>p97st@fZ?L^FL;1)gsZNIXwQBSz$5hZx&gvrHv--2?%p{tTl6U4n>z3ehEQ}i{ zw;L &Io!rft@U?l!({f6$8_V5VA26Xrsu6-U&4XPab&py3mY%S2*PQeqG@M3>*?e ze8>mu{np^XNEDt4HLbb2qjLCJyPqXCjdN~udU|fx I+C!d#MQjVStl81FZ{B>h) zs(>I7kAQpp{_b1cHYuMl9sG5}h5 rY%?WD-S5)*xL0W?ssR%d2Kh)l93Ow{wd)UV zOpaZi`zY$rVxXeCn;=D6)!Ep5*4C`sKPJ3)w|GH<1*?I|!f|&h(&zUVk<7Pp-w)Jp zx84zSQ%A@c8U-AGAn~W~91W!E5m=DFhL)0;-OlR%=rFe%m~h)hZ%R#>%t9doR-PS> zN~~XXc2R`f>`#&ecwgPpoSrQ+l+B+Yp0?Nb2yt+{e_mCvo$M>3Tr#CU=-* lM30)M`P^N~*<~Y`jKgPK7>Xitu$WILHhlFU7FCeCwTV~hwqWgC?! zEwC`8?7Sli(!<03cOz6AA=q p<|eTWXu5qLK8Im!|JcxJjjJ2h z?5BUcV{;315ha- Dracuu_2@VkQ><*GT-_vEmyMzppuFXEQ| zVQbc9skT_AJdFx{no|g#*rwA~)vnDL-qMtpi5cFe(~ZcB{aw$ai#$}Y;|Y&0^FV_XHF`v1|Nh41Z|%jM z4@pywU1^i#sZCm^tHJ3}UW?}#=2Fi6W~x`V%NhZz^KCK?kKY=Tr|t5&9X&Sd2TXvI zNZ4EdJ=R`BUy_1Xar>u9#b_sG%B={4A;3YQq*T7A%*%6}l6%q~z))=U4nJMQfzSSl zhoe>jghs{^ft#^#YeC)2Ffcq9>P4h8N({(I_I44YLPPS Nv0cgc26p6yE@x+Hb3o!-3|XsiHy z*3HKe9fww&sip;R0V9lZr{PTHuP#Zq2AB^zA@|18y=8`7<8UBc-$pgB7AJj_e;?zZ zdm}+n%TOS;w*GTJq0A%0iSHCB>Pb#Z-x|w)Gd>8Qs$PfpgO;`+o1nW)^%WYON_cH4 zcAQP1p|_YjB1(6Hx4w55*o2%Q$lP;c8juBvz&?@qfWr8a-TW{8vir04h+)4j(~f_> zty9h(PoC=QKK$ZK;;m6_EGUHVYuT=`Vkc4+>9W_Qyp|{Wv@Nl@!rqWI6Pp!gZJ@f? z2T3{N;VR;t*TPll6??3Nb-IX?pO`)mlb;Q~6eagJ-JHeis3vK>P0;77x~qzfO$4XA zx%h-r1DH8y6ugLV;HAp(!rEzwDK0uW$){C8dKiZvWJ2Z#=lK$!OL dPmK!hgiG zR0&NbY835g=ovf{9 @Nr0VI*7_keu>k7PF?_OWp&A_NPPyMmXOC5|K@DXflUU8MD5*t zXJDeLjKmyg$W|!L>;Qj8t>mceeHWn{dvb4`0g%BL4dHcuHzo%^sg)pwK)`^{{LBQk z4%6Uwi{}X_72nVqR;p!wC~Bm1yCXiK-I{|kck_OyVi7%<)84bs&P;VW^mk~%nZTX) z)*h@uFe)B!4Tm74iln8HJv>^zqU(>vkE{H^0S+J?7GTX(R3S2u!AK%lJp8=)H{o~HOiu*A*!^J9Q zwaRJ@(r-0;o2xgVc3U)X?#A7+?H}Q{|LVAP)>TM=VSf0-wNizNlmt3{ps&KaFvS@% zE~IM#*UF>qhm~_>v*(*G9;T-w7vqL-9P=kNGDE|CKqRT}L ^!Qrh&)1 z#o5_HO+jnNNK`wjP4Z0aH*2!C^1C)7#`^U7b`)bXBgfD^p0!&>!ff)}7K>z-fSD*w zhB#kX=ba)`Y Qm)OB8MwUMByZd+GU)zS_qZb;<18KyUv2m B)IdkQ7JOHM^$P-S>!el;;KUH_ zzaG}m*?3e^u@bhnrSDNWq 9_k9@xL5 z5b&VlhW@+j=S-lxg|9z>u8C$GbnE514I3xtGy;@Z(fP&-DB{RbhdMO!$Q$Uu&j;yp z=3RPx (oBd^1y3 zak}uECMubC)ZIYix;~ihM-cWbWqN4Q$UpS;3yIQ!J_E@7^xTD8L`@q G1jFGBmH? }BTw-VLS{nBnA0M_J5p#TAo;rB!U-V0I zi%CTNR8uTnJQu+qr5I2Qiyb^@<6TPcguWv0)`#=08{)=$O}u(9*7LMK-Q61rv_s7& z8?8Q%URKfg*iarJRqp*`qp~E1t(6nOX&)bjbw7qifuTmDq8hnN=RaDt+7 g#v`D z^LY!Jlr^AT6k^2{Hrs}x;61yMtzT+CWZl@}pL*mKt>6MX&a>j?BZ`X@0AAngwXfiC zZhi8#JFd}NyKoYHQac^ynHCx6)6TmSL|%$G X!!-1>AeOLBM}jP9QsUtyD~P= zXkaExL+SkHwhd2gYz*fzcn5)Ct~7EQ`#+fwKaK||dhRRUtK*TyrCw}dt`uQW5^`4` zxr)ms&wLo|4MY`3LiHo&cZO5Rm#cz~lQ(B>Yp=MZ+y$KR(Y$NE)B1sszDUVrwJeHE zAUCU%>&|COv$uIxTuP{v&>k*I!Y Yz$cIPSznA133z>z@J{#vYS6VNm z0r_U1+|2&2$IW6Nisb&pB}m`9=_p(lMqB|(P*%40A;W*@JU89syVb5kuH1G1S^)ky zLRH*w<_^15Go0;Ui&!wF*>J8|>5Y`*Bhuc9aCRrKX%iJB+!hzAoz`o2aSf2@7bm_i z#YWvVUC;5bV6gV%%9n<3`mNSHAc@0VP3OGSTKe-gbbtC_fQPzJ)r2W76vWOv>;`d( zq0lPNs89fV86#2P@8}^KnE1ZGtl?H9s&ZVn>9!j`@MGpHcXSCh^Ig3s9m~PIdvYSX zZ{b8z#wsRMyFH>J2GlMKozSMUIp1&Rdp`k()V#GYfUT>~iu+6kGQV?qAAqpsH3+s` z6^%;XbNS2VTTYO)b>9~m{3LhNXNVOng39C6x@xl7aNm-|o74x1STdc6G%_up_Iq|B z78-A5Dtvz06YU4IIhEtOCP3TsVdi%zgr*9Og0V`rjeSV&xK4qMA>xNl;|07a4?phz zjq`JlbD~3cKR}PSA`88=yt=hMPy-f~!AFl%czfPqg_cF%^aqBN`YEBJxOS+KRCHGb zSXy0JUFX%JU+Cf@Z1T|A&-Je-AFr-Pf 5?aGNDFWa=mwhtiFb1Ywd*Lopy z;QLH#;8fLNW)kRQ5B)*->t)3rOq?)c>4K|u_9GpPMjWiUKjPC(+@~8Qm*o-k@cOii zmklkKWf3ILR2vrkaZUwze^@$Zh#==hJUe11R31M7U*KmNxk^g&HTeB)^op0W%8#lB zJAixoF}vU2KA&kF&i4+oBb@D)A&vqfTM 4ZuHboRizV3i2Y{*zNLM%JjB$ zpauI};TgwX3-QeF`6J|Nem-Z*u6nIVOZO6P>z5M^#)@y6ky|a`SsHrjmg^UOY@U=u z-FxJJwx$9(_{U)4$Baqd+V%Lmc>98~_@YUr`$q9icP$;rGGazO$B3WG_;BP*9ryA0 zVDWyJ@T)@3S=I9@H9yh8bWb4MZV xa1S;DNG;+bf6ydY>C3!ITbY4C-ZxaRy3tX zn%(jKoX1cQq&Cb;+hTUD947r-zEZDHHR~`?P#vrGAwBh381MCS6aP0}xa*b(>Cq0d zfqQhTCmRI@9m!X1YQWSaNA*@-FfoH5{iU{gedpi&MJQ2F?)EM%9cQ&};&kI$Z}lf| zqL(8j-+ze_3(-QHJCI*SU~K%$$<}tUxeqvX?1&ik;f!%2#1o>UV7PR$i(j7oy?mdm3rZ^~-!Kkgdy)G`^+;s{xbm9^p8H{@u<61P$$? z%hKMSb$2Aq `PSs-ctJ9mt^o}UGAW?} zX3TeO@~sznqGx-O3+cvyb;c9;r{U~LbbX=nh>bjtSy%&G7N53+vMwTER$(a#v0ZB; z@wqu>n5#yO{>YaA&^9i~E-%*hY2{K4OM?Cs6ySxv563$v0O9jF8cviY;A;beDnYu@ z42yrc=W7OedpiI(V+V32kAz!2fpp^Vz c@V8@F9aRTE_ z*!1&jG*ZhBTQ%ZoyXCa)>A<`2HIbw^^BQ_=R3-#Z?LfvLBL XQtk_O!kT8v!Ktdfubw#ul8;I`9Fr8Hx34MOLDHEvgk_4YCzYE zKrOp4ohL@gzHBC?pg)}=8y?cpq>yl6cy1^eju}H@AJ#gO@zOZfU` OT294r|Zw_@%$p_!gjl_432$J>kAq|uRbe9a#!;K(0e%ts$S_L zgSbX!e zD!1!l!5$*GB)3}>cuN*|?zfA>2Tii6vajChJ18eCwAQ?lmmzd?`MknEUQ?Fl-**se zftJaR5%V1@(pZgB{UZuC>t&fP_89?UfO(c_zQ>4bTAIIEzQ^cQk%h>v^o?hqKqu!5 z-iT{+T2uM~|9JK8zfS4#xe1sDoLRbZg@Ix7zbQ`)`~+2=xGBcS?#6`bizq_&+@$LN z8s{=G^b$<7cM0|bC7wQXU+_$gT2;;?glk5Ge+Gh%zDm1~pEmL!@#fu<-$t|p*q6MK z4A#kGjRL)#NqgaUiy|3tSsyrAnK4=O#4>wc)9hM8|I&~~@lbi i)GG3)NFn!JBFDASP`>w4tZsaIGxIevvewq0!`S5AZ?MX7WUGV}>921ja =7 z&Ig*Dwa2wcMrB4myhwbZYzhb Z;`nM}+|2{gS` z@h9^5PmUnG2n6%Tr>yAqjEjl~0)&m0r(u7*0E1>=p=F29uv}I)SFUGMvJf7S;tORf zj7r@L)vW`4kv+W=?uDXp%-KH<@rXL${*|oabs@BUKkzQ^sUA!J%FGN^T?EMjo+{hq z52Vz1{(E?$C@RUha4__5MfO@vtl+3uZovk}$rO!Lll6i$*+TqU6B_!>qd)8u7SZT! zqP*v|3qmAf38-Dw#_vjs?m!rfM8OTHf*jE*i8|pk)EnMxvq$1jUce}Bcije@Kh&^1 zT S2wbl@TKhq*b 8zdm&x0ir{C`W)M*0i=g p4ggAPU(90G{p+%#SI@PO=l6$ zc107j&JT|G?s3GI3|?^|yA3$k l~wfa0QHjW?u`FF14cgd&QP__+K_QQQI=58BM9NN%k$Y$8yVfZ>mQ*K9dyD-s?@$KPyPd$iF9idvm-M06E9zQwrZAC{4~!V zo*Y(xi1@tFj*)M|yE!o-#Nq^|(e&ViQAd41Tbf*>ljB0yxd>eF&ffcTV%&EL#|qxM zEGXb72>VU)g6=X(2pKK&bQzM|WO0FUY_=P*Lx|Q+e_pY?34d%|JZ7n{Svy{VvF#?W zaaaFvNyb{7Y0_Ke?AzXh)Qm1$RWh NjIEC4RaTby95EuTCR_r1_H45d@&Kne9 -AGUim<9Q|}wWiniwbz!;wAL-9W{g+V zweM0kr|`8cxFcI`@2-+%X$0PUx$`fDO=z0=rcv|Yp1(TV$FP4OOWN #xf><_SyNyqxVjJ_&l&Bgk?nm{Ss_t=O6A#9a7*AH1i82vD~wwa49d zl|TV6c4(_7JlyI{+ykE+YI_VJa2y@opT^K2+sD__7O_UZGS~+|9) V;oNZ z5Qoe0a+uk?-6{XcyQ}}?%{PVfJwh}-%6B?VY=Vfy$w~TBjd4(Lp3m(UVX)+8yHk#k zRxRpXLs}fxD~s@yU9dSVLUhAeF$!)YpS!;2!Q}6-GUK<{vra^a8kD9}3f_umZtQ1j z5E37mI4O5k-oU};ZFgV*D ?c~ zT$kiuqY^ey!0PJ<&nNx$f~~-XcR``UnKuTHXiy5PWXny2sdy(ic-ZZ1dv`^SN~(Xb zNH@1*)PjFjz=MyWyi>{09 {Yah(PKSY&$H$J*CJ z;t)~~1je0ru`6?bzaq$Ne@*W$@~s`03lqL&0jWra5C1GU-1x+ooG8MZxR+FCRCr@< zoHksru1ejsBv;>ojGJb#X(+FN+ErxIdE#*HJI-O|)i-D*#owm_%W>Ytj=Ge{0ar78 zyzam;b?hCW^R<5lrRpw=KfZMmMzr5hH}ceTG?VN1B(g<%;$cN9i7Phku&s?CS}xO% zQ3~4-)gBX4@I0&8WN9Oxty`1t$J6VMvh-Ik+#Y;6`LQOY zKmM%7R`>~~+Y!v~Wnq%I(3Q(5s!q(=zdDO$I3!7M=JdaMN=f-aBq2e*gPyVrAqt;3 za=RUUZ)bzL;5&?jXEBiy9IUi12%2ilf)*iR`A`yUtYmtfoMDu_0<5SuI)Y&5TYY$e zGq8?(l@WyJX{k9lFw3;-lnV Z4WclkRr#Yi>-vqu9P5N3pj zBAsBrl=^lDDgohnw@!Tt>r5agzc~I)U7A827CWIBau)E~yuYV92l$1LZGITF14sHM zSGyXb;3b2g(-hjEMY7 k# <#NUkf?sYD`>c=A f?nC)Cr7)cj)tGS)1p4fvneBZ~5S?rL6K!*O+@F$?JeiMz4x3 z =MUteO-v9FgaJnci+#Hj~J}muNFsA^gO9g~v^C4PUMk4Sq_w4vp zMJj@{>UDbQrb^rKv^V7;f1W#qs#b&kfOdaVz<;wXsTQZ#-%Y~_@(&vyQ9c<}@g}8B zrF%R}wK=o!skRx7TK`yMuCDC8a7 g~e*j3q9tLvZJx80lOH* zG0};ENLREl|I^Aal5<8)h-{p13zeFNCKn)^@+{L*DkrjQash|ayB jf5F zAg>5iwpXuhvnLHkEvG1ctZ=`T(#;I e)ozg0(Z+Dd* zl@rk-RrnJc_?@8rPoJ5e-x&`=_y=dV;@@BEg0lGx!Chd>mo7=!(ZLHS5x_oK7~%B+ zAMG$~mglO5$#6|X%BE*a*X8?Izq)OQh~Q3YotqdZ*T*GMb9rfmsB$p_=6-u2Gx>jI ze`zmZ-py4x&;I^t`F|y9=6f!M!VV=^AZoq65f2+XG%B)A(xqE66Q6OjJ#;QmQR&+> z;6OVh{r(Tb)@i!c$K%mY0^fj1pkLxJA6R&9y@iIVPpZ1om->{36wZ2;l~6I%s3ow& zyCh$1mr-olRhnlz3Ufa_Xd5az@POccRuny4{EKtfu6DD8UG{``oS)987n!wM>5G&K z^ZgE8%9xac&Shtuy< ;v`sjLL2th-GbTQ`b8jR3$2^rhntf>e#8( zG4NUbZyx6ZUe2qg{lb?0 mE3&Y)$iXgkEWO2-c^MY*@_|s2?ukXzps!gRsI0HycN*s^jIv$Gz|UNRaS) z^Pv5MIVZb>80<^fW;cv*vfT!_>H*S_fHBj{6XL;s$nNgH!npVI4rp`k%dxi@JN$RS z@sWb;#13hIiM uda z>Op~ttImX4U9xFPs52|xvINa5E@z1>c&q^p*0yq=V}u!3eG@;x?B-AQf_3hKf4P=u z@V8{QQo<#3OH6b0%O`L+*8h|?%ml`s_yi*2&2M0dt#(cy4OZjSLPDLKh<{%;P;uV+ zt0c({%7A(O<3YTj8@oWKJ!nxvlh?d1_4nzo;xlm;&+3L#L>+qdP%Md=JSIJdVuGBR zky34Ti{KMy?L3+u{<1NAo^;#YqotK1buNzvtUIl`RjX(B^GZ&yM^6ODT|>I0t1;@m zlvcNltoyhWOyCU^eUqh&uC;L(w3c(5LC=mT8xpx*?(cpe$Q+XR%Ta(gcI(>?E$=u` z*DqJmVHMSfBAKnyu}h18>V-&CLdl`q12(Z$z?HjT5Rue*ULOB6{dL^ECC6P|!#Fjv zY)Rx|xj!(GU(HUI7a`J asVi2)hHwsZc|FN6n63|2h-emOGD0&Na%DGHvC5NkpYBJD^ zeo6(+gf3F$_N1 B%#xMaHCM%$Q)i4^5zKDNTy@I1a`>oQX1~}9zT{g1 z6BNf3Cq|KZ)*MdRYrr{8TQ`pj@YGxSVn)go+Zc53xnvAZi<_pNr~iN7XJwsAnS}2W z|NT}M*(DiNs*Aq-WFRkCjW8)+M-H+>yHiDaFa~37Yt;&!H|hJ~SxzC%w{*X5k)>Ui zFYc?NGomV*nH 3f|FQk>ib6uVE zn5FL|x=lRtRU4qoj=}fPEzg9I#s5;&XwvS9vwX{Aj(YBP9vIVmGk}*j|J9JaTcqKA z-JBI?#cj6Cc$^2jvc(@rg+;K}U%YB&c+1X@3T?=S>As#aia{zh0PtIaUwgNvp9t zFt`1}_mo9+jmzvGOiH|;b#7hW!nM31=MRqXggu8Y@NubSn xn6RyFZIN?wyoE^=*LU;j-X%6TCYb7E_%5(?4JFAj0vb3Q*a59nRkE# Ur=0LolKL#Od0j|t_;I;U#n*$+H~>P`kf7Osugn@s-~rsqSxH# z1YIB)r_G1=94GQ@-1QUJ?~h(M-XPXtzrTQtRwFpgUQ;giBMj$#d>yq=ipM cW>m%z;4ZdsltbP?=+v;m% zX22XT!FO0DoU3EaF^F5B3j7@N@mj)s+2dS#(Q59 fEw_p7t-jmiT`ac&S z|BRVAzuNclpO-lN82%yg{9k{jm81S!ri_Q_Fg4ei0571{ zTJzNZowwjw__an#79eaRq`FeD+Ruh_xQ ~fXPZhW{$3zG zi`jfi+HZn`^=UXA9l@Y>O6owBBp2V-cs&l|pu24QA2JWPmNY!_&d$c_!;N#FK+ydh zOu=UlY05fNt1#!M qAUEh!BY z>0ocek?{T$QHcS)l^|ZS+3t96uFSJL$XY&}F)e!>@X3uZ=-(TWtzAj?r1;UhAaZ@U zB9Tv|YMGgLm9@db+}HC6*x%a~J|vnNO>(e4g5MRH4rHm$TXKjg_?-wOd(O|%hb=(i zJCIpPR`yF_rn}yA7%iXU-m`^;Slt81m4!yE)}KHbn`ScQp~drO&wg6W&T!tc*_nIt z%6O23I9@QrsOpVD&jrz)`;^VB$Y@z6Wf5$=U~;x8MV19Oa$t&fJF}Br+Ft$R >nC)zD z+nH*vtFXTH=hvH-C;Cy;&-uvM4SE}$hXmeu-aceAIB>iUME}H1$MTz03`0a*T*&KV zcn~Z=kUjKaQ{PUFl(h7H#R7Hj;nDp5s*ka=j_YHEp*7oQw(W~HZMH`$PoXc?x>(_@ zfvj+oo64X^b-`z&u%Sf1i_Lnp;%JxA9bB#XE=qD|LGtqL=g)Wrb;}ISRH(H=nM)kO z%ZU#poHmvNoWOa(N6~;vSp`S~^=(^=hNS-+9>gJ-^y 7dGwM&98#!Io*dcijR|gw^@r5 z$Hy~_W|$s2RylIo;EU%*GD9(_iF2>f&^9m5ef5O7DoaT<;dOnY=q$ cPo0>T+ZfeMmTT(yWYdAzeL!B+gF-0Y6QAS#S}+%oZTM-qHlZml;QHU&*27_ z?otk k1^vt$Lzs bMLNRIXlWm_KOItpfF^+A*^?Q!6@DhI zVm!c HjYjia#+X9Mc{~md zY-;ZRsf~0#FWFQffB&9-b*9u_KO|k9J2LI}kN }$tNwju^eLO!M7=NHGrJo(5M-Q%1p15f50V7cam$Jy2N_Yg#$-bVsxj9Wx zFMJD8p$9r1qF+0HmfeQ~J2l`H!8)3+rquD&+ENWy@XRv8OcKPo!k `h$HAh$-z*rix&;jLgy7CW*PD;rtD^Q^` zFqm`C`@6@5{~Eu+%u&v<+@tj+k-z#W56=YBg?{-W K~qvh{*o#s|f95l(D`>UZxTaycQ##Fj0r Zzi-s*jptFWwlM~T zR}xTUfAM)2otfx_3G5Rak9QY^O|qX;Qw#Y7^4f@F880!bK3fb*_8h2&NIKWN|K57U z3Ikm9FPz!gt26nGcH5J|Ct#!!`I94Dwn2u9wcK;xSmp0}80u+8STI{r 6z%k}Z(y7Nv%ZBnSUKrdB*(_zZif3lo^!l?-!ECg7UumZ`Nb6pe_pB?u1 z=Q6F8R*Rd9Ku|`{-?5gBWWUe-qICSsOj0q?YRYjX!A?awZ@Co68pHQXNFP$!uN+QC zA_c1U9Yf)HwhHOMS -lbiTzfNvNOluwF(}yU$fR9Q`>D#>az}>HU*A= uE+gd W===nQbsVVmMJ?L-t$A^w2T={PUx30!UZ!D`m ze$+UM56P*0(H+Ot$Kt+SwKDlDwB}40mtR3wv!0m!?r#{r=~N}#3{VKD$sf~n#sO!H z(uj43Ss*oKi26GFU5$_~+E#&(($qW-!GtutCM+@)3Ou`KLgM-!sx<)pf^-R#kVqOW z9lQFEu<_Svgj}40&81_m=H>-;38TgQPKTT3YN`5$E7~ocBjc6Efv)lU97m_g@Y=T& zdJ!>}I7JRs>=@SW# kt7>8DEm}qV~pi&|2>HR8SqYe4vvxAU+T~HB-N5V zXFuxdrkr UzG#Ca?vnPPs~jFrn0-AnYk8(_Ny-cqHg?Zo%Q2`m)?(dTe{^ zVK#?yLS`AJa05t-SOEcY=4%x2F4S%Gx<|9@zLp+kX1M}1EXAaxg6jHkDqa*hHee7F zOd|v5V}W;8ALr_#59jm}pUvuA1tzYraFZ`CYxOkn;=v~4#J=K|X@npaD&shzCR8Zm zNqSR?h$X;Fp*s}-Y65N<{i&e>s@t|7;y8P5XOjecX6x?MW1#+AP0y}QKuo2z9Wfdj z@~$v(It)5fM9h3~eI>z}sM>zZBa1E*OKso4-{|`!Y3^7-Y3Oqrj*9(4l^RMA8kc4? z>GZHW`MyiLUM})|$!)!%q`B#W>_NM^?@zhm?0jdM`<46+wb=7*KIIJ}U8J<|o>hZ) zU}a*3AV!9p{26-i7(t9#X7*DL&q%AYCJ(-QNA-EAVXxeOaTKru8UV@G@VUhd#J97t zQ@HjGKM-tpMxb;#7>U?y4oZ{GyEQj$S3o~iG4Xm7vzme0Xe9|t^ *iU!S8}0XO-E-MN0Nr*WG2; z_`k_JIFPFr;lz-gTG?)nvzcuedQ&S->`dQg)On#^2IO>f=cyG>WQ)W_8uMMzN9nL9 zShVV(>jIIC;W ?U(|j0!8$YAwIaN-eO+GlB*auhbBwyrJw#FLkLS!qU3(6X+ zKr*;uo>5VDuONjWZ+EdxZ+oh$5{TtPUj%5We0>iJ9Xu2fk5~c%7_1}llw%KSL?w%i z_Z6`zUSGo@9Y*m{A!Xi6m+VvWe1opwh|=jXaUo53@C)vlKf3K;j{A8=8>S|Qjel}G zpw N68C;_fNvI&BD=Hj>Nyf7kZ#=n zQz$)HR3t5hl*?Sb;6$Y=3mj41sP=I*PVvni8_d)?Msr)G d$-%AsYEgCYmx-Y!9I?o`x9UUF? zb_hNKf~-Ro &MaLSfN+=!)i(K3gG94=@*K!7KUdz?y zRZB!Q1%^qkoU4{OtQC6$Aa4o;{$*I;%i~mi`{5@Jg)Bc`@yEwl(ll `>lwpJ znALMw)I5#8oe_hM8?gmj$d4Uavv!AKo71?6W9{mc4YU1rz z>Cm_@V%kw$09BuHH~q)$_S3cJjaaPXdU#Uf0d1kos}8jjAqB5pDtfkX$hrF!2k;;A zO#e`+^0SC7E*=mn+!43CUs7`a=@S9Ut;r1CkyzW+{(}6IqEKcYWVl%#2#NgFw#EC_ zJS f)zoq)A&F1(+AOuxRJUbHd?)SlP zwXG>RugzUXr2-KN3C#5otb+GgAjm2INJ_F$3xwD&rGRyWD8gktQwOeZoKmGm1Jq -O7w>hkrrSeqEbDCe~F&qM!AB1%Q=
eR+{=b#j2&=&tf4Km|%2rmr Rp}DZEe`3X5&TIuNqf!t;eb5G4Sy4u8NOjEWq+X zrYchZr&j~@ZQYcV6b56j2A#PTaC=I(%1KV2+_p#r>ThH=I$v7InmDnCUW6Tho_YkD zq=cNqL_sbq^Of03i)C+_@sQb1|E`zA&Hceh7^UmMfbOEMbEz+-Q@i5BJr0BJ=#&Q! zavxhIb=HKuA&J(_@ R1Tme=;znKeU2+Ja`TAjirIQ|#(C?9kCu< g ms E?L}#A*kKziKY%L`TiI=3q7GJh}?Isb}WNaASn4-+xdbM?~Z7k%kZSH~+ zAvGJ@li!wdS$aQ6{Tfof)&a}_e1U&|@SZ6S@7%}6SYTbnH>%1lsP06b16gt0W91hc zgyECH*Pq<>4xtjHw2^!jMfSo3TsKXyG}wr@8TLQgj}=hR(Y13?^)KbNH$0Gw8y;O9 ztiu2HEf#TP2x{IePOtg+?zCB3hd-bSO{lR$oCwQ>C0Vr5*@|Ql{t-F&Ti{9S&DDa} zCxBnm)^8E6P1hPf<+Wc^EFeTqeE(`p<>CQO?m9ca+_IEdF_T=`C^kkdM520)xmPwH z`U%M4&UVLoM&yoqy>j4#^^gf`D*pZ4|2*EnVo)!$I-mUP8>o(bKVJ*}@csLqBI~H3 z`k?EnpylF|!M2#Do16H?A!Xcu7wEswytKdxySuw?yx5gY9#Mv4{1p2^6=<$UZpm6o zk;f?{+tXh6-yPw{{O|7Y&$H|s;SIf&x+l01JRxCu;)RZSIs1c?*Y8>VzrI%p!jjS* zRHt0`nWq}HsS&eykF+f%2S7u30W(HA8Ieb5WD!naQC+OqpUze=fb#pG&sXU$yhM77 zf+YnM&Qe9Y6vf5O6jc`QbvE2YZz+Sj;1VoquO4Kc-isgV ybW#8|=}#5* z`bJPSehXgI52F7Gj+B#7Yi#+OIGZ?9l^NAyPpCP(>^F+%RxITFpI*ro{P!n(kHNmu z4;=ZvKGJgaDea^9s81LKaL5K~^P0i)PfV8k$DOm%8drIRzj%Vu%&6Yq$@|ZvJfAlK z3$>4n04U`Kk?>#wK&z1_15Y{IFTX!0PghR& =B~1oqg7k+jKm{ZQP>q=q(n7z;0(7{dOJ@V{4xcVFiov7EuOrVIPI^)s6E$NAPu zpz7-5G%&EFDkdZ(z-ck*7rZexdFVgPZDp{h +*n2MP zRTSM$wJZMn)q*oCb}9(hA$CWLz}bpJmubw%Caa7$4avaru6o0Ag^F1F^;ei0DRNPL z=5Uj9sQ7UOzDMo=ZiTjZdLCMDN}Ya#@ap@94-EmU+ue@Lq{TtWwkHBC<64xt_6UF= zwy|HL^Ug1NXD>+E*uGv`E_&h$wpPscws_)B`FeTHT^{QKoZ`hA73+^mH~@)^5HOsA zvt7c~(Q--uHkriN{y1b@^TMUmwi{fJSy^%atuU4Lk^0M}_Ff@+o|L{IuluO1>_@?8 z_n4g>AGq1K_w?Wx^W%`ddJ}(Q1`hLYO-yoJS^v4z*e7OSY=nj4iMr#0|384Ajr`={ zJGzxik@A#={rXjg)wEuRp@&j;Kl5+D9!8kX%p}q)Z jGfYADEp#b&lJ$> zU)?~WSwK}yjOsp+;Hh}}XE5dOfJ!;l+8U!}M`f{opSmxMg6Xy&u%KnCcKt2R31s hum%OeNf;Dy<${QIQ uT5@W=9wK2G+7MrTq$v zx9cR^%x(wsBD>wLOO-QvClvJ>`?48b1+PWmC{~XCd)=Pof{B4yPI7()O4*k#PX&7U zkmT5;+&{-%H@M82!D!nvDOVQJsRL|fXy&s0Hb@C}T-4nr(qWz98&lTrbQ aT65jiv904Ah=JFvD2ahF!R3`p>x!RfUig7;6+K71$~Q0}_X z*QIf3vTZl5mHhu8@@^)ZFEd*kJE#2=Fa_-Y%s386?|`0ivC~anTO-fkX#o`@y4smV zMGrs%-=Z&A{VdIn9lNW{WV%yv!OD}j%%w#Fs2ScjOyI%W-L*P4ST?KW+PaB8_M106 zp62xAMb@LP*PpGMsxkYGxPLAwWz$<`sxkW)-4sQD!zUIDIqolKnB@Qa_cN&^0ep8f zTF?@mFWB}|=;m37{pHu24$Cp{MOj567H;=fKy)iCv3|-Y*kRx_gRGF1L%UhFpUdF& z1P>1huY;wWpMU<~_{%M`QuyJ<7^=ohLE#6EmcQRHjhVM1VFNXB1tGA^B{Kf=RY$}D zS#9}pPKvtT?M=F`LYm#_b-t~Cf+?Q)$q9yXg%x86C11!9R1IRJk-(R(Gm s z+Z)Y>&m$JPaDm vQ2w)k)!iX&{hHdtkJ@&3{wxtTYm$F8tuIg^CD z$bG;SB*MibL9x#{7{_+;!NG(C4;Y}iMp#54q&|EQ{q*TmgoWClE%_fgpg*g8S2~`q z8Ajn878mEsk}w%Dc_XhR{n_&;08(r|&sT+sm~4EUe-67QDdpGJaPtoIT8Gw7rty&S zS)VW}s#1^>Mjy*1DUvubi~n4jV0yM#?@n5}EmQS$+I#$its%0ZOn1+^N6rKF8oL71 zX1*}HEhj_@v}-hfd>dlCIM?85H=R3{$4tbsK3a|y%fSbs2^jHLPG3Fj_-Hwt7djH^ za8_jo>M#$-UKNaUf(2@JQ)UW=Dz029m>u5@^cyw+P;HJaBp3j-kh(vtj5H^@e}p~2 zc*|oId5 ;}dUjJL**g(vkcP!n;R2kq>GY7S`11$@xJ4-+ zRmFf(5pfSO86r&ttArCO-^12X4heIi0Kp9um?uV!SnJMmW}(QQb~-yWkd!KBo~#8$ z*g5yhBlqL8KvsZT%9NRpbe3K$w)4hAhDk$697uUTz1Z7N2t=AKwz`6`!2)hOxweSE z`a7YqhlR3#=I7N#=RBR@885Y`noNUbZ6_;`-2ABJ%0YpYM*mVw*S7Q%qVNeAcY3ZY zCl?O0Re22JSxNrX+m=o-aCNP5A2W1O+x(pB!}QEJfkdvMt}*C9h?Io1bYn1=x|$98 zYLg|_a--OTiHewf1CE_TpAmol=S)8Dz#swFh0etH(vq$VrwXVCX+8lPLj{{Le O3ev@2{Cd 5^~ zj2Hj@J=c+$NN*jq%}e^q$WOViWQLo{Q^*;$S-t^`#;nF$XUZiFOY7f7S7=`caEGVU z;X$7nwLEHRc{wo>L3A}!d8S1bQP=*t5^xAG1Kb&r!tI1cN~VB-fD%H_Bcvc`OAH~J zhMSC-kaIh{$V2Q!gvS`Gg%k%X;}=@?FZZYw8CtyaKjDf&Pw@7%*y&-_t9cC%kHU1r zSbhARjyAu7Gr5k+>7H(APaOOjzT2)T=obe-C?(*s0IB-7W@b#PX=&r=@epYD>V8 b`J2<$^U1<_p3*Zl|3+0#p#?vvXXBlZdgR z&r2o;K>iIB@mo_`B>R(H`LIE)cKl3zWiY)fz#Jev bq++b-Cvv$zS}yWJhVt&O6ydPB=SFbzayF>x{!!8y<42ezVS;8C!( z(g>gdjdfRQd3*k|ou;ea_F}V`{ZasSBiO7KM6Sv^m7tv1rK~E_s1NpnqjD6GPfFH; zFTkmQ4bLM``zkK%3l+Q|flkKHz{kMeOB|(P_lVN*clbJGfOy1zA<8r#-7o2)pQ)>D zObp?;cYKVMy$w%;Vqodxfb&Jz`^c8_v-SQ?OO)2UR$+ZeB(v&VWYV;s%53kwE>20r z(N@I;`S;oQ0Q*c=?OeKYi`o0AsdKgN1dx1nDb2NqH~9raO`?#~xz7g&c^6Vc1%;%0 z<;cdX7Ecia$-?L_2q_7Z5FqkMW&vl%3509uG7{}J9{SBUSuTYZ7CoV{FdZ#mwBvjE za!`@6dO1@`XSKhfCGigIZOu_^uI16h)2pmlZ$70Zn#UBD@EkPs0LByPO6a3tFRvY+ zG62R`v+1>te=&LY?lw@HhfFuok0jX7_&;JdxK*p&Id}8s1As!2``}V(+QePYV$rBR z*2v@wC5!$Etik3%#f*s!2?{)>0%E-|Vg^PmR Lf|Kae*qcco{gsD(Vt0Y19wqlsoP5uT=^2-&$ zOMg()81Z*y4Ma~KX0mwQJJy^FEQ|nTR9%2o+U=cBRAx-T-QljYwHK!wS7_OBf+1My zN2Whf*C_84EXEkdb9O_{1>UB+`czK2(jfc3=QNKs1J{bL&d9p4v)++p)z%01&uSNc zpT{(g9bgcvYYQSopK}J~{m6a6>HBHBM0+nt(TY$SEn+42}*;3vP;I^Pu_7O&zEk z?q0#K$_1}cXar})Zl;*Kmae0s!rpRS!G2r3lCIlWC<_HZU}}H40$>(FANDUQ`(S7H z4aqZ;@38^*DyHSP^+iS2bAZk&H5V5#@I<`6($Uw4yI$XE2N39qz>X^=djGj=teY>5 zeqn{pS0A_A9wKMqt4E+*w#iA-Tn&);#*$#|%47!3pQsrmmD_QHrV(xhXv11a_N6Q# zwsjRIomvLjK%jZ4#BElC{ghMYiuhBPX~0z}w%t3a0>Z;vs3=XRY#d`bKma3R)g(W1 z%`zn+)&7}V_T^?Mo2O`m_Y-pq!18E|(sJ_$r)$M7^w*6LzU?=kKYuPpyI3d@`BZ_- zk^BYsN4Y!+Yfwlfo?hPYZi`>J+4M?A@Z2UQIcj}4PlX*l^DE2`uGfqr;d mmf|G-(;6yf#@lx1|6dglo#uGv99)Kr%|Gq8k#Dl1<=gXd9(-o(P5~DDIDH zMlWNSDdsL>D4{&4bGI-SkSVErmp~d4s7xQHps#dw$FY*IEqB~BxeKvp^mGqz-wsqR z_e5`MM1(HhL$&B>cCWNJYyMioI7~}R(+#zbGmrKnwt2*~a0b4&mVamP3~{~Ve8T+K zKEX@!t;upmPAXQfm8B(bDAm+TA&a`K9qQ`}=S|XdjQ0*^JXE398sn&vN_6|WGANES zA1OmH5|1@yV+d1@6Whk(E8@(n?}3!P1sI*0l2v|6hs92w2J}4?G(4tkMG?*J+XJ2# zIQTMy1Dg+^4gDAo1y(2%h315r>kd@&$0T<1yY~+g`(&~EFzmH*utIx)KdgD5yYzf3 z>I^Ug>IQQ>c1iY>FR#p5lZt1O=<}#K413ARHeKhw-U(n(fwWYLnB-Ppe*f}sDeLM% z;hrMnWQ{#5pz(cT6fFAi=|k%S9M%_mHx95^Yh@M6eIx7~guW3&s&Ho_$QjnJL}6cK zca~l*a@AF&qhJd33>r>RDdQi4NImxM+)AZ&WNXff!tkeg0`n{MXO{B}{^A$#YE4uw z&0juU97z!&2ya8h#3v-Ez`D1)8&TF8)?3@%G1iIJKwD*CrOlP`@uJ0Gt`aNiBan#| zf_(c8ppp+9iJQ@{!PZ=sJDL`0fJtObHUL`-{mPJQgvXs<3`M|tJ`gcJc%W`*x7k#+ z3Sbl)eB?kcUmfubK=lbA<|T16p_taqr6%ECNvS-pn)>!(j4tp4P1EtB 60Wozu=?2VWCogyYfv^*mL zvPo7>NKtg&kh6Sf%S#7_3-!JbYt4Cf3@?Jm^~ n?+}N- zc;hqs%)@K{{ygq787qL&Nc^yb5WTX> xz*yS zOPqkz0%C-2eCc_$XBWovddUceCE67(^Qmavgj4>=k#{Kr&E+{sMtPHB5VgVC(`-16 z1F+sapDqbsy_oxK5}dwrdT8hi`b4Xez##bpx{?!}5uWA}t$1Of>ZWmgHT@eR`n)vs zL9~{1-)