Commit 76a77b6e authored by 赵瑞's avatar 赵瑞

增加全景资源

parent f9c7a375
Pipeline #65266 passed with stages
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
<krpano>
<!--
doubleclick_style.xml
krpano 1.20
A helper style for single/double click detection for layer and hotspot elements.
Example:
<layer ...
style="doubleclick"
onsingleclick="trace('-single click-');"
ondoubleclick="trace('-double click-');"
/>
-->
<style name="doubleclick"
downx="0"
downy="0"
clicks="0"
onsingleclick=""
ondoubleclick=""
onclick="doubleclick_style_onclick();"
/>
<action name="doubleclick_style_onclick">
inc(clicks);
if(clicks == 2,
set(clicks,0);
stopdelayedcall(doubleclickdetector);
if((((mouse.x-downx)^2 + (mouse.y-downy)^2)^0.5) LT (device.touch ? 10 : 2),
ondoubleclick();
,
onsingleclick();
onsingleclick();
);
,
copy(downx, mouse.x);
copy(downy, mouse.y);
delayedcall(doubleclickdetector, 0.3,
set(clicks,0);
onsingleclick();
);
);
</action>
</krpano>
function krpanoplugin() {
var local = this;
var krpano = null;
var plugin = null;
local.registerplugin = function (krpanointerface, pluginpath, pluginobject) {
krpano = krpanointerface;
plugin = pluginobject;
plugin.dosomething = action_dosomething;
plugin.registercontentsize(200, 200);
var text = document.createElement('div');
text.style.cssText =
'width:100%;height:100%;' +
'display:flex;color:white;background:red;' +
'align-items:center;justify-content:center;text-align:center;';
text.innerHTML = 'HTML5<br>TEST PLUGIN<br>click me';
plugin.sprite.appendChild(text);
};
local.unloadplugin = function () {
plugin = null;
krpano = null;
};
local.onresize = function (width, height) {
return false;
};
function action_dosomething() {
plugin.accuracy = 1;
// krpano.call("tween(width|height, 500|100)", plugin);
// krpano.call("lookto(0,0,150); wait(1.0); lookto(90,0,90);");
// krpano.call("tween(width|height, 200|200)", plugin);
}
}
<krpano>
<!--
fps (frames per second) xml plugin
- this plugin shows the current average rendering frame-rate
-->
<action name="fps_install" autorun="preinit" scope="local">
delayedcall(0.5,
addlayer(fps_display);
set(layer[fps_display],
type=text,
keep=true,
align='lefttop',
css=calc('font-size:'+(device.mobile AND stagescale LT 1.0 ? 24 : 12)+'px; color:#FFFFFF;'),
txtshadow='0 0 1 0x000000 1.0',
bg=false,
parent=STAGE,
vr=true,
enabled=false
);
setinterval(fps_plugin, 0.5,
calc(layer[fps_display].html, 'FPS: ' + ((display.currentfps+0.5) BOR 0));
);
);
</action>
</krpano>
This diff is collapsed.
This diff is collapsed.
/*
krpano 1.20.11 Post-Processing Plugin: Blur (build 2022-01-13)
https://krpano.com/plugins/postprocessing/#blur
*/
"[[KENCPUPR%*eu&]>Sbb(*7sM;*]vnVJ0Be#EB`iFQ@`G:l*Suru%-t3IT=J-0+)[E;0w<uABlWY=nZngki1E-l33az=O9pQ`TOQw)E9Eh@j%zcFRgCF<el=r:&u&6lQtzr,bl*p<Z`3eQiC<O2SdId*2K8UBoVdj3PKkCJo%ChsM%F`?$(>wtK.w=?cVVK]*l/H5+DX&<5(Fs6v7.D=)JMb*]QAb0VmeCrB:*d*-X8W4Tewp+9DelAgfAt<)F6XzMnJU]&-F9FU8eS^oU7R%fMaEJo2>KKkj%l#U([9:%njo;8HWT#mo;jWFZ+u>d>w_'mspn]qaquD:Mm[EX7;oCTh?PBr.npD94wz^zEUA==-hbYB,_g+`&0/XzdQYCsiwn-L8D.>k:vQ9Etn7`Q]8C:vVp6tlJY^kScSv/F,dQ,N:#<14URl?DIa)gr]'SY`,l:@%*%GcWnBB+2B6O,mZ)+9p6gQa/++LC%g7>,7ZiV*MK_^k4WD%<9t/`=TheFVL/m?C;MSR>8mh+0@o[hKZ#TtH@M5L5Sz_@%p0X4kik%z7se'q]KU1m@szr=AU/nRAeZeeIfJ:S:M;^T.%,/=W*<Gq`Hlw>.Asec80<n/A@anq.LL'+zAtK<ms&P9/H;tcYqod?(Q+$?Fkm?fHA8VD;K(.g.n)$L;&)'.<v4')Xr'AB<(W,1#m3-;[[puC?TbEFFh-4i8SY02G$uJP@5+7kOP:JM8$sZzQdKYs>ihasC3U?[0f;Jw6Vv(lKc.At+>9gL@5KJB;Wi;,TTV&=^%I)(4oMp<95r45;Enf38]hZT]Iwa7]+T`RD7sN[z(>YY#`0LRC^-9Y;rI[d#M,?R(Lv;DBSBbS4Nc=8S+C8>DjE&_6`]WXrfQ2YI*TAU?ncQBkKek]Ghrcl0qG@&W*C/1J.=>0LB-g),Mqa#Y(HPOE*NWjJ`GmS)b#AfbT2A992q^)JdHdL]+49dXtwrjDMS=)9S*92:$*M:8zhZKz92.G^_B&6GHwYB_<>7A2k`NP.G?=a,v];hA_kX7.A&vN-Z+0C%tO,En^etz<(51a7B5w=V(LP=KvYUT+Y4sYG-f0C2[9LJ5([5wm-Dse,t,`lk2oJ>7hkS1mqcQi'A(gg0RlqB6:&a/9M[8V(rPGk2PVvBD5%82^zE#75`>;b,O8w>KKUil)Deb&b*mR9[Pu>#3+_SPMXMjP;71CHF]5'R(orz+>+f[`:%Hr3%dOMV%WmlIog(WI%83U]@NcZ:_lUN`0.Vi+%:BbhJ-*^=44'L76guR2r2_dE8o/;Bm`V&f?7:;crPT&NH/YM,.Jp%/Ct'zb8*)Be%<@2:/oR`wXVV+-:JZ)aIMlmp'gUSTDJv+5B*#n^arqr;pvGwLDfz,&zeG#0A+Xe]GVqI'@olI,+wc_80i5Zp8'u`#)03?.HkB[h9z[U1il/6DL*nR3HT8H8C`h.SC<sD]Fwr_p3:c@Y_XtPl@lazr00%O*8MIZ+Q^aT.CJ3,.H/G=>$UckvGX7]o27DW`2NbrUSMBw(R$4q(Dt[s`<P$gkKR=Op90vZ<MDlEU9BX[B,$o-z8#h$?'vuBg<_XPVK8oA'3R^G29&IYl?)3hK4B2%HY<8^M>p?^qI$:$n7wQ'71=-Sc()D)NZ^f3UJ5B]RDz$;5WCU,o@_-)VlCUER#0r?.rlu](5u_qC<Ra.i5>&JM?BSbS#F;>:CL%+_Pf5D&)PuV%C;)@3$k%*+Fc+_4IM&BuLkhJasFF[JC<$L;sIOdkGcYi:;u*p&&;+S^&fSrmJYzWLD8+^J9p+CHm)c^:'Xvq_0)$[aZE9VO53I@>6MNKnG;gRS4k.cQYQ8t?]rr6c7Vit+rV-N;9tTr4W*7rW2l7[@;XNp,?Q^IZ9%:$uK'4]E1NY^b]KJQ2ma:G62JLa%&8'?^H)z^q3B_Q/Z%cn7[$12v7doA9tsA<r9OpF:;bU5$9MaaW@cv[V>S<Gk_NgVK=lr@m_ds.S9]fja-#St:N5rkF?QLDH;ce%K%e8h@6I6v+;FT'5TavP:F=5q(KqM34$mwt^R'DnW7S^0F015PqeZ@F*&?izVAZSd<1_c^:azJ^LSSb'<K=>DaJbo%,<z>4I@?1).SpF)MR.ph7?[cwRkAI&E^WB]/<=(P.KW].[$a4#&//n#@Bbj`?4z6l`Uo+R^<.,)L6;8`:Qr-aDD<8vE#NZR2CSQ>6<rn(6<&p'bOiEI'EJ01#Q5:sO18nq:S8Z(SAjd%c2.&-a>=,Tb-P=,DA93,B24u*ZcOfbWpz3)vC9zz3:NuRPGF[ug&#Q[$L`lEsU/BXd7s3*JUvOn?5MH1k0Q[K>7HY.$=XQ(j9>KP7;B1%d'9'-*pT@lo&k?UF@&,?r[<A$E?*PEn5b^X7?t_eFJB,5W3$2uhlID$:8OLqrrv.I-8:;RzQ5dfr?,dH7,j[aO<_$u+?iLz>$^$wYI>t/LYs^`UW/=tg9QmK7;i;lY<El.%I36ScziJg:^]g&90O)<sqv$6bAid(RB)Ik3=Kl-Z-Bt)2E8;,6)J>sp47N<%>tU[;,fm*'<F.*Yp>/MICu(YS>8ri4G/H9>3/UJw6IGo;TScZU?&:FuV#]J9'aZ;Prh9A>5rjPg5S[bp@nYbaoh_jH>mSp..(um)q)bHEmw^G`6<^2K,29,3/$rWhWQ21qVL'up^*MX8Ga3Amk(fYE*e?o<0bYN:&oDI1@WfvFBiU;VBec`S44k1uqz9bT*^1g4Xb33tV_QGt6OWXt)C(rBDJ#U`3a5Ib.bJ,ZntDT.81ZT_YeKI8j]ffzk[w;L0Je0_EsTfu@?_M+JaZ6'S<VDo:=V%u[jdvFM+<r^>$):K0Q'90=4--EI>G#7kmWiKup(3f-7w)wU-ogS4[F)C-B[W)(kR,W38#cB9^6Zu-b6/k'N_c/sh6H@#c;HV?eRt2Nfh5%?:(Fk'dFM52pWY0>lHAf@#(7s_(uPE+9JF(r#GJ5CBT7[]Nle7@_RDuDvBGZ=w.5q?aLzG+O<%J3Zm8J[5zo&N2<AW(DhY+C^hg_Ct=n9m'GZ>LZcCrYSF)*:f6UjmT8T78E@7,@dX(JK+4%44RAL8>`vJ<Dv6=P3hWbB_Ac3;=LIcn=)*/v]]";
/*
krpano 1.20.11 Post-Processing Plugin: Light (build 2022-01-13)
https://krpano.com/plugins/postprocessing/#light
*/
"[[KENCPUPR%*rc2Q_k5w(:;$gqFTLGbwkl@UT:u/1jSCw(4c=eF9#s>q6E1g%9<8mjP+j%arbs/ItZhjFow*;7)ZAekFFhzrOsc>e1L9Y'@W&zzC%%(MkQ?g@Cu]C=;:bhi=ZWuZs@R2(L9T#T+b:A0lv3d-<BZs0;bE7t`FV21.m,G8Dt=,;6tX-F<'d9a1M8/429Xj&;cYv*7aqSj7nQKahi#]o#C:v6rG5Xq)l?h$NA=p[@:5BLqJ**3p,<JM2@2^Dq9<kD/-gMXk&p(O3VhNW'1O+zG+ISE.#t>Q;cz60l^;dO6QfPL%5d>C&uviEk'B/'=3.3W=&U%nmHq+(evjK$.R[C;[Ph#>GddM:HOrtkBvtAY*9zw]JHXW#H#;[G(I_I$e?kvCLC5-b^6ot;<)QgP`g'^M<^bP4:J*^F%f;T5CdJY0]AWh>F;O3cY$GEsJ:*+IWYW.3Hls@/:Rf<gGw^pC#NIu6+nN@unotDh+A0Yi'sokFCp4e%s05ho.LaG(+l:AW_5YpS*<J;Z,UM_Qt0^GIE)B?S%v:'CF)kSg$<rI9B1#l/E4.``F&,wQ==OZ45qCm<ZZY:2CPvs^^I]+:9CL=Q:(QBw&'TnJVERZNI:D=VJ^f`.sOH&5BHr)nY=cJX.0RX=(-?F^5*D8'4Uz//0PVJ^pq#abISlN'@=3_W=N+?+rgrkT._l3((ZK[r[wP*c*,cC,$fJ+UWq&GJ)@X<2Cs)V;K'A.q9?mKtKjSr?E*=65$eR:d#&BZICRTA(m@qaV;#$JN[9WKl%jvX6<dpYP=Rd(b`,5Qco=#om6(pfkzQ8#S00)FMYO#K146/b,>B8h*B4jFC'FdM:E-9'kbo,LS+zmUo)g#>]:%1_S]=ijtIp:hc:EX^l]aTB+7[H2o0w;QdX-n0-1[h`.A*6uKEKU681d2Jm>Jf.'A(':&@5pi0;(loz1-Y^fT4W+F95wM]NN@GK'l2S>AF[-])87e(RG-_#kDGz;DOKUAzl@#$E1aU,_[ZMCF+9LL6+GQbFF8W3,.e%/B6CA_a/z$o6///^>n5Ak-&j5inLGzoB:cB<<c-U^ncGhg,'bteE7=6IZ7_bk8BTCJ(QR3uCf4>0'Q+gSFJ2'1D_35f9sj)=0GhTN6`jMwoSC,@*D>,w]LYf:*h0h4z/7FT(Hm8DmMvQ)tv=B7I<[gQT>wt%:mabfjQ''pKf(=[IA43R8AgjJ=A(X16k78qL91Ih:tFXaC81Q++tATIN9'E#3X&Y/CssWHm'^NIIC#g_A(RL=m]tTf8uX*&#IVBh?@;g:+%BZu[YfC:/fUC=<(c<.#qT*0F8ctmO8'#U9j5VpVKe_>K_^hI<8tUo7&6$Nl-9?kqSRkq@A`/u`^6)H;>k;Czum8P8hbXV;Zz<b:Hl-a(2iLh0&aApN032g7mVF/A@/zrklmgfpX0Ps>Ho7Bp+euuQQXS@)+)[sEVz37s]o=p-aA@_3wOL-6kgQ$k/6UIl;m+n/,-71*ca>1'LgVbK;N/l_CDr7;+pjP`r6_4;V5o.>*A41&kRl/X6@SO_@[d%CYFC@[lfUDB^okZpd':sEvti)JRF0YDh>Uh0TOoLB4-/4k*CXA6%//18q[&7*1zS%X0J`pI84hw;'u$5SaM.RdR[hqENS1=,W8*t3*]ZN1%@PHEuNX&,VmWT:C$_TIC>;#%`3mF;Bvz29]d/(^;,ZY;CAJh^Q]+=<OFPh;?B@*%$btYXSOTcYU1vrE?Pm&Z:uA*0G-)%UXl>$.*v;K:'JOHAV.iD;Gh-[`I+TgNOvCC=&@V-=XhiW#gU)zoYtnb3D,vqTb0^ZqTJAK=Kb7I?U5+tsc0--zi&)m->:<SCl=FL:Nb]h1w+nwHREXE::,&67djpK0XKKskiRnG,Og^NgvGB+(]4iu>w(4(Ga1,ImE$4rkcr$H?VnMPsbC(Y0SqKrQa,sSGmkIXD=`Z<.ZP1]7=R_:C2%.+4<S$T@KVQ@'4Cmc_6gY?zAVoz6?oe$-Z&19zhwd3$Ur7<7L$uZs6H.OCu4=q2LRAv,F$h;?_B&3R6Q(U2O$cv7Z-3k@I_Aq.?kmC^u0w&?l7-UN%KzW<QjK]<X48_'1cn=Xm/mMpHf.fDH0B%Y;DF`0Q>_SfKmiW#e?[:6GE3-#L1W=9?-T+IEAcn[-QmKEKP;2=l<Kt<o28Uz%VoQF9:W?2L.#jY=b3lKu9GS0i@;jiADP;K^aw1,14ZZD^0XT3'jAb=]eGz@7KZF1i(z77_s@N@(AlNct#8I?.d%[ct^I5D$93T)NTAJ=bTVebb&5bhSchC-[4dJk4l)8?UVqUm=wtr#o+^k6<W.@Fo5kn@=C&q.0URtnN&`^6bkPRGP@):]Y_L9nt-w*5iT335`JtcbG<<q5(Xmj?>5+P`946pL':*QK3GO>Aqvb0t)CpTKAcVq]'1lh9rmEj)B?OJKF-JUZ&fdU?J?=s[aXI)>nrF&(lqZq%oit8YiOP,k4%vd3^CuSS#Yt/DP^rI_Zs8HJZFXs8w'Oi81c[7:=L6]JP`bThhd@6-kwe.8YEUfHY[T*sUZhXE(tzas_-oplh3d-@T6G=%w(a7zI2mE74EwZD9?.nD3;Uq7=OgT5bEwr^;#i?$T-/QO8CImBgt_.lv].=CVdsN[hh6#.$f=5&tl1Y?(j]0`XbVdkXUB;EWwR9O-32m+;::a[Tg)sDN^Wl'4j+m:?ra6,V.vW.K$n_QU-RMS1-a+%_#)X=`q@uz<h984Vj<hElOTAZs]n_7FR1+(ahr:T'#$j4[2Pc<&Z,^2gVpw(#s*r-M`rNF4ieF7pGH(83VQ7:vC`4Oh(Yw9_)qNNqIW?,^DeKJ^3DL?i-D,^@EIkM&Kz>5jJhtsX/f].dS6dqzX4F5.F$U:g5[+-&k`AHehA>JADI4M8nC-?,Yj1B[o;_E-8BdN?_uMA,9PuDZOsCkB89p$u:2ECVgn%U@`qSKf-b:FqWA'?=8eo6u=RMK&lU_$C_[($J,:]2nU9z;ZH^PTCb-ZGV.+$Ti)*qDZ.j%F.f8*Zk$C3m4/Qem#&&PjvHlrnVG6v4qBV]QPQ^?6BN&M##Q2^5n>p9-n='Z:pt>5Y9IrRIA@.%B;I;39+@Ac_Js1e>H+MN8(TM*ze/fR+4-$<:JFSNtYI@>Ze2L=0iXOuI8Z*91uNF8cik)n9G[3?*cjY^AevYV/C0,QX',;)$&/'>b58n]oSmT)o]-vAEz5i1t9AW?qGtcg0aKl/XMu.lJTF+QWFbH%=CP1I@M[H.8_pj+47CWmIEH.3`qo='CFr?/@$3_^728gWM(2F^Esmti>wRm%otaH1pm0D?3?sh(Xo(-1:I-%5<GK%aBp(e]:7V^M5<(wbawY*2rA)#Z:e]mg4u_pT[1&hX<A06SNo`^1,ZcqB#0=X>&5RlEWI%rvz(Vo*?cMQSqg^HRCNJb7p>AUYFs?%.KI9'KFoMV8@3aVg2)K?eq^U;QJzs228oJ&^)C?=TO3u*MzG4OFEbW4docE[.ALna`:qw4bt[@%A'rj^G6>z^dJM=^p1SMDk<<HN^>Q(g2?i#2<2^Y;H1:+dfrlntE*^6)RY&JX4=b+GW*4uwI:.'9Bs.k6rmUr1p@H%3znM_7`7'qQqr3)NR1gE:RGL<On9*BKo&>pssHlc/nsdQjB1B`F+D+Bi#KP5A*[GWU6r6;CP&ORNqU%gd=7,12i=_beI,gP0VTSG(RIemrA35197@CPe(00%lZT&@Qh%+=2984TZR6hpNgu3'4OeEuzwQE(6fJ/3sG8<()'=F(/ntjCWNPDDA$?c2i@VMSSa5>Zq5sT,iv:db0*Jt4-%74K1(&Nv;eD(W;SOF1u5?o,iH'ZXW2']lJ[ocw-'#GkS<:4oblQn+t2+l/$_#P1gvm`fz32,e&IJa1psG[19w7B8O<&&2Ao<O81L*nn75P_n.S:o0H1XYv:hIPHEtN-1#/IB6^+F<ak$6.e[IS%IX6R$tYF?jMNHTAKn&@:j,+RmBT#8VQ3l>DgT4K?R[>AC`Rw]]";
/*
krpano 1.20.11 Post-Processing Plugin: Sharpen (build 2022-01-13)
https://krpano.com/plugins/postprocessing/#sharpen
*/
"[[KENCPUPR%*79#0K-45.%m,$#a&'eNn6qDMpARAqTk_$slnEIW3Vco>r?&BLheJlJ<6sR5HtC3,cN9RKTRnL]oaVrA)e^CuQ8e='1:rIm>/oK6WAvX9@KC`3'dbQJ8e4a<(%ZG*>L:,c7Y#D7k_5vW=G>Nur9S:qYdVHmAr7=A^<V1g4p,2:+T+(3<Ae2hn%o;)RJm=83$98h$hZAFkl]vPnjaT=.VK0j(3i2Q-agIYkrF6-=GW&v8>-i4I6*ZN==IaXAcA;[?OQF7KZTTt+=I?0Bu?4qHw12C4ZsRlX/M5P+7_`_:LeVw%Q^i[=e[:LGvttIC.nhzVmN0i>EU)5Wv6'g^*uh4,[W@zz;H[;A9eup?An^4@cGX^]1O4/tf_/GA9_5a(jbV[;sm6OONtn^0$n_Gm:5E*2sL]SmSzP@-a2wY>qt=o+sJ.E;Z^JoE*AHg0j.#DFuKfCKolvc@RICo[]qb4*bUt4r6bSj&(+qu&CV9d(-EZN'z5I1C$COIE/n-eW8jEh+:EEs_D>USVndKXU1dlVm3`Wb0K*U?KPkY[<2'1OP)*i6_oTM6>Evm--cz`=m<czO[tCtd,9VV[^Q><oD5N`rY(YjkBT9ptH5gL-C6gn[@-erd8GLw(:H@OmIf1&^';if_s%bb81lC]m(<r(DJhJ_i%vh=w?;q,+98jBp*gr60#Sv@)J%b[Iul<(69;ru-Z%T2Pt6b])#*AAToE$7p0s%Nt#[m%1b57^HXZ$JI5hA$-)15'?URjflY*b%arHXld5/94Kp@sq.C?l^NYU,YPDEroE?GdTSH@mE.&`Y$U%=6`,(lFjc/-3lwA>)H@A8wVD-),N3?e%M:m_viN@h`)v'N0n'AEVE7(_K?E*nN2J3SZ4$PE1GbE%EIz_E*HgNbCoQIJ%I5NT&kWH?=D,?*b&f7,]V&XK`]hPSK>.).wY0BZu8:J(Y?tG=qG;4D8@eMRM1A;[NJgTh?sj'8rR]>Sw]lHG:v0Vr#.8<95a%BBI:19Q?;WGbhT]#p1%WBXc)j:W;vssq3<1GBoI2'AMu1,IqNO6j]T(:wj)0^m0MHWZ3U$TMdi5KN1bFmm+n)5*VAY]q0v^?s7*dAJoPY0qGmhWoN4]pV%N8?[,OtCm-TjNbU3)^lv;kH+guaR/:H$F-NqQSG>_m8=,$q@>ZnKHLG<ZJ.-]q'X*=vctv_cEbb*,2<SC7Jo,'g8WHOC+gMPbZ+)4w2PP-CJR;uw2/za(CXf$g6:-Y)=n'^jQqF5e?iDZT^l'cLmv'gC;r#5>k].cg=*/J08*.Rw&L66IY5;$Y_^>T[>l`SN)fb2(+c'Ktoj:t51B?^%SXnZH4Z+QwS5N-2>z),j(z0^H?M*vl]-3Q6&^EoG;3@ncF8Hf%jr'=P#sUD:-6Zi-8P)(eYq3S'8sV;Y,BIeS6rtp6%]G,dIA`TT1-VqhnQ@#_%i3YHZ*Un&s+SMM@c@zZYDZ.V6SA;Q&Aw#6,+M*[XZ6JFmIb&[:F9)8#Xb'wY#(+Dl)8v:(GrF4lTbw428HvjrwsorJ16nmKL=gE8:1zk#MnGF7POW6G8`Ap%T#&A?[^U:A2*]4Gp#kc>JBNN]Y((:%4HY+>uK-.@UimG8wtJpBqVqczKdnF1v2r]Dbec`XdA#ZQ5$tR29u*gn2XZtIXpw>9:nr*FUAG[Pjw^K_;</C2H9PH@_:_(`Ji17eJ_[eHP,9cYYkCBA80F/P_sWYQvHzH<X%]=Cbb4D<fcc493IohB`;989()YY1,rCzAo=uDFt#od/G5bARQt2)'+rXCK)0#?$mPIn>jrma8%2qp(`eMXPZWb#2)T-LfTtF5atnE?l%dtqt<_-J17Jn9CU*QrJumr5q=dbYn?5TR:#sY6;P/iBmkCSXkdn_L.(egVrOj-:=YNOO@*Yl1.SPX'*K`WR$f+m)1E00:,oP(>:QEVAIY2[^<tBwS1+.WXEsqd+?Oo4(]<5[%1,2g8K:V`A;R^pwAzEC%7X`:b)_Yh)Q0l,wJ5O&.RSY,4^k237(ZSQns4cEI/tMTY'q/O#Ij[sWW[a1Fq>b8rIiF4]:4UO5kthbYJ>c=BHgS2>^4W4q/viCUtko3]G'3K/(e7Hn0R5.6#iMD^+7BL%E=@N@F3Pd:&=NLhD@28&.`Bfc>YpN&sI':c)d?9W;LroZ3GI&%C[t*P=cZa,$mtY<Qq[7#7.a_Tztn3[M><e,0A'T]PVcb8F6kwW,FsGhp[ii,nAc4#LFdpR--Q1VBju:?mY;vzP5;+^>(4TbR%Y:rFzAsPO=k4)7W%s(=uOUhAW?wc=fUhgahSB8?gX`43h1G3d:Xi=%C)qh`P-pV5CJ<'_zt@$N#5+AKSkP6#5%UH7K?mSK',V.E-bl9X*ECF8SZ%-d1GqmqV=f)0zEldOqq^]HDm(uK#/uw&mopMnv&qmQf9t.2poYLDoK4uKg8s#PgdIFGLwL@VYs439?`H&pnLHcE.Ua3,n*WWD=GK,Arrk4DvJjb@ThY?AZ-=,0D8]8,-)DdGzNq85n/siO2nS)2mP-<J>)JK8NYCz#=q2?a/q^1//p&Mp8DsVE495Nn_AjQtS7^o?9CYuXreEk@.`BA9L#YhG-*FtOn+*eQ.GrbBD$`h=dk]&^H%S)A1wYNC[2I*]1b=i8GtV$z$EH)*2L.>+GqmzDk`Q,BA<SN;g8dI$VOgZBFvY<%hRj9%0]#vCNQv/9;2t.ODiWO9drYW&3uvK@f0d12IZL&Cz^Zj/Fgce[La<?'&NXAZ@#3Xni,v+PlVwTW5ujpDJ]kbEDn3zFSPBvOCJ+n8966r5UQk(;FNhLZAEW%XULE`BaN)=zrR&?GgcScM50Z*<l^lA;O5uRjw=&UA_fmEY]3(()q?28497&u@6]z7AnP&.@mJf?A-i.?]n&bp)tp8o<BL5@,TH8V=E)qY/QbS(7r.)iof.:U%97_JWtwzlJaj6V'LcNjl54[(3Pr_2,Zv>W#St?7t2&@)sB<fMl,.2T8w']&Lto>]W7pe:-0SUBrQw-9/%MDwkM)<PDkHn40<wH0AK[oB$Ou3-EpV4H)tp1)3Jp*T:%-^T'u2#7:k6t>6hJoZW:RuZ12ThmEIa/q5NqVeCT3-LHEl$8.fw^wP`20:IRN$9Qg0RKO5Z'*@n1@QG-fFd4?EBOD?.7UFV/Ff[-pX^l4Q,[?Shm-D7CiPL`-U.r1QP;HO-nh%m&Ak;2LF,R$)d-12un:'[haH1+@<q0M;lL&PK]j;[^ev<i8&-$=IVL<7O3M:>&[MBfm+)rCE9k5AgAPjb?):=9oXD+o&=H>;i^GCr_5):pP<qDZCnjt&H5I20?.q1<[izPao*P#iq-`FTthJDp<c%m`+A(ko4+^.jrJ>Cn^8,LIT>IXDOG)G3tP[ucu,A]]";
This diff is collapsed.
<krpano>
<!--
showtext() xml plugin
- showtext() and <textstyle> support for HTML5
- extended <textstyle> functionality compared to the build-in showtext() action
- just include this xml file via: <include url="showtext.xml" />
- docu: https://krpano.com/plugins/showtext/
- krpano 1.20
-->
<!-- predefine a DEFAULT textstyle element -->
<textstyle name="DEFAULT" />
<!-- the automatic running (autorun=preinit) install action -->
<action name="showtext_install" autorun="preinit" scope="private:showtext">
<!-- remove the build-in 'showtext' function to use the 'showtext' <action> instead: -->
delete(global.showtext);
<!-- initialize internal variables -->
set(showtext_style, DEFAULT);
set(showtext_prevstyle, null);
set(showtext_text, '');
set(showtext_prevtext, '');
set(showtext_timeout, 0.1);
set(showtext_fadeout, 0.0);
set(showtext_clipping, false);
</action>
<action name="showtext" scope="private:showtext" args="text, style">
if(!style, set(style, DEFAULT));
if(global.textstyle[get(style)],
copy(showtext_style, style);
,
warning("showtext() - there is no textstyle '", style, "' defined!");
global.textstyle.createarrayitem(get(style));
);
copy(showtext_text, text);
if(showtext_text != showtext_prevtext,
copy(showtext_prevtext, showtext_text);
showtext_createnewtext();
,
delayedcall(showtext_timer, get(showtext_timeout), showtext_hide() );
);
</action>
<action name="showtext_createnewtext" scope="private:showtext">
<!-- stop running mouse and alpha update calls -->
stopdelayedcall(showtext_mouseupdates);
stoptween(global.layer[showtext_tf].alpha);
<!-- remove the old textfield when the style has changed -->
if(showtext_style != showtext_prevstyle,
copy(showtext_prevstyle, showtext_style);
removelayer(showtext_tf);
);
<!-- create a new textfield plugin layer -->
addlayer(showtext_tf);
<!-- create 'shortcut' variables (tf,ts) for faster access -->
copy(tf, global.layer[showtext_tf]);
copy(ts, global.textstyle[get(showtext_style)]);
<!-- get the position settings -->
if(ts.origin !== null, copy(ts_origin, ts.origin), set(ts_origin, 'cursor'));
if(ts.edge !== null, copy(ts_edge, ts.edge), set(ts_edge, 'bottom'));
if(ts.xoffset !== null, copy(ts_xoffset, ts.xoffset), set(ts_xoffset, 0));
if(ts.yoffset !== null, copy(ts_yoffset, ts.yoffset), set(ts_yoffset, -3));
<!-- set the position settings -->
if(ts_origin == 'cursor',
set(tf.align, 'lefttop');
showtext_movetomouse();
,
copy(tf.align, ts_origin);
);
copy(tf.edge, ts_edge);
copy(tf.ox, ts_xoffset);
copy(tf.oy, ts_yoffset);
<!-- get the font settings -->
if(ts.font !== null, copy(ts_font, ts.font), set(ts_font, 'Times'));
if(ts.fontsize !== null, copy(ts_fontsize, ts.fontsize), set(ts_fontsize, 12.0));
if(ts.bold !== null, copy(ts_bold, ts.bold), set(ts_bold, true));
if(ts.italic !== null, copy(ts_italic, ts.italic), set(ts_italic, false));
if(ts.textcolor !== null, copy(ts_textcolor, ts.textcolor), set(ts_textcolor, 0x000000));
if(ts.textalign !== null, copy(ts_textalign, ts.textalign), set(ts_textalign, 'left'));
<!-- use the font settings to build the CSS style -->
set(tf_css, '');
tohex(ts_textcolor, '#', 6);
txtadd(tf_css, 'font-family:',get(ts_font),'; font-size:',get(ts_fontsize),'px; color:',get(ts_textcolor),'; ');
if(ts_textalign != 'none', txtadd(tf_css, get(tf_css), 'text-align:',get(ts_textalign),'; '));
if(ts_bold, txtadd(tf_css, 'font-weight:bold; '));
if(ts_italic, txtadd(tf_css, 'font-style:italic; '));
if(ts.css !== null, txtadd(tf_css, get(ts.css)));
copy(tf.css, tf_css);
<!-- size settings -->
if(ts.width !== null AND ts.width !== '', copy(tf.width, ts.width));
if(ts.height !== null AND ts.height !== '', copy(tf.height, ts.height));
if(ts.vcenter !== null AND ts.vcenter !== '', copy(tf.vcenter, ts.vcenter));
if(ts.padding !== null AND ts.padding !== '', copy(tf.padding, ts.padding), set(tf.padding,1));
<!-- background, border, shadow settings -->
if(ts.background !== null, copy(tf.background, ts.background));
if(ts.backgroundcolor !== null, copy(tf.backgroundcolor, ts.backgroundcolor));
if(ts.backgroundalpha !== null, copy(tf.backgroundalpha, ts.backgroundalpha));
if(ts.border !== null, copy(tf.border, ts.border), set(tf.border,true));
if(ts.bordercolor !== null, copy(tf.bordercolor, ts.bordercolor));
if(ts.borderalpha !== null, copy(tf.borderalpha, ts.borderalpha));
if(ts.borderwidth !== null, copy(tf.borderwidth, ts.borderwidth));
if(ts.roundedge !== null, copy(tf.roundedge, ts.roundedge));
if(ts.shadow !== null, copy(tf.shadow, ts.shadow));
if(ts.shadowrange !== null, copy(tf.shadowrange, ts.shadowrange));
if(ts.shadowangle !== null, copy(tf.shadowangle, ts.shadowangle));
if(ts.shadowcolor !== null, copy(tf.shadowcolor, ts.shadowcolor));
if(ts.shadowalpha !== null, copy(tf.shadowalpha, ts.shadowalpha));
if(ts.textshadow !== null, copy(tf.textshadow, ts.textshadow));
if(ts.textshadowrange !== null, copy(tf.textshadowrange, ts.textshadowrange));
if(ts.textshadowangle !== null, copy(tf.textshadowangle, ts.textshadowangle));
if(ts.textshadowcolor !== null, copy(tf.textshadowcolor, ts.textshadowcolor));
if(ts.textshadowalpha !== null, copy(tf.textshadowalpha, ts.textshadowalpha));
<!-- showing settings -->
if(ts.alpha !== null, copy(ts_alpha, ts.alpha), set(ts_alpha, 1.0));
if(ts.showtime !== null, copy(ts_showtime, ts.showtime), set(ts_showtime, 0.1));
if(ts.fadetime !== null, copy(ts_fadetime, ts.fadetime), set(ts_fadetime, 0.0));
if(ts.fadeintime !== null, copy(ts_fadeintime, ts.fadeintime), set(ts_fadeintime, 0.0));
copy(showtext_timeout, ts_showtime);
copy(showtext_fadeout, ts_fadetime);
if(ts_fadeintime GT 0,
set(tf.alpha, 0.0);
tween(global.layer[showtext_tf].alpha, get(ts_alpha), get(ts_fadeintime), linear);
,
copy(tf.alpha, ts_alpha);
);
if(ts.noclip !== null, copy(showtext_clipping,ts.noclip), set(showtext_clipping, true));
if(showtext_clipping,
set(tf.onloaded, showtext_do_clipping() );
set(tf.onautosized, showtext_do_clipping() );
);
<!-- special flash-only settings -->
if(ts.embeddedfonts !== null, copy(tf.embeddedfonts, ts.embeddedfonts));
if(ts.effect !== null, copy(tf.effect, ts.effect));
if(ts.blendmode !== null, copy(tf.blendmode, ts.blendmode));
<!-- set the text and the basic settings to start showing the textfield -->
copy(tf.html, showtext_text);
set(tf.enabled, false);
set(tf.zorder, 999999);
if(ts.parent, copy(tf.parent, ts.parent) );
set(tf.type, 'text');
<!-- start the text-hiding timer -->
delayedcall(showtext_timer, get(showtext_timeout), showtext_hide() );
</action>
<action name="showtext_do_clipping" scope="private:showtext">
if(showtext_clipping,
global.layer[showtext_tf].updatepos();
copy(tf_px, global.layer[showtext_tf].pixelx);
copy(tf_py, global.layer[showtext_tf].pixely);
if(tf_px LT 0,
sub(global.layer[showtext_tf].x, tf_px);
,
add(tf_rightedge, tf_px, global.layer[showtext_tf].pixelwidth);
if(tf_rightedge GE global.stagewidth, sub(tf_rightedge,global.stagewidth); sub(global.layer[showtext_tf].x,tf_rightedge); );
);
if(tf_py LT 0,
sub(global.layer[showtext_tf].y, tf_py);
,
add(tf_bottomedge, tf_py, global.layer[showtext_tf].pixelheight);
if(tf_bottomedge GE global.stageheight, sub(tf_bottomedge,global.stageheight); sub(global.layer[showtext_tf].y,tf_bottomedge); );
);
);
</action>
<action name="showtext_movetomouse" scope="private:showtext">
copy(global.layer[showtext_tf].x, global.mouse.stagex);
copy(global.layer[showtext_tf].y, global.mouse.stagey);
showtext_do_clipping();
delayedcall(showtext_mouseupdates, 0, showtext_movetomouse() );
</action>
<action name="showtext_hide" scope="private:showtext">
if(global.layer[showtext_tf],
tween(global.layer[showtext_tf].alpha, 0.0, get(showtext_fadeout), linear,
stopdelayedcall(showtext_mouseupdates);
removelayer(showtext_tf);
set(showtext_text, '');
set(showtext_prevtext, '');
);
);
</action>
</krpano>
This diff is collapsed.
/*
krpano 1.20.11 Videoplayer Plugin (build 2022-01-13)
https://krpano.com/plugins/videoplayer/
*/
"[[KENCPUZR8jq5VCRq7eLv_agm#GtF*AZ]+t$JA'K%/sH_sBX8K4f%PKMQchPTgN@<Fo$+?J,7QiS@bN4vEO=H%;UH78C/<hx6BogJ@r;8HVp?Uv63:?J3[.W$gF7m;8`a1B6EFr=):VTbMdFC9uWE+mIohUwBea7XlOv9*lmno%(csMX#NAH=WHCFBvdm*N`B?p0@[XGlkg5NJ:6#p?STi_45;1,ZH&:[_`U+]nrX>_==wL>cWhv<Q__&@7C&S%@TB*R7b+n=:)'NC/Im>E9Rt^2D@Yq/r%54MrV84WFSnI(Dm@gSd6<mc)/U1Y-JE72j_4k?`OH&7q%l0/s.#kS?4J3..*6tDM7?_H*`NnmD7FvqO0FGl]xAuuY0Vk2IR_L&r68j:UhsqYC2:_Te']1sB5Ah?Fl6xho&li:[/I@L0Y^?#^r:XkwXM-:)$-HVInetln?AH:0w<r&/Q8rV+hYUek*K:IQ);sqA<34AgXCG/rV5oYKeLRo>hDe'JqUR0:ohR[?SJ4l7VSREtX?<jU<Cn8dL_;d7',^$H&h(PXuY1L`sH[Q3v5ItV&v00jIDCh(P5:n*U@_XC=K[<j@bh=OOVo9gcFw&siJs1LEbPBEx:?;S[]Au<T`?I-]$ji-`O=eOA4mJd&liLv7KQk:&j_kOda`M,m5tq2ialQ9cQ$1?l-deV,ci2I23@_>Kd4l;A;0DD1j^ANBjB3?$vK$rJ_RHR4bD?dlt^Su`a_#v^/v_FvXEe4er5Y'F]e-OQU>pdRl9YbLQZ'5(H#t*cDLM&*He,1;,TR#W,M(#mGV6n#KJ`f#pcPVK$DX<)08=l]rWn^<o%JFk_]gqVA)4Av]It@R&[)-(4)/qqv)u5,M5KtZTb?*kusBbfNE%Lx?a_Hf9o7rOO8G8$t;>X0wNLu7NU:CV9FK?+EhI6$%]&%J*R'T=M2gsGHf`IjiCPCDcQ<Mb[-Tu%RlFr']7IHW:HoZm+F1M:]a#'3h>?Mg@-]@]Yw@d+J`l3Hw'$v10G[I$.EMRbn`H1&;;Eq_kkDRBWq.CPCPpBER+R(PMXHj;.KtEoOp-lxA,+<B4Lq:3UXI,_H4YA]_ujZrGmL-?F6:N-[=0IZOeqfp(Rh+rY)t=urv,QEN=LNB7=c2)gC8?`fMFat3#jN(QZ&407BSE09jDo12Y'oif?Chb(Ae,M-[*LYA7m5<qFm4wME^+X)#Eq-T2o0Lat7]OhU>@9;P64-gXN&q'/m+$0eYV^Xwn[rf9h$/Qijj@L@nC6W#k3N>:I]8AG<@*CbAnvn6u?$wYtt]Sn(h15EH)4hQ3MFZS,CiDF9VLKo;SfSFkgI*t*(Ss-B247O)S_0FaQ`t_F,J7X`c(&pc$[_1O#)&<%4N0ruW5Zk>d$p:kQuY&23=PDC(*HO>;xhPJ=-MBIYa4s?jo7p3eLcZACO]S1JRQgF/J6=Nx(s'UTorNIMAX2<BdkutWPG@bjO_WYlNps_`?4=#srAG#S[qF[RF0+Ylr=R$c0'jChkiONjx7If%SKV]#sw0HF[@5F?SY.cIgLKM3)^U,#tAZ3FY&'8@WBv>0<o0dSxCj0Bme0P?tbVM)-P-/W_w@.g2&Vnk,WDI#7GBW13#M0P.$(@^L7JU3/4'@69+Vb($wSG-8.u:f3^uV)fIcCV1]ISw3:Kr9K_FB=MXZGhcp'd3$QDjoW$H.Sx`dJ`+R^[Le')s7-wA:jRLRhn9TPg2w#e3]J,pl%f09Cbk*v6.CaVRDx^rC7;TF<c8uQ*fF8fG`%dr:C[]qWD<HqU/XGxastgvD1_/O=aK`=>]lns$jXp@=bc6VlZ?R.q?0c)I)eMqi>LP[Glr%9?3(T*p>0#6%JUX(+CMa[OwTGx>mNi7WkUD>kG@3=+&6rKf5u]Lnxi.m02Yb>q_@t22n?_<_Ok7IYK[hBp%D9Nb2]TCgI*aYEO57qpnnHwXi*v?SVx&`R==<A;J*:Q@2n9-jRX6JH/wccNir(ho/KHghuRpJ`2%bPHcXF/+FFe;r<cxm2pG^E;j,t$<C^aSeQ'YN=BrfcBdxoTph1uK1+<r'Q)D5ClLRK?[m<?jVpxX;[h$g9>:=FgeNpsi&)4j?hCYq[piP_LkEdF>o'A/0]qt`vd]hs1;P_cYUX<AH8R.?2FH>N?n;W8Kai<N39doTq;.Og<6bHQKN6ixgR:.kSh2LJ=H+cDbuV:OLPZ]Ol,L[=,a%jtr$<;0l>%'uo.Z/6OnWi0/?BO]]47^b:$J#Np:]m<Yv)`$:22eh3M/MsV-PnCJ1c'KRtXEDg0F1o9h#PdaJ$2.h'g#Q*`:BvMZ4$oQnBTt7bX.Xr[&UWri=^.L'6+L>J=kjo*]mMJ[*72g@VJ#2Kcv86)T%sjAHY)>@1B&Ys1vNXWWI2_l,_@Z/TOsGct@^TSgj^(n;bXk'rP07U$C0#d_hM9ec?Q=NdJ#d?)q>p%0%F<HQqKgsVDL.`E8;mtWUD-cHU;)PkS%sXJ2YXDq)=Y96AwZG5[4kKhrK?[o],ckk8R^Cxc(>7>eAb@K7f6[Go'@U4t_e2@]@6^ob)qplb>=WMEWNK0S[QshZL28;5rv]@P;X'[<-oH-p%-.p<FHSvHf+$?3ZbBojf&<R6-bgil3O)s>UJ[8#&4dIA[2hw%nWb:DK,C2oK2YMn(5:jewH.6:X`o5ou(6Y5l]Y+D'XXxogGe]waA@eX^j'mH$'[=;u.;aTqldqRB2-wRHD-V?g8I).Ia`,*$8uljS=W:MA_icxf*4u'9BTc#vlQHV>=6*Iu2o)]GZiblFM=vsM.@j[+CoQgC`+xuEU:Q:,g]]fGKeB&c#E[qFn%9Y1e5u_-%i%X-AsnWBYuR'&Y%8.g3ZV6A_Bf58tn-DJR&;?cIO+^3@3X+.r@$]vpb,6NS*9jn4WOke[J9rEibB>B<.8.F/7VZGS]mP^DjFD>Q^N0DR[I9-=7lM`M=?OHvJ>NDx6I7xn8+*_8(Awo9Hnp?(=JWSBi/qPVlYxq@&,K7mURR,$d,vqd$Q(T*Kb+L9r0>#TT-<$hO/rSJd$=Jr3F.lsT@2m*l<3:X-(kU3MfL@?[A0N8Hl0F'`141.7<Bv.Adpg0F)mW:mY^1#(wH%H@FuX/42,FJ<t4H10@59s+k/l&T5m)-,FIn/.U't1L6pqmKSC:7eP'C>rv=:*O0xeX%#H;*Q*49=hwa8h)J++*m8l[Z'ZhkT#f/A1MX(m40$fERla><'VkRAK5FSKmuuwmBqh&g)ZE,'P*jUqbaSDb0X,#_54sYn#nwa]/K0:B?KfE@#PtHQBTwL-FFbhvrM+xf_>T).A%w:^m#+A14FHt`mjc.fH@'Fg&AL5+,?e<x6D_tH>%]??aCSStnKbGe?q5VU+8(#;o<Ii5e)[f9BGi(R.ZZqEdK]7)D9Xk5tUh8X8v*@MHsq/$O'ZNkd)<ED3(-c$]f+7JQH?FQ[sIUP@Pw5X%m61*0+N-+8QiU%WY61s8-U0aqb&G*+(]>6u=P*IabDK_<(#C336iM+L*v;C#Ukpu*RsP7Cr_dmtsmnK=JiDIF$4Ikh1,J]QO?,QX64FBb3.0`EO:*Cj->8fDk1$s+cjoOU*10Jp`uXQ,`JX*9G@%r@+9sb[4CTBjU^20DTP*Dj`ULfvBLNIw@?4pR+(_&ehN9GStw*K,B-Do(%^uf*qG-EQbv39s1aIT2,&]xE,ug.8b3G9QudwqpCj'.^YtGrtON5VON;Z<v5*wpR5&7n1^adt1)9aJmv9KSS?/B57XBZFprkO`NQssIJqre#Mi1[,uuj.@2;e@fHesCw8FZ5ge<qlZ_Hm6aJ@$S2-(@s'O_vw3[#9FeL22.)kUt=MM@PdR/>2ZX&T+Ms63EOIv;RxgkE2[GvI81ZW](ER.2N]i(YEn)DSlOqBV+L3#6spCqA=SOpF?`1o'HYE%>$n&`_/Dk8MR5`dmsiI#_a0JlM<h.2AC=Skko1r`YU8F_ktbdpdMVrVdGYA*B#mjgo1SJ4nElja5S*OoGJ]J#NU9l3/Sn2H3oi](f'K0qBRE<,;%i04l4Y2L/.)AKHp_Yjct2v6g;mT;DriMhon.pX?5nO3Pje,1%N[BCXLa;Co&_An>-DF&kTRu9[%]k3V=Z0==k5,SQZ?KF3jx6]B]IKjo>*rml;4vS?Pw?sFl$CRJ>C.p:eVgqd;sqKF1GIpjx.u:px:M1sE7Y1Q[vAnmxu%m]Wv,k'^q*@.^8Wg]afL[e(`-Ot6$R]bVn5K*g&n[s>[^fv)9.nO*&<WMIYt8mLs8l#WR$G&-X,L#Q%wTiw`h^'jKQHUoH3V]QIB9=H7:1m3T[K'P(?qFjFi@]dP%lRis?w(*L3r;URIsR&QsO^*`Bb7YKF5TOhk_tlaVvhd/>S$e7.EpUL1T?ehH9Q>e[@9+t,[dcpGfU>;AFQn/.DH<r32]iuON'o`i]+7GAj[+MKw9lbql4P.4[=l`hr3&6<Cghv-4VGv1YMcU-lo@w6Fgm9#1ECg4GKMASNLUl=-2hj_fSIVlnK2&``j4I8dL+ii*2n2j;%Dr7f%N#F)t^(&m/8Ch4mTE0QYO<Rksai'd9HGdY)qS@<jqa?;.I8seT)jL*Pnw<NK:pTC;IV^_DR$Q/6+2Q>%8*c@dIV2.9c,dfq[MN)$VuSTP7]IOKiaGS.@)KTHJ>0X+ra^Is]kqt:vF]XKjJK=GBN5@j&uC3@qWUP7':J%B8;>E646Iebxum#%I>7*Yq.SfukM<KOK^Np(=mP`E2?)]i+HBmAIvB#PXBQ>XXOm89^Y-<nCq0m62<mPBc3EvC:7@'2RnxEuNSw(e,kfJ6o&6HrMev;.>m;H;qikW?jiIjD:uN]CA^$cuTraDRakIADjvs211,Rb;mj;dh@^7p^JGtT[r#PPf+6GrMZOE[bQ]D]I)WY3X%b,b;3NMEWD9mm6^hS@.`3g.T_Y_4qi^uBoGHao<NX+#/Wbd0[d=/GKeud@SOecYBr4'1345s]deb0+IxfekV,t?%@QgM:V6Q+-v8#Gb'1''HrlA0Hjac3n4$t_3=x=fCgYelruEsiu+`IWtO2Uq6G;@RGm1K.'&9SKr;ofr%%uA4$_EUAitb#^T3%Zld9xM:u<6xCSWpCa8uqwTF3TMq7(r-+bhMc6?uN>t4LF?Gq1)'&o<tl-D8_#er;pq4G8^^b[e9arrR#+cvMc[f8fu=W`(:S#UTQJ<1?2do@S]`p$[KP8`#8XxqGMP=4jI-cHQ_oXDg/*-T?k4*vL9]@rSDhtlD.m,wX.5WNGWOg1@ihMYd`Mv.0=pu9=[4'I'Zkn2Y:'DaR(Ib'7hYqXK/F:Lkx_OrWfEf%ko`cmm8R0PUG?AYWaj-#p(DLg>*])`8SQ'BEh30nNN,DdYQ2.14?8vRDtZ8Z#snd[ZTawbX?9I=2>$Z%(F+C_QhlU0A'HK5Ck;gVK-$d';u@AnTGjgvZIsqE_Snr>J&@xu'mnMU9L@7??L-#[D/v]5Ec@=jT'wah*7&?4'X$e)10<OC;tAif5&aQ@ZQk%%nTGDi%.:WKWb2dL/02*5D[Aa+^ms/j=wfccq$b:@A@2mN=AJRM14LYiP5Gx/9./N8YvUGfDV6#=n[Udq'+R@/rGY>^r&?:K%-Yo6&ZMGGP8P?md0g^*hJv5(uHAG]WQ(?s]FvvSQD@j>4$.f4WZOp_f&*tx07@MV4<eP[VM/#,)LB@b]UJqDHFd1qs_u^t(iL_lulpgpRC*]`NV&9V]ncD7j+t`*VGTP,Y&j#&6FF=^dVL,G$l[64g-$1>/aiA1ID/KH/xPNuZ1xQ]-hIu#X@t.REUJ)`G<^B<m4Y(tY7_%-tu$.'T`^*$KWEpk,PZIRM6k`E<,@r)*BOrZ*u?-Yc@,bj0sU>B7a]1bqwW((W20gI_foEL6+ENMJ9:='k7X<84QKn-RSlU)bN#vqi&uH%_d;x$0v-A4f#FOoR$pls]O*vd%%nAk%Ol43EGEHT);b8Y1m'$EcVWV$N+sDk$^4v:u<+J1mbin]T[>RQdgJde_'p@wNsIXqn.&KL-H-e;d#IuHVnn@[lqp(6)YRe[9C)UdQu:>+sOg/r-;s+]COG&(&2[n#$wd1xFUQt>3b&:DC4POm+@;v_o<K=edI%lSkg@bq@n>)wm@V5=F,*Zq//wbH_R1Mx&jnmA0>+x.aY]d>Lw[=Iod&M;k-O8EbodcWA0xZne*gLet`fFD*l*7)Vt+LhYWfk&QfP&eoli#W8MWc:Q16rjVSGH#m`[Qo'/xWRn.q_?a0.f+WgJNg]pn(*G=q[.Qf(,riV7j%4sx5GTH;>%S:H('W$`#Oqk0vI.A[eQV0m1Kf2_f%/Yqd&a1]HY:YaHIJGc_9Z*prIbp:O]@^NsCUE)*B3b;lK7:iViYm1<9-c5Z;>ZaOOErP'<v#<6G]TonXu6v^kO*P4s`EpLZ%vLSX)D^3%EOju$1xG>UrFpQlliNpI/q2OffDR@`F:V@[eHwbr/3h-jd6Z=_j2.HMiBP^xW4^?aXLACq@Y.5Yo[[XKTgUE/AL'rEh;B/g*^eu=OdSr>Wg^Hs1HFq$QMnG-,EL-mI?[h9kX<nXQ5h2]up5+4Y<p*cRDt><L?8#WLI@,i^pDaTGfqT)?QUO3H/G[1`jb(^G6.AlVHcZ;Zg_RKmN,,_1e_)SWWW]j*7uq]*m[4#Y:cbpL[It]<pTi-KUqAmJJeSCdAoimeDr#1V#k3F/dPKGXPd`=D.:$Mc4cn79TumnBtScW9pooRRE@1;sPVW7T'O;*-fU`/>ChK<9p06;,kXi^+`93C^m_-I$IdNACFHL2utN?N=H8?Aa.K/Gm,PE(%Elq@Hr`M%:Rr2#=wNKj^W,wM=mkm@._nlLHkNs,8`&jRi]-`Q<WBLr4_fE]Y=;q(1XB0bkD/-*AC[rGUbP36.MXR8:FSDQ%gu7_JQDAH)CXb^-:&Oi2>dr3>f]$)MIow4tlRZKHTK`^r.BqmaYB_qhE51@qI1Kvnk>0xV%>#%ibMno-xP2)_OMZt;:T>P^SV%2:jXtG<E<6%2GgU&q6[tmk?p92hIpS:SwW[]HduF[SdWi[nK2]TK[_Qi(Tw&_VG>-9,>wBZ07Ot<?pq[o(EJ4H/&d-th68o=q*mboeGg7_j;EJ;a7i`n;8&=;qLP:aRbItev47F*VDI1NHL?SS(tx%f;:0-59x/ira*MSFDx9/SqM?N%RjURNH$5j>]cFK0@hALiF+CX[Ln<oX:L_*6=5#-G*8MA7NYD@i(9oUGTtNZ.Cax++:mOD8,ixVOJ/GBI]rJKOKuB&+kjs&mX9T:5Y..@`Up3jv(1=&*&,%Sk9+,t80OhLrngfY96]D;32D$rY#^>d8Zf&54v9l;_Y3oqm3ehihDft.i.qnuC'Bg73s:Ct-+Us=)YWbtFlkq,dZWTaIhX97uAhu&K9@r[qMgmK+dQ;L5W'n1dR-d'7LrKS..m<WceJdoGJv@/FlH8Yh$I<%C$tW5T.tbA+X#&DMJ#;3Z(RN`s=MAjn<NqkLBEE]ckw_Mi[=N)9J(:ILUXnPRKo:BR7R,CvTsu8iRqT_eC*Mvf9sr]2>bFXLTf&OEt]B@QqkJo5id1jZ-92+^8(;Up34pmVt7xQIQXP?P=R<T5EH^#p'82[3WahW<?S@(CO?PBppJlFsPqCSWUq0rqdc?HW1NcbjJ-IZ8Q,n#_I>OE<IBoiN-Fp&Gtc2Lu+(3Lq.k)'<<#T/BcE0mF[>EHhJJPWp/*8,eN%N0mr.2,.g7%=ah@H*4'S(hU?xW5l(8Y%Z,*.$-N8nr6c[B3'g@T11oEkrHp1^uVl^eonkEKdDaKF+jE5sILNL,aZk7hp4EL&#C87/5:*7A<Sko<h^Ge[4[bi4Ctd1Am#>KagHL#k?@5oi.?_*Ali/X:]Cd$Y%$7#X3A:lBMACN;ixJ%BL[-.0-WDjINNX%Du6]f_;/tEVM(:0x,'V?hTgT?77n(o#a1kRoDlnB*sb)Lnr)01`XZc/l1r_Ys71W8^c`k_Y'$Nsa3Iiv=)<qmfi7LN<=5Xu:54.>=Y[(It;SV4c5(8=5JrS]?k,-vspb+Outc]0iNt^6uA3l,UqgcF&(q5na.sH(An%G3'*$I`83gL=A`P6`p6l1G'jWRjEm#Vf1Z17MMFY`ug:#rZS%+<feL')REvJ-L:eqn6U;i,etO#esxsq=[b$7UFmIeORT%)t>C#F:,G2ZhMtxYnRc,@K$O.mDV.&w%+tII57f6M73%rml4gN*&Yb^I8RC`hl/eof(L2O8S0$rwsT$,xEjO9jop1H0QqW+OCY2b3OXAi^;2?LXo_^#]n'mRCCZTjSVxfKnm),IjI&_a4f%2*j;XuubnKo#<b/1m/.7*8+iwKZ*(>sAa`1UU1*hf<A(oP`T^1%;9f%Vtv7KRCTCf]t^,Y`autSqkpA[LqR,8B)8d<w5xVW9cK/k68rs#:e/jLf-)4I3C-pG;/8q?ieRHS+[lf(CSwT*U)#VG+IXIhXskLPN$Z%Q;4;E?:=arRxNXZ`/o>Wi>uacl?E5O/298qhg^-k:l/IXv5%n.:<mfmhIwB2`'@?[jv+>NK>PD]U,utOx#K5Ts5Tm3I3M*I9a<nteqJELo)r9SG(b=p)<REQJoMo@aZRju-r5B+?.X'Uu/3k-djTSN^KSav7i<A%0^1,do&IFK9d*9,pgg2m:kb52(vL2t$V,LA9(7.[ZT?]'C3];T<eQA/;Y6l`06<bMul1X^6C2nt:]W(@AbhpHAD8O'i0D8eX#7sb?dLibxLnW/RLR8EA9#8AgYS7IF2uL<%<OF]8RKj*/MXg+[J_MLcoTWfV'd$/[4X:tB^ktuseiDE.**5F#I%/+PxmONDxu[&E&hWEgcwVC$BtE6gDt)+mNrDg]9O/_a^uitIImn8'CHUbM%a2Ss)SM0Nb=E5bGBPT50Mb_WT+T^GF9x`/MttcRE;[@H4qm2GO/.$xfxa^rkH4l)f#w/b_&w6X`r`qLOx?&KwPtR;+5eehHCScVN7$43YvRViA-J&Rq/.Gn9lS/>qoD7_T:@;tCR;hkSig.CZR+fcQE_Tq4A'noP#(EjINRR?Y8h9^[jv[uQ>San72h+K30RIdu<KQG<Bo;J6Q.&H_l;JbiSt)s1:]%e(Db3v.MaN)*f'm/Jkd_<&&hM$0pK(`#9i0D]4JZBAp1KIY(1DfGl+au7EZ3I7DHD+lNIZU?Y'nIctCIc)#e['OU(_sTG2,++EQTWFu7QKB_kAtW3nJ+U&dg*maZ*0fI/^@6(JcC5qOOAd#l)fs]>>d&)?>;RnWhhxk'XdbE=/o9R0L7QDlFm_/F]]O'C1Kv)I,v0ld:.$xSWx8uv1kI>/4[OWLuqZI`cXrcsc?8W.mux@Vc1WTxr/s/,,T[s(.Y8*6u8v5n)LtB,O##`Nd@@q/r+Ldm]]";
This diff is collapsed.
This diff is collapsed.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff was suppressed by a .gitattributes entry.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment