From 8d8a7a0c240ea1ef537ecc31481f1ffdfcfd46ce Mon Sep 17 00:00:00 2001 From: Christos Sevastiadis Date: Thu, 3 Dec 2020 17:42:45 +0200 Subject: [PATCH] lcl.PythonGUIInputOutput and some python code fixes for Lazarus FPC demos --- Demos/FPC/Demo01/project1.lpi | 101 +++++++----------- Demos/FPC/Demo01/project1.res | Bin 138128 -> 139052 bytes Demos/FPC/Demo01/unit1.lfm | 10 +- Demos/FPC/Demo01/unit1.lrs | 20 ++-- Demos/FPC/Demo01/unit1.pas | 2 +- Demos/FPC/Demo06/Project1.lpi | 51 +++++++-- Demos/FPC/Demo06/Project1.res | Bin 138932 -> 139052 bytes Demos/FPC/Demo06/Unit1.lfm | 19 ++-- Demos/FPC/Demo06/Unit1.pas | 4 +- Demos/FPC/Demo25/fpc-res.or | Bin 138668 -> 0 bytes Demos/FPC/Demo25/project1.lpi | 190 +++++++++++----------------------- Demos/FPC/Demo25/project1.res | Bin 138130 -> 139052 bytes Demos/FPC/Demo25/unit1.lfm | 10 +- Demos/FPC/Demo25/unit1.lrs | 28 ++--- Demos/FPC/Demo25/unit1.pas | 2 +- Demos/FPC/Demo31/Project1.lpi | 54 +++------- Demos/FPC/Demo31/Project1.res | Bin 855 -> 1779 bytes Demos/FPC/Demo31/Unit1.lfm | 29 +++--- Demos/FPC/Demo31/Unit1.pas | 2 +- 19 files changed, 220 insertions(+), 302 deletions(-) delete mode 100644 Demos/FPC/Demo25/fpc-res.or diff --git a/Demos/FPC/Demo01/project1.lpi b/Demos/FPC/Demo01/project1.lpi index bfc0f0d8..629aef08 100644 --- a/Demos/FPC/Demo01/project1.lpi +++ b/Demos/FPC/Demo01/project1.lpi @@ -1,33 +1,35 @@ - + - + - - - - - - + + + + + + + + @@ -38,120 +40,92 @@ - + - + - - - - + - - - - - - + - - - - - - + - - - - + - - - - - - + + + + + + + + + + + + + + + - + - - + - - + + - - - - - - - - - - - - - - - - - - - - - + @@ -168,9 +142,6 @@ - - - diff --git a/Demos/FPC/Demo01/project1.res b/Demos/FPC/Demo01/project1.res index 7c6cf3e4be6fa881cb2f2caa9bda693328155c28..f6e8499568f21121986c715951291349244aeef3 100644 GIT binary patch delta 930 zcmbu8F>ljA7=|4pK~+>Xq>k5gp~Dy7`R?p<c>sn;FrR&Q)KVN5m5|dHzzS`tnI9xJo)dJC9HhXK60WBud6fIsbH6t)I{PXQVgW+eIjlc|K0!dN7+b z7brLYKyQ+X%4P+6ofM@+0LxFsyFAaPrB<&-C{)M258A5ufT*7X37dr&*DivR^COqZgs= zV9f1hl~#{iFbY(joXq4@51+|#p#%HRdC|%$uv?3_l$VwLPgBI*VygKe7RpC;Ivb={ UuGWJ49Cp8i-OhE`z4v_oH*dcgc>n+a delta 50 zcmZ3pk7L4ijtL4(;>;73{&=I}> diff --git a/Demos/FPC/Demo01/unit1.lfm b/Demos/FPC/Demo01/unit1.lfm index 5cd84666..40e1816b 100644 --- a/Demos/FPC/Demo01/unit1.lfm +++ b/Demos/FPC/Demo01/unit1.lfm @@ -6,7 +6,7 @@ object Form1: TForm1 Caption = 'Form1' ClientHeight = 391 ClientWidth = 547 - LCLVersion = '0.9.30.2' + LCLVersion = '2.0.10.0' object Panel1: TPanel Left = 0 Height = 391 @@ -79,15 +79,15 @@ object Form1: TForm1 end object PythonEngine1: TPythonEngine IO = PythonGUIInputOutput1 - left = 96 - top = 48 + Left = 96 + Top = 48 end object PythonGUIInputOutput1: TPythonGUIInputOutput DelayWrites = True UnicodeIO = False RawOutput = False Output = Memo1 - left = 338 - top = 48 + Left = 338 + Top = 48 end end diff --git a/Demos/FPC/Demo01/unit1.lrs b/Demos/FPC/Demo01/unit1.lrs index 4dcd8024..72fa03ba 100644 --- a/Demos/FPC/Demo01/unit1.lrs +++ b/Demos/FPC/Demo01/unit1.lrs @@ -3,7 +3,7 @@ LazarusResources.Add('TForm1','FORMDATA',[ 'TPF0'#6'TForm1'#5'Form1'#4'Left'#3'"'#1#6'Height'#3#135#1#3'Top'#3#175#0#5'W' +'idth'#3'#'#2#7'Caption'#6#5'Form1'#12'ClientHeight'#3#135#1#11'ClientWidth' - +#3'#'#2#10'LCLVersion'#6#8'0.9.30.2'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Hei' + +#3'#'#2#10'LCLVersion'#6#8'2.0.10.0'#0#6'TPanel'#6'Panel1'#4'Left'#2#0#6'Hei' +'ght'#3#135#1#3'Top'#2#0#5'Width'#3'#'#2#5'Align'#7#8'alClient'#12'ClientHei' +'ght'#3#135#1#11'ClientWidth'#3'#'#2#8'TabOrder'#2#0#0#5'TMemo'#5'Memo1'#4'L' +'eft'#2#1#6'Height'#3#183#0#3'Top'#2#1#5'Width'#3'!'#2#5'Align'#7#5'alTop'#8 @@ -13,13 +13,13 @@ LazarusResources.Add('TForm1','FORMDATA',[ +#6'Height'#2#8#3'Top'#2#0#5'Width'#2'-'#0#0#17'TPairSplitterSide'#17'PairSpl' +'itterSide2'#6'Cursor'#7#7'crArrow'#4'Left'#2'2'#6'Height'#2#8#3'Top'#2#0#5 +'Width'#3#239#1#0#0#0#5'TMemo'#5'Memo2'#4'Left'#2#1#6'Height'#3#152#0#3'Top' - +#3#192#0#5'Width'#3'!'#2#5'Align'#7#8'alClient'#13'Lines.Strings'#1#6#9'prin' - +'t 2+2'#0#8'TabOrder'#2#2#0#0#6'TPanel'#6'Panel2'#4'Left'#2#1#6'Height'#2'.' - +#3'Top'#3'X'#1#5'Width'#3'!'#2#5'Align'#7#8'alBottom'#12'ClientHeight'#2'.' - +#11'ClientWidth'#3'!'#2#8'TabOrder'#2#3#0#7'TButton'#7'Button1'#4'Left'#3#223 - +#0#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'#7'Caption'#6#7'Execute'#7'OnClick' - +#7#12'Button1Click'#8'TabOrder'#2#0#0#0#0#0#13'TPythonEngine'#13'PythonEngin' - +'e1'#2'IO'#7#21'PythonGUIInputOutput1'#4'left'#2'`'#3'top'#2'0'#0#0#21'TPyth' - +'onGUIInputOutput'#21'PythonGUIInputOutput1'#11'DelayWrites'#9#9'UnicodeIO'#8 - +#9'RawOutput'#8#6'Output'#7#5'Memo1'#4'left'#3'R'#1#3'top'#2'0'#0#0#0 + +#3#192#0#5'Width'#3'!'#2#5'Align'#7#8'alClient'#13'Lines.Strings'#1#6#10'pri' + +'nt(2+2)'#0#8'TabOrder'#2#2#0#0#6'TPanel'#6'Panel2'#4'Left'#2#1#6'Height'#2 + +'.'#3'Top'#3'X'#1#5'Width'#3'!'#2#5'Align'#7#8'alBottom'#12'ClientHeight'#2 + +'.'#11'ClientWidth'#3'!'#2#8'TabOrder'#2#3#0#7'TButton'#7'Button1'#4'Left'#3 + +#223#0#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'#7'Caption'#6#7'Execute'#7'OnC' + +'lick'#7#12'Button1Click'#8'TabOrder'#2#0#0#0#0#0#13'TPythonEngine'#13'Pytho' + +'nEngine1'#2'IO'#7#21'PythonGUIInputOutput1'#4'Left'#2'`'#3'Top'#2'0'#0#0#21 + +'TPythonGUIInputOutput'#21'PythonGUIInputOutput1'#11'DelayWrites'#9#9'Unicod' + +'eIO'#8#9'RawOutput'#8#6'Output'#7#5'Memo1'#4'Left'#3'R'#1#3'Top'#2'0'#0#0#0 ]); diff --git a/Demos/FPC/Demo01/unit1.pas b/Demos/FPC/Demo01/unit1.pas index 26fe9250..78b70cb6 100644 --- a/Demos/FPC/Demo01/unit1.pas +++ b/Demos/FPC/Demo01/unit1.pas @@ -6,7 +6,7 @@ interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, - StdCtrls, ExtCtrls, PairSplitter, PythonEngine, PythonGUIInputOutput; + StdCtrls, ExtCtrls, PairSplitter, PythonEngine, lcl.PythonGUIInputOutput; type diff --git a/Demos/FPC/Demo06/Project1.lpi b/Demos/FPC/Demo06/Project1.lpi index 21a8b55f..6751b6f9 100644 --- a/Demos/FPC/Demo06/Project1.lpi +++ b/Demos/FPC/Demo06/Project1.lpi @@ -1,7 +1,7 @@ - + @@ -17,15 +17,19 @@ - - - - + + + + + + + + @@ -51,8 +55,8 @@ - - + + @@ -112,13 +116,42 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + diff --git a/Demos/FPC/Demo06/Project1.res b/Demos/FPC/Demo06/Project1.res index 877868cb4251927ab961b2295948c0d753ecb7cd..f6e8499568f21121986c715951291349244aeef3 100644 GIT binary patch delta 61 zcmdn8mt)O7jtL5kn>Q+&vrRt2>Lh7srXQY}my%yz9GqHGl9`uYtYpW_rJ$fN*^;|?nT>J#XEr8F2>{SX3v&Pf diff --git a/Demos/FPC/Demo06/Unit1.lfm b/Demos/FPC/Demo06/Unit1.lfm index efb1a880..45497ad7 100644 --- a/Demos/FPC/Demo06/Unit1.lfm +++ b/Demos/FPC/Demo06/Unit1.lfm @@ -11,8 +11,7 @@ object Form1: TForm1 Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' - LCLVersion = '1.8.0.6' - Visible = False + LCLVersion = '2.0.10.0' object Splitter1: TSplitter Cursor = crVSplit Left = 0 @@ -93,7 +92,7 @@ object Form1: TForm1 end object Edit1: TEdit Left = 500 - Height = 20 + Height = 21 Top = 8 Width = 150 TabOrder = 4 @@ -118,7 +117,7 @@ object Form1: TForm1 'print()' ) IO = PythonGUIInputOutput1 - left = 8 + Left = 8 end object PythonType1: TPythonType Engine = PythonEngine1 @@ -130,24 +129,24 @@ object Form1: TForm1 Services.Number = [] Services.Sequence = [] Services.Mapping = [] - left = 72 + Left = 72 end object PythonModule1: TPythonModule Engine = PythonEngine1 OnInitialization = PythonModule1Initialization ModuleName = 'spam' Errors = <> - left = 104 + Left = 104 end object OpenDialog1: TOpenDialog DefaultExt = '.*.py' Filter = 'Python files|*.py|Text files|*.txt|All files|*.*' - left = 176 + Left = 176 end object SaveDialog1: TSaveDialog DefaultExt = '.*.py' Filter = 'Python files|*.py|Text files|*.txt|All files|*.*' - left = 208 + Left = 208 end object PythonDelphiVar1: TPythonDelphiVar Engine = PythonEngine1 @@ -156,12 +155,12 @@ object Form1: TForm1 OnGetData = PythonDelphiVar1GetData OnSetData = PythonDelphiVar1SetData OnChange = PythonDelphiVar1Change - left = 136 + Left = 136 end object PythonGUIInputOutput1: TPythonGUIInputOutput UnicodeIO = True RawOutput = False Output = Memo2 - left = 40 + Left = 40 end end diff --git a/Demos/FPC/Demo06/Unit1.pas b/Demos/FPC/Demo06/Unit1.pas index 3cf0d935..1caf8f5e 100644 --- a/Demos/FPC/Demo06/Unit1.pas +++ b/Demos/FPC/Demo06/Unit1.pas @@ -6,9 +6,9 @@ interface uses SysUtils, Classes, - Windows, Messages, Graphics, Controls, Forms, Dialogs, + Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls, - PythonEngine, PythonGUIInputOutput; + PythonEngine, lcl.PythonGUIInputOutput; type diff --git a/Demos/FPC/Demo25/fpc-res.or b/Demos/FPC/Demo25/fpc-res.or deleted file mode 100644 index 3676804f33d116ced317d49058f0f2063baf79eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138668 zcmZ^K1z1#3wC>C>#L(Rh(gFg~HAuIhAR(Y4-AGBy(1;){AT>x!iXb2jQqm1lLw9%0 zyz$=qzW2U&-`(GL=HF}Wb@thNt#x*+eMTDy1pG^%nLvR5%z=S|9-ba={)78pKbSIE zOjZ_y{}KdqDFOg(7yxu?@M!%*000cY!u$#Y0C4PoBoF{6{zqew7K2t8#K8Y0kMkeT zbHm90t2GLP|L#X%5RAck4F0QU1cNvj+`=FR{;&Ii00>5K;y)Yx-}r0)1OM!Q;Di6O zYyYht%Kw4S`Ty|$RU7}Wum7!||M@_%|BrkdMppg*Bmb{o%Kwl2KZX9Q$@hPde}<8# z0cZoD08@Y^Kp&t1c!EJ?3_>wnJ%Ad9dInGd=wQnJN&U;?VJIj@LiazU^)LtkSYzs0 zNx)?OE2$>~06cjAr8ErBEfWafQTpGd06^Lz5K#Q!|ImsUMHZ9(A9@R;K)Zhi{ja1? z_n*F0a)I#;s>gsB3~lc+b=mZh(h$^*iU)rrn>U+Zh?Zfi52#57b!oX18Sqf@ z7}a!PLD=HsNgFfg{*>Pa9p2m8xL$Y!HOly(g!b)~4-EXdz0Xmgi+M%(hPF0dBM|t8 zwv#r$lNN~K4!!o!N)P^ey~~&btep`y#Q0~&_-DnmvhCgkY{?d~{tmfIbn|3zGtfcz z*SB`Xjqd)wguYgLy`_ZDbajPBB#{Qui?VoNy#dF+MYNf@)zKW4%HpqUBU^F5xAjZ% z;xw3NQ`$9THd+dvZNb-x^h|$ zxBwtLo6)TY=}nKn`g)#!3snIUq97=3GOV(%)bCAi<91ywG$?_VKZ2Wt5sfj?2K)SK#T)Unlb-_^nFWC~%SK)lER zQV1@aY8(gM@7M0C`1A7Z2OkN{5_t?DxgTetT%Gvy*=izJDm#acVy|KVB4En*4-PJH zb+=$~{!9x(Wg9D076M0{Wt>RO0#I^|F)uW4N)$L9U*+h97(G#{Gz!MgseJZl)^pnn zzrn3ckUls>l&b!ACdG~BkC6+~$Tb+ek_qqj1%B$1%>AT7L8`(Qr@Tt4@*0l~5*8Zd zLg0Bz$`L6nFBCDnEFMfs3ys1H9-4kG({?+JJiwl}P!h5GeB;l!jnS7F7B)=qK(}jO znX={eFFk>?kZ%?7qkMvIK$UCZ7Uj>r>X$-Yt3xbYv9d<-O_}f;HG@m#T(n2Fe`YQi z@ly54aS%LE11NKPNZDSFHzaal{lK&49fG>3L{L6vew)(Bv?;3g0yHCbyvUO~F6o*?ONxM2IubFi^j;`mOS5 zh*7y!haRl-c~e`dbht&=r_OTJI~H3mw^GX>0;eS6g4u6iU?O_F>hwhkUiaD3ww=+H} zNOdBlsolCWklDp%#Nio&B8*vri6ZEM8dw%moHGAMuT-|=9>0Jv+2hq@k!L=>{7aAz zw5g3?G+3Dr$oc#*-!=#Rv2J>`NmQS7h{u(f6!IG^qV9m54@8V4AtUpgSnyQXcoy}K z?&Vp)O@c>kbXT&(VhkZye|b2tRlzZYzU*5oqHV3bblXDpa-qtki8m6$^O%t@6o8Ln zpI?A?c$3~|neY1z%Nlm3kMPfG4u&xsd*{{C4%BZGNmKe#+12{Cs&74RLjIWJyyJr| z7;_r?ey<|f)O>ol&K^ty@z>OaZ#8rJ+OjrgZM}{o2gC{D&O7vvUno=7~Mi#$%WHHbDg#Ae4 zK7+ObCd!=bp#4~?r^PwymE7MJ5jR#zOO1g9S+5$!ora|1tkg5kG09H91R z>hDxZ6T=kgl{mA-2$T|ZV_AEXpsch&g+w@uM%!W0Ts?LO(z`ZzZnnc7N8p6?4RKHY z2hxv4cG$j+OhVg1^USL3Tk$s%BJ-FrI}k2}xMp(WM^(IIp|Ln59DT(0++(NNs1%q~ z5LJH0rNu0?=ODcGtWT#W32xL`a+Nv4FDVM`W6=|=-t;H)Msd|0LPv1f(Q*YS?+4+^ zMPI70c-<_};8TX*%AcN$;deAy!qah~pYQ^Lg$^;HAU%X_a)F zwyy+D6yHBq!V_be+wTL_!TSbimk5GxJOu8M)Kw4AcGa+Yh&ZH@eDA$^GZ7d6i_@N5 zB+b|OUHz@+R%_VVcx}a-VHVtY@{nfJgm)Y6^kI@HAx#vS;5QO4d9$rQWH0;R*Ti5V z=$eAnC|HE-^_oBo#)dh7BBCffz+;e5Vn_~pZq*$c`GZcHG1kr?OzNM<%8&-L45Mie z4x#LJ$;eeYBaC%j;2o_D2h1waym*UfB){Kt%UJOy9Em(B5~uJKtM40mRjZnDAubc8 zv(CC(lRRg3yN*(iEeB<9ns6;=>FN%3%WXHQ1sx;<3}61iH86-&*-#Q_-=sXsePY8N z6@bNgW&!0t$`fbZ3k-6rnPejqL!O4j;7M~pN|fQ7#K;HpALcB(GsETHNZyrI<51qo z&M$oE@DV%`Nn^ii`ceszu z{5Af2Hqf^hO|%+F1p^p!L)7v;ffj|Y3|e6RKq#CVJEQPS2NSGzO0?}h1X)KdRGDVD*zYdBC&Phg0NLRL>Dev-FV+jV-@rTYC6s ziU9X3-OOx$Jo%*SiT8`6kf&RZwk41s-~(ZJIq#I80t(5(dZnT=;>Pjj)p3-;jJ)6k zJo*GYhxWruHurbrz#`}0*v@eJ%=zd!EOqeH5`_@+HoN<4$a6m*gs=tNKOAxJgPmcq zK@B3kHYmhXqS`L;=+&Xd5q1x=R{!%qhI{XIw;I3i_EbG#R#GaXtJ-^_%a5m)m!;fx z3zl?-bAaL$!OlcTyAtRiTU!)sM+VNz0T7?$FH#L8LCI3<1Z_&I3MIBhi zDo(?A|1rEKwk=k2L|`P%-;BDD{#kIlRoXRG6y8eN1?z+KEx-AfvC1P{=l-eqc{{cr zLiA#VS=8DU5>V7ecG#^urO)|lmLCr^80(8L3*a!l(5A1Vl>#B2=RjIiqn7!likLsn z5%{6aCtq%I%YKtzIfJe#YAf36fUY6zAhM{hI3Xq@%McL}#Ne`ByjA-V&~ZRl-$})n-L(Y-iiFZwc$E5 z%A+1o2H-q2yyf+e1LyRgttNW?ep~la<|^jZ7HKL0!3I>Iy@*+@evN%Y;P+r>1~$_o zD>*c3e?c8@zq}UdG)s)KB2`)z&aq+CbD(W|&b%0ME2CzXJ6e2I@bxGsvJqEby;h_J z$5MT^AU=E1>NgdPeQiCpIwjjEkl*ZDs$F7h(rL1&OzvdI6Cz{YSFZ2YDL?S^*j_Vq zNLkrsUAK@WNtJZ{8!2xbd@Q=TNdrkv292B}aMsDl?Hmo^0w)3|g0}Xc>byNqTL2&MKNXMkZmveb!-UjY z@p=zGaXpFH>#f(C|8$FH*yd`Fx`X5$p@BY^AD;(RBoTL=J-7N!^~C*JtSX&|=gySt zF8{8jSG4s+ZHLhK88W`aidxA9($&hxUO#0!+R}OX%%OU4lm;zWg8*k5< zXk_Y&!GQq!S(#HAUzw}DsLdXWz)dD?f79Ge!Y9&s+NNoQmjDTH8F(S^ zAWPS-#FE594|kJcW|Y$oI3#rRed17*g7#6X4P_Ah$8%=+WObVQ`x3#TznhcsY4GeaIn zH1Gf&fW#9x^Tkv(brVm_PPwMi!v1^;&jcQNFrF_H({L>ct1tkKN7g%m zytrpUp}=T<8$}BXXc01_L6`-iz(2XZdZV<-v}N!~CL#goo;Plt&-$l;f?!$6gIIc= z5i&Am+6pwk;F_TA5co#Q-3s8;3E4b?Z^nd$e0_E6skW?u?<16Za;^7{_(MMDY)t-DAqWE-OH{O;j#j@x1ol&0t@4S`Q zw=2?tvuQ_hHh7$*oBmYYSD&pZA6RiBmmdRvVk4THu}ycULWfz99bw606B?k$zQrn? z3E+rWFyhD(+nfkyaMkBO9M*~eMfVpWzQvWcsANzE{n_DIra8GvvIwHhx@ei+jfh)> zQMBCeP|R5Tpc|6B)Rf#Bd6VBFpfNgIll+lfSy@Fz!?SHL9m_kC$tQ+!m>{w%&#^VNic~jNCUq$ZP$!>=nm2GEqjp~8viBLOzd=NyrVfn#payM_h42CZbQ}F3k8|S`8Nt_&2 zkfhnp6nRwBP53y_D2 zNVjoOxf6FQa6rtt&*!!YqBC`7lAUog5C9u(f2nqhC&UaI>_`?s~3yVBcK_Q`r#@q}+Hs2q)#E^uV?Y zqf4RsI0zgA@9me5RNvd;g@wfMg#8T$OBh@yN90(%*Vwrnqwvtw)W7PZx+jZWqW*T1 z91xK+n~3{>!sbbKA3(hHbJxx6pSX_7Ngl(-i?xZyKM#MeK9xjO`H^<8IJ%D5c^%C= zT4G`!$v24)!e<`wq+tzkBloo#xHef+1!{tKg()@Ig7KJ_g*k&W8FfAzehmR1k>aDf zRuU~@qdjgP>Px?(F~5#=nzZe3T`>xJ7=ELCdf~A{w9d1L+Wc{JwuGMFJpIF8y1ZPp zn1tz?nuiBjB?R0U50B>_`TGp(qHr*ab7WSpEkXUax4rqTX8FWn0l$Z;#nnnSESe&) z7>fJ&gs1!qfuFdj@np~RNm6GV-%VIBWA*nGn4;uu*aPIdGdYqst)X$@1eNtKcluKp zl^&5vU9$%?J`&Vp9nk#n0W7UgVP`)NzL?r4{o2i5qNCFC3CyTv2J=^7Kldl&;8u=s z-8$w-Imcg?ClAW9ASqb&0cH$-d3R-!{^;DS;BTh{)RldG1n+ zB=7ZW^}26#G6#hOx1SSuURehe>#g{>AAI;|f=eeZq*wtLMO86A-(1Z{+1>u;xHQK_ z-=6IU$xS=(!__RWV#v;l)j$RjiTZ!5;=GtPq=^lwa+5s3Kg(b5cm0yYo})OP5sX!6 zH4r+VV^!yq=DBO_S!gxb3)(oYgU((x)Sq}R%l|nMrE5sZ**JC&moqQcbHKUXpJrL! zaMaalh*L){_AEw>jq!b`tnhI%ucLQqxTpzIfE`r$w^y4nC)`wff@%UhANH0sl77L0 zy0DY&3QUkurjS+Yc{5O7W3>?anO(RnoqS(o3g=8>p$tkSuD*3%5wn#0d;gYVBX_~| zRmiZ^z1_O;4{8f@jY?T54>N~(zf-@X)3~KQH<-IU_WY%<%lnZzvkc@U4Kw_)LI6;{ z(qFMs?lgqK3jIVk{^p@NF`JoidnB$#n>~BNh(*j}N~klU;lLQPp?xCx+l!v714-g$ zd#}gu0{EZ<)KJC?$IL?2!^|t%3R$XHDpWFgHkpn?JQXFG>d@j{Ej-)^IpY|T zd@rcXAtUXbqDdut+l`qSgg&@Q5*{|8z;~Cc678dlB3rAyM~%|=O}kdDkI2;vi3nEv zO}@tKOT_OzK&ly9J@#FwV7dd^Jz_Sfv+0UtWrL`z0DN+fgfMaE+>e#2kn8Z(+~NQc z*GnJo!?(*V*4#Ps?pKpe79Inv+d4zkkDr>MRf>6TMoDL58v1J^i($QyU*B9 z9VEV7DkM^9U*NgR)wlUGK1u)3{N4G2uq}$bZ!vE|os*j!LKQY|-eK+di2g~pE&k8P zE>=XUjmadf^GDE;;C492Px&Ini!hPOY;( zNY%G_T<4$Kerb7`x$M_PMABK-@R76O=SKIw+kJsrq1WUgq)~8&MX+hdMPt#nLXn60 zwQf7!CJExH^@ROQUm-=3f|XqTUj}a;`owS3Nz$QqdF|GuajM>7L zKHXn}?4#TTCe*-+6z^ky={8!<|KU${>wn$@4csqeW>GkAVtBQUQq%Hq?iZ3KG|t+q zEf)P!?lw3W_r!0~T4T{wP|*!vb!DDMWXk>p4;vTx(N(VdE(!9|Z${W4fwwAmgmLNZ zAdOI@RX#ZY9|k-S|9Z5UAi!VTL4rN+^e|-X+w6Rl%hO(&VB4gCKPh{z^3_#j^ zUrt`$f04ZY>hGR$XvNJ1#nr84W#5foN%GZKM^v=w@Jd;Zj4@^f;!Bv;lOv6PU0jFA z@x&)5o0&616nH<(kfx+k3RP4%{C)1PO^jZzowoS+gj$0&1AHWgk4{(WAbERYUrWzZ zx=7_j&Hv&d{pVHJF@obDl_BHHmwrPn$n*O50rOThZGn1$U(R>mZ@AXANuclRICCKO zKHQlNgctI{mlU}oKo^zG_XGxothMyE8cH3C2K15!w*>W!Ixn>%1My9)H%!#_YVN1Z zTnE4K##4+#NYRO??7#-xk?WGL(;`-^+TFXghfp*p| zQNIg}`WyG~z>e4b@vkIAg-u>E3(=l`Z=c& zxmERyHV4(TpZ8z_GbbM-177-=`^$<=IVaq#2FrbB#3{;xl}@Cx5%KWFBO4*%2K|xt zj;@Qu`#Kq{j2k+@MYiJjuDF>%kF%v&5$tLxpf3m&vKnWEUWqn|w|vp@?RH>bx6(%R zR;(l60=xBOv*NCk%2u#jNO)%Rl#g3G@?r|d!ffkaru>T}mY~H2>sIUr)N*?1u$er_ z;y!$Wg{1R??MvK`7jl|A{k_t^uYnz9z!O}3v9@*MUsxGeNJ?9aF#)wJ$D2C`iZ$Btd@rp10a+u_Ec$odvkaZkB$Qzr6o_Mt*jA)(S6r^CYb#Gh>+ZyHL$Vg} zd}Pn$dDK>q62j_>Sc|Z$y1!eboo%x}uh!i)%tDb;ONKX^At6!9}SNJD(e_Ns?9X zder2>1rErN(;mmT(5b?GgCJSnVp;{Fik5q+5+ROK^&u8YHS7@c&#WrgXDbH0IYKXyJJVMv~kg@dlDvJarY~KNAD4gsPcxO zyvg(N-ZYglJJ4Es+-1n+wqu*--o35T?0hitXl2PYVJB~!+Mmf6#OOY@ZeXcul%P$; zWeHe%CPunK9;S}P%5LXcg6%)vUGb_NVM3Et5$EL6o6j3h_H_03#`VdoDZJ9w&mBRl z-XS3!?gHD927x8rIrxEz<;@W$W|gJG7EzW?HW0<~(e^ADi@9LC*XAMCGT|hUkb2X? zk3~D9A#x%$!7EBF!7zlhlnSX8sX@W|ux<04GbwZ>QwSOSVXAvQJUl!>+a8$C4)=HS zNtwBjpmjg5T%lf(?4YLyQNG!G|Xma2uq0XrbiSOl47Zz zL^?rng0H!J(|Tw4&#S}0Y`I48bsW4xMdOF?8@y^Br4Gl@tHS<(4AVHdiy1pE@~|;M z51za0`Z>YuO*OutplvZ8o(ij7K)kf3@d|Yi3E`DjP!5Aj z;~g^p;TQh;v+knYfIBgaA$P6pJHA%GntGlVhp+EjW#8|Eyu3}LW>p4LR$p0mZ#%e5 z+KDA-OM*qA0CZ#{LwLPHIqH2g@DJBPJ2*!cO?g^W#gcMe{hFnvdDv|QUifR!4eeZH zyKc^yPJGf95Q} z&Nvadd-~$qrT|a8h!>9TC%7|aKSP`SDEbLVRlw5tM2mCC`sHk&HoI!g_e=_vH-wAtw=0q7l1Y~)PT_9*S(VGK2I&{45RTp? zrm&f&c06BMb%6W{wtg+rhcrJ*vCNP_|IaE~qIM)Gb-{(CXpSw-1ys-M1EZ`&mDRz{ z59)Vz-Oi0YvjVSQ=UC6UN!|c%Y%!MF~3Z$OXCuzm3?AeD=%X`X*rPD zN|NbYQG=zn7_cmOh3fb5u5a}Kz_e9t^F|tFixza&DjUYS|rg=TcpAEk5T6M>?B2*R=}i?1X$X2O9m`0YwtR2ta3?h!t=O{&ce zG>>S!4X0kxG&(5loP?1G(>3t6tX)rkFh;+!xg@yi_fiWf>dc<>9Lj7JV)U6puHM9< zuFdVrQhq8`@e@n$u)nBZI!?@j?RHNVGkN8tvL^K{|7}EJ4wL z1Y>q^NQY9560$bf7p|GV8_G|Z^`x0XwmIQBzd4$DHT|zeNciqmc>V}l3|Y~vU)yNkyi~X;`hjSG-rz$YeJdIa9T&RZ9U&1@2j5%NpMH7b zAJF75<|MfrjVtQmlB)|J0B91QV0V^Trwst=dI$#RjJ{HnYT7du8mj6o*qb9Ca>7Sq z=tRf9V&|)XdIqK4iF?-+3W=}upUnQ2Yqy(t&>8g78RiY_)W-I`2<}JNjDIQ1G0uI~ zu5$^K-I`W#>xUp~B;MZt@(&%&Br!&B6KPZ~PicMj{sgli#h}o3)t7V{I(Dl{=?^L!j_7H!D3w* z%)LQ9oR4m9M(xCK z#&fX=O~3?P2SpRKA9wW;TEB-{J5Efj2KhC~0TSbS$)`CNabl;%OFxOT8_=)&hFtl1 zLO;5iJ}RDG^xDrQJ;?L>Kv}=M7^hf~JVfSudD6*7dvtLnc@6r!bSf|Cuw7|Q+5K^} zTN)C{ZcYN_1c=~%acr^eGk!3K>NC{;Gkq^)J`Yax;ZQ`Wcs@cHh0{$*RXq zJENakk9>Q7T&hrlp2y9&7#3aiwe8AzwSS4Gy9thftKeqi`!fY>z%4H~OG%XdMT%6% zMa|uN7!bqpdF2YeTR$n<_V)snPCD*&Lkc3Zk`hk2Bcp#yio&b0IOL;g*-AEy;;@3P+&e0F%b66{Geo#JxLbt7do+KUp$b`MBnHG+@CGbrP z5~yhDv9~2Zo6T~+=Fm5ls(SWUrgC10UlfEBO;7;?I)$%t%AgG|GjTB?TmQgM?bf0F zF2maQpnih3$_HOExfT6@=EH!v9<0H+mR$!N&Xbz#=8rKgmSY%$Xpn39$WO5w7iS!) zl~DNH@qYV)OZ_nx(mJxKH&}_Penopp<2L>H*0$-UQeni7$Zgiyl~CPlD8=zGn!xov z_P~@<-w=AGGd0)#QY&XzW;I$ZH($1SND;WA*$x;7b!Zc?iXsYJh_2=@C`A>^qvS<+ zmyWr!bT{d~QDY)H$*~z;V?5Tzh|%f>g2UZXCm-6@mdGCy#8HeO@-_ zOr*vutDFl+Zg-#}M-D8!6^;04a6vZ<0*$wMWjWKMM!2OdcQj&?F7Tfl&i4+xMvv`j zB$w~b^c2WBKgZI?c}Zght`RD;yZw}aHy=-9n!=?uq0{HM$e^GwtzQezC2QMDQs}uS z7c3msxvHghPls_{by(?@M>w99kglLQ^|A19nvX_w)YJp%cxN_!XgZp@?j7s>4r_63 z3Ow9d5f-?q3&%qvBonw_M}_a2POxUGHVg|7)NV$5YxyxjHFNjP+dZFb@1s#bJ6*3* zNRv?8CV}GVlxuxUaFz|=MQyO*pYj&Hr&vegVq#ztg}b8}s~R{|>-Frw>bJKZRJC`B zA12W&I}4*15`|@`eAGBDH%s>p%xv7q_n<}LU$a%sQ&Iw7jk0vv5r2HYV}Gm|7_RUHO>Exk}*C@ z!VaW(p0i^}^N}BYqFEIBu$A!a{d1ACp6H+m_r+FtPAiN>K8WMi6Lk}+AtMyhsdtc- z$=r0T-$$PI3oAv^()+emqi(48_}+p>)^D2Eo;dIi@~hb*pw=iS!SSGsWJ`dGOAR4J zYGb3wL#h1;>*O3|7){7b4;T&pqUa`k55nO{to~XOx%1q#6f4~F;n2NMg$4Xut6=&C z|Jprw7EDThD^DWeau)w;BX1x%st_wO(@jo0z1BD`PQiWi1M*Zdzh!{)8`p3s$MBtD z_b2q(LJ{WMmc)zIgP)fls;tnWV?pM}tO>=%emvn|4GKF~b6jRyPfcgI1(jdT*y~mn zjrL$JxU29`8Lb`bN4Rp#r^b7@2vvnoErET(0<($j*4*Ise}(N`GKc`GW;SZ zt#Y5)BRkBNc8-rPEq-B%SKb=z^siMuC)yN%J$S>veOtK*$(SOp2-aMht_VJL4HD%T zQhfEc$WAehg;VJRR2iV_FDIEHURXn5_~*@%-XBL9+{ywu@(=ZL%zAbRq9-^i06R1q z64zqRh!UOS8wIBg?7{xpHPxBYo<1flMg3aYCCLeyv}_SPe|r{x<175kmM z^opFMtO|r#Ea($fEPKfJ>GMK)nmJ!_HmYVty3-sn8PBlqsDd zR|OUb0x}4&<)J(w`AtY0^+H5LFvs&`!FQ3ri&)V!=)vy2T1TbYa?vXmWq?Px(@Z4# zx9{?zVf&#M@x3Bln5iRNv@#GArCaj7^RRRLD+}i!W||7|kVLV6p-fGW&w-~hOESn- zocW{tLFbQU-&~g#Z##^64_M~_sEO2tGnQDQPE?eF>=rI`QUd@{&*n_y40^xL_0p+J z0hiq*!)yR#iaDi|a6IJ9o46F%ea4r+{XNd<6-!Vh%GE{P%fIvdRa z&S~{xaWdt1#`=gt4(wVS9;<2Cf9F4tA?koy8dVfH-DyjnJ@b&aF}j+gmuPRz{w2bH zs1ZZg$c#fktmztIXKSEun*(U4w5z-iKF1^VB8&*gy4-l3gbqyZqvnJYi(u(vMJXwK z1!9ruU581jZG=YAWe>lrD9jCn`g5G@W zihPN0xUsjid+U38tR?C)G+^P&IIwg(QP#9sm(zl;fvhXb)FMnVB`A96|F9WX$4v^j zh8Lq;ZwDtOfA`Z#$q=C{t4w+J?Z_;Jx~KX3i!zP8QAwQFIA_Mv={J@Q{e7)Hr!8zV z=$ek*SU-LJN0Cyf`kB^5qFd|I)=ZXDxsam{xt=GSnPylLjjxy6Y1$`V67QW$nN8o* zv;-V3$4CyW71JMjPIwe&W~S>~8ecUN`>sPB64`aa-i+p|*Z&wd~c6$fw@eDBJC*Y zG>!}SeI9n*TaCsJxLtm8wEOKcza_?kwUcU_#qP^_W%%T`VN19d|57*0v!w^$1GDKK zcRP%!TjnkYSxD8-$Gk9?+gThu=jTlIyMMPOi@s#?1 zRvz6(b29~tm~=>#BhIbG2zGert;92Aemc#Po7TB7r30J4`Q3BD3$#-C#2dSt;hQqh zJwQ#0Hf~aF7(}56<>QTd^+Z864Tm&N?G?5Iux40gi%?whAkh~0rUH4ZmmR(|6(Fn_ ztJqzABPK0Mi8%ifZb;Mn+}xA=b8o85Mx-8ZV|y*kvO7tj5kNZHT$cSbgZ3sMH&E~ZzH77 z=`H45?p*{r!gIH>F>-;&-30PP7|>uc%^EXD6IRY3F*UYmN)7j!dV*SLlE{H<{O z=6#x$#lW{y9fzjtty$8eb=B9O31LUv7U_$xAH7QUjTy#e1>r?-Aa|=mn~yh>)#0ji z_qBg*TCvtWWl#&0gg99kFBo1y1d+92_M*uylVt=ekn8)`AmQ0R?MAY6&(XRd^-p)q z%k*&guth7=7l&#EK5fF2mczgS9esnxW;<~lj&}1u>E+S3F3%+JC6`Z(6|=cOHs9oy zI24bts)B-(N!Kowb}v$R!HDFZ{iGAqN|lCu$O2KYV%x#xZ6H@t$@B`MMLD?yZBc1_ zt(COj;;ZBxoCYZCGHeUsMC9VZHQ9DhSOd&VL}10MgHAQ8U7;~a?CskZ9&6|N;;$+u zSe_Ui9~KGW#EI6~Fdg{c?K?4A{EFWrVWoed%cV&BIC$fsrIHxA204IT{&DNN2W5Zx zmCs8_#zLc4%unOsF86?YcKFYq;*&PUvoasToD|&2^cU;Xt;A@mCv!?sy8;0E2h};h zg_iEH>Wm|U5J0%}q@d&;A5TtA$8l(!|j|_A<)6WOM<^5O(;XmJzqrdv_}#?R6pnvC?p6|j2NmZK zcGF{e`d(HqMG{hMcXxmor>n;UG)0J=b0XG%bo^Fq+e_$2*zA?o&Wv*wWb~HeRmcAKa+l*KSsL5LQ|&|5YK)AyQK9pw|{GI6I4Kz?14O2lB>?wGqeqZXW zzrWOnmX7b}F=MHT-Ybslf%$5gy)E96Yk%>qns9wiezo9ybda>E6-c-6dMq>4Dm8FO zXZO+U>y9|$k0)G!Ys^@gw*2KApUqpUX?J_1p^Z)}|&|SvwFbuGNI_ zn{N{Nru`Oe6mU~lC4XCaTXYd8pieD!e~BR^h^7p6reQa8BPVh-@?+x6&SAf46CxaR zWAQ|O%B>r=bfsWda<8$|zeR1h!8|kof2R}$)|V6}&oc-7WiNXaRr>agrU>abw1QC@ zQ(WKriL)PQ;*mSw|N^cQ~|bq5F#gxBQ}F~%wsk-~N97WLnH$wmt;M4LIo z7=xS1;YdK)DdizW4Bryf#CvR%WNjg+m!(d$0u^xUIt8HYvLMcz!X06$|LcH2)wv=% zEeO7=VnTJ)u?2XZV9we5bC-c*`&8(Bw`!$5vmUIO=F>gd~}5VCK|!#y;-N z`1^sOWGg`yR?3wd(3Kob6+yq}X^I#G787rrR|?(xblxEiugBPrn*k{l)CKrO6FK zc+XRnf+uL&4)@^~zn)`8gr~|3+%tbm4*wc?fWJ10=Sd-}XPttxZ@?Ft03|Ro6{oXr zIc>$g9n1Bma>S#NkGy*u6!@9Xv1 z#pM-X`~&1^%cKAG3}yVQ{O!MP!EK%tA%m04%cpyq*D^ zLX3JMj>jd!Z!K=Z=n_8hIv{8?7k8yKr zH%ci%nDFpH-?cLdXcJ3a6{PQZbe>E;&keLAJ4Z#A=DBwb?qLT|wmlOjE5m+{m@YLT zj~51r89q^53|LEckvZP;+j_45=q*%rNGf8!eJ(C1))cOV@pm$haQsgVXDOI{k_lCm zzc@cDsf}}o*-w;EIDoR+*Gdzp2DrKuPoBJK*}y*IEEfP(xhzN*jBigkSJTW#gWaV3 z;oJbvQETf)j|o6LK%YSWffige33PXZ)#D?x@R`vzGV@$rRsQPH8Zqj+4Pu8?TFONmb+Yg}M@oEbEeN${sJ{c* z6bBIRF`$?6M%uD#VYL3v=|V9PP#98R#Yn4;HB$V71z;iqP77-CMn95^fDudYqhg9J z-t;ovVYQ;o`I--+c|A!&rTnwf6W$O60j8LE$lqc;!D<(-alZZHfrpKcjdT3_#DtlSM&e7b2|RtmzS zzm{Ru5iu!}KY z${=6Lx4hh3Hc2ZGf|QjU{;IU}?D~b$kcS>NsOs~OGL#RT1npDlzL<7}UuqcsHtN(U1)ZwA8mh(-#R6+zaYmr%S(*j>zqtZK9JmO=yhOrQ{=G z4BYOglW9R*>6^G=6wg8qS5OuO89_O>blKoLvbO~ED(~bL=c8LU_w7Ju^!R%T03Ps* z7cYvHMBA<~({j#nnA0PFMOL``k9NC1xJe(l0rXfyb--aTr0H~~0ePr`=oy}2@K(4Y z-{7@4Kc>LaZGHZ&rmBZ6wY|PCue91l67IA#eJCStD+<^=@Dv~C62)d?N@E93(Dm*T zd^ZPZg7I&&c)`MpJ6DmqR3=(nfOQaZM{f{nKEe6!a=|B#Fbcqf%Swq)2XlVt%K(9E zsB!}bu=8f|ZStsV)BzI^^}=3r5_p`k0IvUPH!};jkW+iT{fO!9Y5b7ki$_?W8NE0h zDEos%p91wc6%*cp zY$AY0K}W1k{RZPi*ol4f_d}sO>9-{JR&Ue^rUFpfx`jX%w;eev{_NyYPrU6m_iVtt zG5{q^-bRm^jxl;@-|&4|8dHWP&k+9$d@260SPz63*;(k!RG_E2>QT6g2e#r(huD~r z(fWZ9Hmuczx*&%N6D)M#{!~oR$jev!*?3xUjSqL54|=LNLQurMx30Du6Yn+>A&qSq zuTDHZ#Z!U0+klkYc8P;i@enRl%1X=!QnEnpn%d^C2EWCh%E3pN2{qbA4Mp_z#=Z=I zl+(m({vO12Q}yux$lwi8Hyx?)zI?1ui!L(7h+Tk1<0Vf`X!R{te1D3t|2Cbl-{LD1 zxkFm---VNh9dS9bY?wvsNKDw1;amT)<4mI8SI?~CFn?#_1ZZM^3J>LNN#MPH$Uj0~ z36!V9yTp7JpAWqHwM#I<4J>}fcWUF0V(EO;MYo473rxc=tWswEVe%1-cm-~=0oufa zdx_5^=`pJ_Xq$mP#GeJmU>EC`mm-u`9n-8FL)TI9VnoM+taY*>EW`zBnb( z1b8%J4d9Nbmb8sVr2)vt3Ct{hx9)0S>GM#|u_vfwEiTDp;);(u3|9G?Um-8X#}NhPGj&<1Xe+`BhHsTc|fUrP-Z#EAlOvlu<3|1?Yr%JE%``>`HS~bN8V?;W`yrOp{Bz+PfQkJn!h3tXD!51o39G#YzQ(* z;)QUDRS|g{ZPmcJpQtz?%9S+}K`mu{EZ-CZcyKAU)plEbR9&OFpsP<($omI?Z&+{&Z-_0$!z=dAg|3%KuCwjPEX zSZa1dLtZv6YuWuh!E*GZKAXW6i;Rm%rZ4N#f8+(+t2wH#fecN%E)aRO2Bl99cbJMX z6U*+(H>KPMkQD+E*9?m7J`JPbBkbJ3U7GnfvOu2oV`P5Q6l_K33%T|Vda6Yl>s%AC z+8sNN6AE>V9ryStRHpl0Mt$Ub%A-nO4)6uQl_Wk(!aDAIpZ#V`q|dt;v6iRdNfO*} zo5OuxkWb}&zMJdPX*^<4_o=*kRP2*d(Qp~!HFw&N%k+3-X}{i{xuzSrtK(H}QTgJO zUqX7>Fv)@0&9a#6B4f^avRA;G`jFrUZC&q#(_?%X-Y2Ni+4|X8&IlU1eNTZ67`xqq~tBjR**c3Q`*( zDFTXuNGd1|f^=+jNQWRf9uN@e5R@39lyrv@A|c(eeD{7jUr+qbb^q_H?iq^aE5H4e zeZiyj#?lwHnIpCVfY`evL&_H<9s)OCiN!z?aF)CN+O|ibMibv#(>1G3R)rN)^s?o6x=;7mPZ=Cv@k$S$ zx(ftSGCNalQ2$50(swbSPkOFE?x;4h?-j|G%MJ+?i*H@=}j5MC#n zv>@%U8Mut`&Dm#_;(!liP+NWs@!O9Do94}KQB2QK9GDAp&zZ^sSI=-??k``2HAwgk zmF~j}=LI(j^i!Bq1|>n(uK6~0C5vW~(`anX`IV25_Va7zw35&2vp%*cHPd#PmqKT0 zJ9p@7uOs`$>Gt3INEpdiXeP3A%p$HH!tKGXd>Pd6+&Sv4)6cK&23ATODMaa0l0RvU z=t6nyJG^jo8)TqnJ3;{o^@8QDZGT~>9T{*WNQwC7*T#5*21LKZw;Sb>& z`dr4J9%Z^aN@Kt_ANAD8$lE=;g+u^8^UA<6o;#Iy{0jpBC)=j==Rt*h8)vq+`@~rl?C(r0l&&YEf#m- zDB(L2)nhAGW~d9iRvhWk50g5-smFlgfWxSgbaoG4HZ;FMzqm+Y7$n6^j`0Bpk265= zlojtH6jNRvx^IXR@$WHb}}&cxlfT1(!RRg_4@jZC46%t3l|LIg^{YhCfpiZuLm zeQfW(XWh37le%)St>5mnp9-_k3`On^k^3Kv({|3+OG|F*bC&MC5gAgx9?~QH7&{AqwW z_9}iC!K3-zJ;sXev9Gd9JLP@s;a<$>%ZJseWY>5@2VUArRHk7x>LaX&0A~u8kM5mn zBZP}U+}M}1cNt75%lEMl2RyE*$P2sqeKhz1cP*;(uoi z0gK1ff0J`TVhs#KPgNZw>sO?%gVfAu+uj^}`T#S@QGe#3W7Q6RTYAdQ-hOdm(79Cm zW{YxAF8jEzi#ZD>eCD7_V> z`@*aE5eh6YMkOKboZih|qAvBE6Uk|MN6CbZ04WyKquM0(I4L^Hkbg6pUP99TC|lUB zWP!oYI$c%_b#rRGYH|yW*f2D|cxb`lYXF_h59^Dm$XubYAX#FFZR}@Rq*K_tU?kds}iWyI? zN%R40U<-MX34k$~=Uop_&CBQd6t4?L&{h2_rQeZHNlEQMa2kc|)_YqGBe*G)=1}Kp z$AHPPzKURjXrV}!y81M@k!V;B;>s37J(c{*Y==wee4q`P3C8g*MhokU4@Z%WetoUm z=fAf9xXaBW1yg0uyU|UfxLvV&rFucBI-na4rC<>TAHHFLZtp2oAB|KCL;2AcvbIENxVW$&y%kM6Evgn$EDWUBn0kDNp{ z=2!b|)7svQXnQj`PB+$&hy!jkrFrm)<*+5wZe{ttE zhgV?G6tD>?8Ml>o>}`#R1sPJXFj6LJ7vF6Z)#nZU-65@Z!uLnKVk+=@O;j5D=&lYS5*c+9>L8lB_Pn_s$mp>rvLo-t2 zA*2?gBO(e0;cq0ix7>T~-1!^xJbrB!#jq$jlr()E#}JR5Q~}gjQ*MBsQ_AyZ2DX9|M?^o6REZ+? z6Bto=876qpZwsn#&q>0-*vjums0)*?ua%kMh#la2*#U#HJ=ve9Uw;%3%Zwk$315k@ zc^Mo%w3V&~(w`(lY=J6u`WvD-p!lI-n%#IacV(L3k(u2*Df(>L*B*152}GVLmqMFR zKr8&~lSvuTaz@R6C03}wtdJt-jX!qKTlU(4d5?+0>Pv(&exSu;2}k~2c$E#z<<>YogX~yS=i%ZLT~DFZ}vqpjIL>4V4`F#p|B$ z0oVxYJJog(5C!U%NkZRrp#wm2JZ@0l6?%~JGD?O2L)!BB9hz^H4vA0U^;mMSKS4aMBZNlYNzqaarMu1>)aK#uxdwEyu$REn>%b7X|Bx`zZ3cPwG7=H{3EZRIfU zHqYF4;mQ>8dIiy*n0_daMF&VO5OdAlkwCH1l(pTPRMok#`niN;W>75^aP!xca(iDF zDpHLa&P($hJ9vni&gB(N{?2-fFNnp3{ANrybr5pk)!HyneG{&30eoiIRg)-ROlMf_ zp>5$ioJfq>47P@c{xDVans0~*l)euXpkLX1TJElm(f=Itv1|$aq~X0i&JvIRJ$d3- zm(b^b24f3DD#Uglto%S4UZKuvK12cMnKEgt%k`{+;^iGatR4+_-05Mu#yK(ENmIN^yJ z^Zl~d?1vfPZNwGPv06KanGpr12YG1NZpaLurc!S@=l;#JMJ^M86We9)gQ57lV?4SV z<);e#_rX*}7${ZP^6)33dyr(Khs_U*2p)Q%G|6K@V&%m?~wSSl%>yF+*n> zJYo&wDUwgIu2BF%sShKkf@XZov&0#NNOV3&y!g!*pJ5J=?FYe%DK+%Ar5YTtAu|s( znqO{b&s1J6qvnX$E<%z@6mKt{e0s-8_tV$rE8R90foU&fxN5y7#e##`chD>$Xoy$l zl(sO%oVyWaK9aeN*V#ZH?sU!EN_Qa}e4iylR?R5{l-DUhBD$=FfyfT~TcRu|(;Kwc zS&-s6wRP=V`~DiQY>hNl#RSX5ih6M>+CboYj)Ygp_Xiw9Uf_Bi(0B^;sT7QD`nt!= z$UG-Uej{(G%)P+=zJUGscJJ+wM7D&&2DWn;(cS4`!O8})?oXj7n?^Z-vJG^2bVb~2 z`g~dEnt#jk#aoXr&iE;OpW%IYrw(wPS@+|kJF9hpi2xHu1Q29FjXTnnKTHw!#Z#(`xbKQPLzWMGA|I~Ssc;eM2(^t18RN;zkOKw zz7^_yZAeK#mHt5i`h^YEl~=Pg# z8+AHF-wVo>?`>b8rpMX2en7pDfEt;n@*ofX_xNMx6eLOOoQC+T@Hc`_Ni4h&v+13n zQ&R0xuf4i5b&JL8$p7MkZh-~p;eGYsJC%3gW8nHU9x08JjXQ^g5KfY=Hn<(|V{Wh9 z!1i4Ib;+K;jAawFnnE)-R6crNJwNB+*9(#pFY7aIZHnkAOQ-IULQOJ?o1U&aFZJg| zgyU(GnhBvEVc}A66!_^geU>j_*CtCX-F15H`GoX^H@2)6PC z$PL{SY1b6BX~O`xH;u3H?Fk&bA(I9vHXl9~-K>Y$T#Qx`@-WbFqe8?ElobQsN-% zbCl`?J2xH0J2F*q{NQUOf@F6R(qoc7_PQ;0HF>J{ZFI-wU> zn4APUguR0Jmr4j*$Q?HG=#r7saT_#70=})E1o2ZHnh(NEjHN;_fW}j;pgaKwj39lT z8fLrM9n*!4wO=6_hLPk6fG*j}e<0kctuxn+EFT``{zKzc5pIMPHB>EFR4csWL2&+q zpC7($QJIr6v-X@0e|e4Yb_(YaT$-p%|c3^))L>iFy|mqhdNh}=?j2w7*L9X z{$c3$tY!OvNuvr!*5lX|X25|sKlnQQYi)usNZy0OF>0uD#9duEL&NWD&Vw)C7BA5X zD}8>2V58?43+GJ3Tt=+5zmfJklkJ&MYUnRmpb|(Aq;CV;jDtpNt^Af~u|kYWVP(1k z2w$gR@f*&u0Yp7Kqwz_y^fJ8vKrfD%#r6BS>o?%z73N6oJs^?+tkrEB8+hy_<7F&0 z5uG@ooZRu3do%g`M=B$8y;tyvMXzw>lHZAZ3B3`LY?X@FYn;VAD7I37x2TCv=@v*P z=6-TTo-f_aGDLFjP^*DxZ3c*G)GKK|M%Il3M&$#Hd zVHZ|HXATM6TT7YKd5J@_^H?Y_gr%NF>LY z;LGMMw`bBA7nFWk|R>z3g?>!C|W%X@C` zidVWxvr2$Gyy&SMSa$B%#7CPR=>)Q;V4}WmV!*^so%jjVF2sG>L(3`M1=aW5qU6y; z!<(dEt6gbg81q*C5a0zw#m%c^iXN$xrR1_U$b`b{D&3KO<*4w&*(^K*g6X9m zY(84!V^~9hRsK@MafDh_5^U&P2TUcux=9UOBz-IFJaDy3a#F|7eiGV0dfHdhhB2as zmk=5bp`yeTjL|C05~Yf#CQ@@TfyTtLK~$_CKpE`15M=TbHy@6?Ye^EcQ8(4uE)@P| zhPnM3(UXR2ioi9so;5HD${@Al9ANhqv(!yu6{?lJDz}Y<%HL`$t__@?XE4R!ukRZb z5OtZJAcO!$ceM&aLoo(TGu$qF!br7^_&Wc!tDGTqlJt2y=|NST%%qAMLb0nhhK6)2 z<=^GxQMI+k_l0}Pl~O38SE5W)C01y*Id2CIQ-W(I9o3sh|%Y zg*U~k>IiPWrXIXB*fz>pv0d(xh3}LWt}Hhf-jx!ECbKyX2Y7D3wDBR@+Ps(^KFDIn z9u{}#)~*dqqbIL)KBF55uPyPpikr|Hf=edzf&b?aRhpp4ctk(eXb*kZ-xLgH`a~=d z^DQ^6u=SG%utA?f)NEwQu5%+1&&v&%3fjV{fO5AMQm2FN13PwSvW)U=o|C~YC3mHA z6IxW4pccfLgGGeJ_|Q)M9_(o_li8i{+V!1_l@pz6yD!UJC1g>ctcZ zkv2VS4}6*4i{^{r-9(fg)e>NmD?6_b`dt}LxiC@xu!U5#qu(5iYYeY`9}B`Z@X2q; zVR?JdXeubCc*My?A7z4Qw8ZwiMWscD4nl7}9#8p|% z`Et9}4syA0Oq$D$UbQ|saR_Kbr#XRcJzM7p>e5SX>Hh8o{!3$Ak!jms19tgmO42)Y z!R6#zU%v}HmC$W~NJy1$CD7Eeo@EFL1iIA!h4t`!whp3tiYC-fWyw+S$1HyX>z9rm zoY!S6+sL5XAPNz3_)@X{d7hS?qia6%kF|=vMh)0MDqgVrj(+AWyH2*U zcO$swFRh|lj`7w9c_uTzHe*?~G!EIQd!T2EDR)(EBy=UZ9Vv`iQXgFB7#wjm(X*?W z2Rv?K^Z)-Yne|JDV|v^XPP%$nC$%lERCw>OA|T`PJo%Mb*uWo=$ik0!(2Dgv&F1(Ao6*+W*fifzuRZ`N7j6 zceG`UUv|X68Keuok;rj;U3Kooeejq_9I}xt%J{m7DQ!HKBEgo!AB%ZexPWDLC7VJiAAT5O}4 zD7EHFWMTo{;fq~wryQ=ic>(n!Fsm0t{8J)zgcz`u#){Q%DtV+vo#g ziu}Ds$eHQ6!9%zOJ{8Cd)j~W*__Ztv20tC3QE!;96n-tR)Ta^NQuCjxGl+HpAN_Uc zla52T7TB5Iyl)r?36*$EoTlKLq%aMnhjRQ4q7cD@E|cu%-6RU6gHJcTi_T+=NH!?B zSkJ@ZQO)_vsEFV@g}Xl&@fvkTdGmy}Z6nA^S0=1;o{+Q$gZEE%iGk$6okY`PN6-I; zlfIBZD26b%E%Tiawu5<|d~5dM2&@9PQ+49u!9^0XEZt9% zsT?h+Wv!-r*@XWZK6r)gB+ROI;pJkNGt4iY)?*a2_6?F$>(*p6wqZ->jWftHhZBa+ zh_64I#>;6QwIpLY>c*h%Ro89Kg2x#}fjf^kpw26VE=3}Q&gYroD+(oEhW1CF8dvXg ztZB!oKcGE~x-+@+>q`hk8s60i+~J}XM}GAesv-9j>1+gwe7Kg?D$^mCKl#+-JH54l zm+YbUK-?UG$0wgnu%?XrK-;z1ug519h-`0MYD97ao{Z^Sh}mCN>Yq3Zokju%fB)-u zC|j^j)Q=`|Mt0Vxh@w5tPx#I=oXg73(BC0v_ybx^F+iOb^<}l3Iz-Kc|(#vLBtFZkCpF(F8SWUfz{0n z2DfE27s|D#NdsPVpaq_M6y}~p_=4X)YcE?nVV$LPyv;pxJHv>vv<-ReXlY$H{mkDJ zJnN%QYg|5sYGSMPvTLe-OlC}L0g$rbCZLX7+1SBoop77OX>X43ns$@zpIpmAzd>ZGaF>s`*d+J8 zBZV;o2+yWTP~B4V`^oc@4DD3;dK z%!i5ma&AvurzocnyeScD#Qe1W7qG-;o2Yfgpy6frol9gIxvEbNUGlnhyZVY0fa1y& zpnr?zDU7ba_l^>0VK=?m5aQoj$Qo)f?sS$MB{WbAUB~I@UA{SRnx|QsaZ3=$-ZQ#K zytMf^U)P0Vcw7plz8w%9mAY(bk4--;en6^_J`*oV1iqb+0}8s0X^iymuY|X$oAz;{ zu6$;1bHLF!FWIbz>&|4^6arpUk1hl<(gUkTrE$?ahn_IBq%YV)Kn+Q zeao$m;Tw#&ANf52O7DXIhO|52hy3Lgu=dFP~%Uk#UuH*)1?7!hah!|DGY-Wl{+Mk@5ylNWqxIeMoH8 z)3}c}-*F(T)n`qVf<4BtFAy{SA0&wyLSX{-DHqjg619O(bm3H})l0ILr|?{`E5l`h zDdT&DUI8a;;AF&~H>DR%XfpaV|3j-#Tz<#)11b zCcbvd#_i%|*aDhMlQr8jx8|y4^b6VquNrva^7%P}*Iyz&ME@D05n-c3bj11`1Q;L) zR--4!H-FNipl{eifnsv|0MB)uARct~dMG_`exEjWo4)CI;1GQ0dMQl|QCbVmL3ROkKBG#X=213RhI;#_kqZVIr%|FXfB2Ci=| zzwXLp#s%`%)K4;=x2EEBFT?)624~OLLcNGOi+=s*h!_!Kf}W6(&sPss%Tt?wZs`0? zT%6^B2X`nOGf8l}jg36*qw8$4pjQi@H{l88cTn*I%YN*(r?F*8z3T*)ZLChA_S9?y zv?%W$Fn%liU8rE=aA%3p{F~;qNA;3%zN8161za;1Y(jP|{12n-$DTZ4V>X6)o3|q` zB8lsMp-+AjM~I4hlm2fgeiMh2L!X8a6o>^Dh_%Pi-3Bk6GqY%*q`|24T`(7p_gJz7 z<{G+xzPS7Z>qktvu)FY{OOEZinEX+d*|$uOr{gD1ono?lZK%j!Oz4;3mp+C#k_Gi& zA>M}~biSGPy}2^%NfFWGe#7e*_v7yP9V!B#1=*ss`q*HD@I$QqY!I;?ztR4XRXYZ? zKb`z}V}U&hLaLtvA*mE^0Ede=H9+ZP#U3>D1}QJg8L2)JN3y&URACo*M^l8O6vw6;TqPGWgF#7>YAGs zf@Y$jMm&8Qfc_2g@w*8lt)yZPTN=x!7MSIXvyb<=Ed^OFAC-2;>LJrZg?1QY7x}6{ zv6@WR!tGT5G=8IpJyan<7!6yJqbT}=;^qiDN=V&5UG z@Iy9)+)=gSgY*LWRLqy|(FNRp7@4;%$*h55-s6B4zHCozmw?COa#ZyE8Q|FrE{Wsq z2E$#dCV0a+#%+9(BEk5GauX_snbYVRb-bOU;?i1kfjuewxtS9RYP8ZcPYIn<;tf9} z8>`E$Z$>krbH$$e0E;%EmIWg%mFqjzPFvbOu!@WP*5}KhayL~ zPT#q9Sz;+4x=f50GpJaiv1V%38^r{t!ojcCBxMk$A?G{@9V_B5v*lTA)`;5cJA^i4 zY=fn1DBsTL$2PM*Y|}y^%_XZ?_y=x}<;VCKnC+y%bE(Q%H1h~nCjGa}GGrPm)|t%_ z8NNc-SOJsH-ehFxN}b$2`KpJ&<|aFt#|VhAiFUrUI5K?85H16h0___#(k_fT?ajX8 z!&!-bHp-Y6)0Q!?6(9C#5xH{a=R${u&)=}}H>#35QOD0mdkwHFGP;Ka5jWAFh!|yb z;6mA(QXOx6eBeJ46v9p<(I2-z=Z>B=7z#7W$WQ_7As?84MSR)@Z6^PHH38r~36M=) zKn-053$6H=Q*`&fSuM8R{%Cvf{6eFim|0F}Bw46sNxfkBrSw;Yej*^pMMXk^*<6iM zQYNs%gqvyZ_+h9SJ796zW1DToAq|Ll8Vc&8+A{qvW;$dITvQ!&fr)%wl=s!0Z~tWU z9vKfigQ)1cc@JOY3!{1>ScGn0izpDM>Aa$5B@mVg4rhl#%C)z-UCgG23yC>_J6v!Z z?vd~LcgJ}X1^A+7(^VEO|1DuS z<-^7=M3n5Ii1L_ST zEY%>?6ZwDN3rkmQEw1x@W`ME5K8Mns8U=MH4i;`E?Rj(-&i^T}tj8%PC_Fds)I2VG z{F0bVjYE{YDh@Hhv+gLEdnE0<-NmMmIE=v3xz}_l!fQtC6U3XVkS0QFqre6XiV)EZ z-L`d*!F1rx1K{qxa)~R@9XFaSts>)5Ia?gKK#_tT+^3E3BTU3$l6LHXS&*h zE@YehX%jUwDB1-_z%B|IJz z1o7~B@+4>od*VU9cmI@GMyEfJc<s`>c+otk;<-nVHGe>j zgHg4=HPO3VePr`tl`~Q8;9CWvVLp$^nxk*^Qqn4Z?Q+av`Q-!9LUrGpU(cjCT)z8y zg1K2b&nem)FKp+6yb&{Pc6g9o$!o5PX48Y-=QrGad?uM3!So*-GtTFs#_}6*b#UOZ ziA@%BkoCBiiVT+GcyRsj;ny;A4d1^AOmCs-THl4ynM%PdQhT=JJpS8p1HvNYuM4^; zPzG^2*RkVtF|l!ytIc0ptCJTpv&a}@^9Wg(A37Y^;e-l)PXr&s#v0VTd7BDn zg(>2>_4WD?zy#7Er>f0wjmR`&*i1ASl;GRo4SV(ctQwKFOMHJuEzA5p4Jwd>)Z@9^ zL{>0qQ=9D#$5Q>Wjxfsqx6anUWxaYK)0|}}&Mm3Vmid<~RNOv>fGdkunnWy9(QOv>?6F4n z6FwH%-%%=pq+9~=o)%q_-QBfSd|^3}u!ydVz6cErZ{D4!p!(KP|7k{z(6BuX!%A*1 z6kdKTMqkysoRegHodp*i^uXq*n{aaXhRj4zzz3dB=&{b2j2Mhjr0jf0vG#MAP+GQu zH>1^ZGEAX0$U~ufeyk3=dFopHgOf$|i|A}&mysg!T5V!vVSax8Cx1Nsr41K&<-nUY zlIpTbL~jlXr_~4_gOIK}nU+`iB&!2pE+0Z_p=;HI|hwla%R~iCGZ=laXL%z`RuAb(9KHl#8 zT?d*09y#k~twFHe@97=ot~2|bWy_?niiP=E%w)3cVfIq1QRxwc8rJvktR`vFe=sB) z+(VeT8&{JOHPP zf!P0*gVW)TRB$iy;4tNxTN10!3QL0zmln5^iC4>JjD!p5nC88E9Wwv9FgFKP_?$U3 zVa7+xB@3|?-!NA-6K6Gr=c4`?S@{Qx;ruT*Iq}$pvSr=Sr>mQKAb$#CUT#pm7@U~9 zzx1S7XJRDCq#Q4h_OmMF!Dds0%$vMW-Lv~`2*xPY#zgHDW9;f_kk;tglHLM-UolZ9 z_!A8NisMBYYQh5eGW!p-JCts_-cG=jv9kB7_}Mb)?;PshuPWHK4oM#hD;=SGdmGs~ zz!ABzGEWGv=SM3}ZI6>U036S7*WOw0VJdBC;FpBojE5c{ z^kIP;2Lrd4w+91Fq`OFoa_9TM?P39%<=RS)} zg|viRW~d95B|8+U9v;rEX4DF0eCLloOb=FUN4rBrwo5R>rs>*t)uX@*hZwm7{n23 z0q6oHwHk0&!*u_>hln%QPn^9A4Kiw=YPw2h>fi@I@_h_xdKqmyW!!pI1;I9fG}l>0 znKn_kHjoGG5ZmgRcWPEg0oQJBTY2la1{)3fxsfGTG>j@@fLBu|GQ5X8B)z80`S6gk zM9wQJf?k7_x(<$Es zt~+I_6;m(4gI_R|kIAG(CpZbvYgcO9)?^pcu;@hX6lNt_pEm*eRD#_Ko$iHdIlNqrk0s+g4 z2vqf|gNGkP?JeS)6kb33H4_4SuTFj|@y6xky>q4YY}yj2eg2g+sx>*8Jr=Eb9ciix+&=qmjRT|i2m0FEec+#b#>KR4~UH^45YndER!h4kD-o z9ZBFX?kManA9ox|RvsnZTl%;LV|=WX@L$o9e?s(se4nnh*xv?y#8RT_bd#&i)0r09 zCT*~Did9wqw+>Jvgh>{3hu4#)84oAJP7FvRUrNM&MNhOSKE4B7nyvdLvh$Sl@MkKx z?8NwHQO`E}*&w3e&0nKmstr9s+hJwI{osL7_7tA58V1_Edr>Mkq+eiv{1-Mlf#^u_ zT-Im|BPV*O&DrI`@{@eTp%xj)W#J=4Q|m>syCRPi8G2$>4GEQQgQkf6WPts>6#k`C z!&B6+lb<$u5V4g1QkC==fHdZQrSKgETM~_a!f1{yv@Bg@x+DsaQlM7 zrG}C7jQ%BqEVGvJQL56f$8NW%jdfNGU|nEb(%nu1@RDK6EmzUh>E5fJ=z@XkZ@or8 z<0*%#R1M59Qptm7gZZU-qGLS&^_Mu9z30>2eBuNOT-!4eoyr>BOzJTTCLJ-F{(I56 z9$&EJCjwJjE@Nz2S_~>X0#BYE}jL&yWv^2be*G%XM(4+`D9RrsMx zOBG@P-*i9zkfq# zB7T^5dhmv7AA5%}df~=@k)=VofhofEcwfqhuGq!}R>Kq32_M)VtGVw(F_o64Cicnu zE@R}kMUbxQja)Gjog#3o)g@%hd~dw`Wa7Lr0#p1eVK0UP_G4!A)>5PAvE0_jjM+e3;zz>xU9qm4CK8oO8w=n z52#eCTrv%?0NFUiGz%Hq5z&Ny_VQ%49BWb9ZEWEFNsvlYj`~{(eOuRbB%sC{R-gs> z#Z;7guRPBJyv`D~$=Sex?bX|ICcDpXx1Vt>a5}Ar?1S6uvoCGStyd64^gnc2UN3KO z8#vIooGf&*D&|QD^?^j05v=X(iWf^OdF3s!KOi~^6F*G$bN?(M{UN~W#v_|o`%XIP zd!MWDi(y$}N?F(C9oi4imI}MdH8v$eq9-Wai#owH50u6us9tK~& zl7ldrB~gBxOsPL%rEqYAb0=pAQxs&LR`N;3@n>JrCI#w@45hCvm6x>(z;H;XAL{`O zm-6E8Yj}BYL+rlUo=J6o>%#3QcZkYP;0l8h}9g5G?o-}Wa zP1z@u7=K9&COlnX*Fweb3F#YG8i@9fyt2NxtGZJaSm1Z|0Xo~3t+uF|+18e-EK`4W z<<62^cVehxor<~PBZ7Xp!y^M*+@m|aUql$Cebh47X(kG?rxSV>d$V2;lue!` zdx4w?0K0vg@=0qs@?0_xlC}PtnYud*m(GRg3Q|yi&!-=tOo>H;&=Mjvk|F}M>G6&f zc@L#h!!7@#c*^6?&8+x4&Pzx6aM1d@_^-P3mdvZw7|AlHgrJ(!yJaezfSC~xYW@Cl zkmEq{q1wxXR$p``?j6hFGuG^f)Arah=exgNgu@#cC6DA)ZEVDIR5~WMmjyFn!*1zt ztBD=^%d?O5j7tQav{|C=?XVC<+}*o(M^rBN@b}hwNUqI7WZJD4LgDO=;51Rkdh&bE zVnw`iJ10@foZ`=>T9kL&?;5y}rh0px1ge(e8E#f}V-I#_P+9z#H+kx_E-8$_?qkyls&{_3SFs`{L~p=C#@BmS+B16{`+gegB{Q5z zfM8X9jmud%p|@Qkzw6wGereXbUX&^xgdMO{^=3djtf?>|RgE;kSS*&=>aUWOe>Gq1 ze~$U*b`+K@;;Ye93~wEILLe_Dfd6!QMht?Uqzg<9XvTl06@Ic~_4urbC(p2-0p14z zK-a~!9Ai5(xFkO`nP08<3V&gLCfZ=U$tW#OHabpxw*)E8Dhhh?FcwmgT+8}J(rumm zS*E7{!;b|#z48xL#ov3V7v{JDYQir7ln-;V1slC`RUb@GUk!)^(#H#Oc5zzLVi6kC zF`tm5o=*t-`$pT=x6a1=<=^RVt+lz0y7>y8I(OWyqHc}jG*Ah>_p$R7%z`5mb z6_6rstGjv2Gx;Xrn6%EGvWO2)qmA(4{RpR!y{?iA=l45Tl#S`Kw(Lu% zOp(vV%!8ud#kY;cQS|>Ji>A8$2J#y#|A2A^gJ{tbHPjUJ>~;N6<`ym zT0=T6^cEz=@c^MD?t|F0x^n=VsQUJR+cS-3+%XfH8JzVT-)ekyuPvDnf)aE)SmZ*3 z&=U^rj1Ij^eUCG$_%`E!-Fvx>b_+?|iQ4qc;1WunO_U&cVm7v9+9x2C8DFKbzN6Vl#4SN9&4JJeQy=##(dR%Ji zl8Qq*#yQ7r-+Yz0pVN00g@5b_*VITh>ThjE-4tEnn^me=Rs@Us8tu$4h1^++_y(KoTbB>WFB3XTAIRJw?7dRq z3FN*|WK6?|1}%$Sj@4^U5ag&o=uAw%&PAdPP*7ARCw(^6CJoM@Al_SEihAq^qs#4n zI!7T5CP-Js8Yfa4U@<3G7tjz8Q_o=iF8;0-?^%C5D3xe&f9LSO>;38XXk30vR($a? zBzOFeIVXUMtdG~zkc^r+`jLSxO@b?fx`0L4fXLg0v?p;W=NlP=X_D-5>^lD`AB(4{ zf1GhY}L0KVA6N8DP-{5f8g&kNi)feg|6A8MDxW^{S){}0r={~%%%6WT-i#CcSGec( zXrs|zsO1Br*5CViR066VD>Z7=n{FBUaeAz=qCVOA5pNTkKq&x*b|Nql4<2+84$1!V zGEnQKfS2FGw?> zSsHxBe_jWqmU%q(c_-0qIbfrUXEVI>O^(vVAD zmEWYm5FAN>(AG#c9?qz)ly4S&&S;#gb_X2ko$X8;weYN*Q$!M*O6?sLk z%hjDD4Dn=O0o}gOV}7RtBnY}o?TDsC18zO)RBp(nO>D8qz8bHO$Ibfke>voXdXi87 zh{rDSR4lbthimVkrW7jBnvm!R83tf*;QEvNCau^h0o-4fp(4#*_L!hOh7~yb|qI!n~Sj9eukWRkj=sW%WhHQ4&aS zRXpx!eRL}6!_bB3Pk(bWCXor1cR5q_e065#X(GdPTov<;-Be8Ui~oGYeYmjw!j76e zs6B2hg^J9OSMpH!`TFl?C;B-tsdBWtN>r6Kz(aIPQ|Y#(7Ub+9GsrWDh8O5yirC?L z>q6_A{b)n}EnoCQUqKg2XT2x?Su)pTSekZBe@Rw9)8PJR<8>&Zw~!hlAM%B@yJ4jn zOL6#6$Y}bf%u&eN?#mRObhsBb@otK!_xYC5wM+TWgx9^r2inYzt$N#pb#0PLb zS^>FQ-eYm(x zxQiv~1jtyA`_?6%`xBKv2QP zM8!^wXLtLI^Z%Y99{NNV!TSFmACI%MJ9F>3=X>hL+%cM`;47}9seXLf)~V*}Yb&g% z*-mz-SyfW7v7JouzZP2um!TxW9n|0kkLH>#6icFPa zHdA#nXAG8KUc*vr<=Faib29fj_4O`YxwOIb`6J5953o7u6Ex)8$#o{~ z8t#`kd*-Pj2hPme;=eppqs!YN9k1_N7~v9Q#Hy}4OKd2NjYFPa@4v_mm9vfINC z%c6`PRxw z-1=)|>H8OKULVFgFJ&8D-Rft#cEc)F)#35mmMm4cwRw`xak~i8Y@Ry1WP@qP-;{V$ z!&|%T<+{TzjV)WU&g{LHhMySbFmT<9HJvob`})hK_Tiy7>I}N7dn4X2N;YZDvee~$ zE;&E!d$!Tx1?7}2}YS$W@wa zaq5cl+92y<6DQqxUncQ(%xy!t@o^S?OY5Y|U9l-9cS51f!_-;Pi)XxVSt6+ZqSUfm zXXrm}dcSV`>47$Xxvst!(V(5>Ew6jkj)@|6oRDb}oKm?|vs<0?FSI+}FvD`O%4{c# z16?$S$W%OefB&=tbrc2mhjs(w{)k8+KCHJhIB8b zl32=mWUb6<5poSZg1WEmTgGlvsFe#N5^eV zY4S2*du3U>Qz0AI-*S6;AbI||X(swR-bFYnzZhb!WwlkmU1o{23i_$H$6eNbGNZUC zYO>1?wS#|Mt?^{fw$Zi1YrT2$q^WcH43`x;w(^q=t`2@a(&KFfnVXwjGe<wqskG+qi(qGkO${o$bxpc|sfz--P-B#b+hm6Ci9K;~j;@Al zhF^)aO{snCVsvju&6c@iU-8tyCY|~mjJtC(V(rP+LH4&*Y)@;f{y1PQdIC@H4can0 zuB5_%8Jn9JTyc|J*txNs;ex4`kCb~_?cUD*sWsdV-ZhvaBiB#6&Z?^YKE%3S9IkpX zeZb>=V{gy-7}3wJ#dbgBu%$divp2)vZFZ(L( z%4qqD13!-F^5OjWTXzQ4HZ*T`BTC4)&pA)1}n96cG=N@mlV{dHcNzdp2A#;RnUrcGA$_mZ)Ss&Ya_rcU|k zOO|vBJvp^hrmpIS{@X505buuYcDGyOvUfVk?JspF?p?P;jr6AWqHs$YyJPmths=C& zu#X)%AlaE$wPR!5G(#JaT((OwBhkruW~6+}3Dv@1x!I zzxSW99n;-s`@11YXRYJj#lP&|zkiLe+r7I`l|^sFAD0Zj8g6B-yEL|3szLn5jg>3a zI^OQckm4O=&s}TOM(aY<$=Y&%S5}SfFh-`;2(922G40L5+N)IUb+XLzj+f5O(>rUM zaKUfMur$wNwW?0Nw6esLiO z8)sO;XK#4if)NYP#va&UxyakZLP0Texx4Y~v&k5W88Uru({0u7dXF?{oFW;0ZOQX^ z$CBG-%ft?-SnJfBy2Ij+H9ly5Cd_<#>G2LJFM=*UQ?-qG@bI+*-n6S;qLz;A8^;rN zRV)_u*ylfU_RCYp_Ah<5N2bF2cJ-&pKGu4-IY_HPwa68=j(2vc#5g_FoMtt*W8bSA zp02KZ_1s%|S<%$~=uAiNc08%L&t%P`{>himBY)k+IvRiEFzvsuG$)Xbe@ z&t33nJj-Z&@48d#R$dsGe$Al7-Yt8#K9Nn7@mV%ZSxe2(YsIszJM>H#qsYSy-mpn$b??s&cO$sm+*GQu$rH{gD2H zXO~KyAm2{bD)L2-z5CtmsC%h%$uE>&CeDl+W1%b8uWFMcUa{Mab>$lCmR{?fsa8+& zu5^64~^`7H1E7ta0e5c_ZlcVCMuXfIso7rsoye3^DX1=#*p=hkG ze&-x*k@&3CN;!xHs%>OiUtTe8dQkDc%e@wAlrTNBS-IBP;cw$>rN4XFLI2qd!{?^@ zS`)fY%)PY-T&Ykxv_uOU@3W))lb(LBmkY(8O0hq7Z`53J}DS)-5XTg_GP z4(~4}TXj$Gqr*)4KT_B)iZUv3N5$%>#o?z_UZ_t<>-?rfRn_7~KDEy*K2iBxrLGoM z?ls>irYXmSnr{lQS*G!q>5KkO>J}r8&uOvbnC`@jbIO+-_b|Xqp?cfhtKv#~ee`&8 zF{NdCy-A_Y#Rl%mr;6mFt+-!(Q7-HcbFDi;k|C-fY3Sn zq5@h~qnJ$^EB}su(<8I7Y;x?gnXx-$BUYcDJJCk%)q`m(XGQp){?PWuFquO)q9Ri( z%9`2LHI9w!tzBtt>lZRh&c!vYJ#=-s_{lQs|GKGmb#$xXG-X4J;!*1s28{@wG}u&i z#H#_7wocWJOHYX3X*b+&Rm{cC?=Bm@oZy(^RW4Ee@zseXZyt{5qgS=VsMhZuZ##MU zLrU>(H&U&KW>^z*g zVo+w~)M&K?``sr$%Dr(_s-X}+xLJKUztJx&HrU7nWhB`*X*d3X!S9z4t{9y28qvXMggf!RX?z4|wSDtgm%I|$xKxw7A3foUz zxnI@aqx;57aaFcCI5$*mIrCMc^aTzg^D=|u-t}29S|&wCv6Fd&%OmVHCB+xLT~j|b z@R_4%JLJ32bY^AQ!3q!c4{kj_!K7*x*_gx8EA=`YOzQe-;(nRu79GpUDadIDsYZ|7 zET^Kd-m2u1zwX<}NSdS^eEwQab!elb@0E|vSoBwfOcm9`i7}01Hcw7(u<+?!!%1%k zR8YPGYK; zPs&<7+_$yopr#L#cuT5DCFo|w?PTbK8?lNH<6 zNR9kEQ8{X9IY))7A0G8L)2&~u*73#Bu`Z{&=*xzkDSc;XmjMIUS#4@0|74CrhpW-n z87E42vMN4CQS4w_u}@XYDss2Nd zhQh|4x-F^P&v!?SYLVrShc5Tu`_#wVTYJFEvD2StGxpk`OF;A8qhC}UxZgBpbmb_? zWGnqjnHn)eDq0PXtzL4dp3Isd3*65|+bnZZ@Ys;{c!M~m-k8OBhi3H9e#$4eyi#i9 zKTG-Is@X$EEbDzjH*Nk4m1fE@-r)iLB^sN zA5_Y+V>wy%iaqQ_x9j$PHosxe>#~&^RWUIXSLu(lKJ$pj&lLo3E9*viI)9 zaoy*K%cMNL>00bkzd8qGBc4aby&N#4s-(A!(n-a8W|cY(#EyPdV@7Z4|Lo=4!LILu z4JWhtTs4fTR<^kO`i#2@o8G*TNth#JU*2=5;=S35-C~uj51qZ^J8@Di&(zt)W-8p- zk<_-;;%XyWTDi@wI^dPMio*P98kw)fj`0^~Jm0cvyY|V;o3Hh5Xs&V6f8f1Z$2IC6 z_c=Yd=}XDw+nb|zmu+HZ-{0FAxRk7JpOSZAZ;AmBgbeS~Pi)2YVl5m?x?I?Kdu?zW1vD0#eWw=3K4Hdj+9E9a~nQ@+@#;Jz2v%xF;ljEtsCKUvex zGRH1dnP|~#qG^WL@cN=HFE745T5Cu&-`u}$VfsflIe40rTYw>o$3T-5%kPLf5bH>$)8o*L^^SzPg4 zyJ4wv>t?6l-riu%HJRb{%yi-x^z8ip($d%A?UMUgDMUPxx9=LYKu@;Ijhe6Q{ceXP z$s8~ZZ_u%c+xcCU8dtxNe&=0+_v&JL=AHHDo$q6O^v?X}Z7WBV%3OW1#*NvK_56wM zNfq|DN!_AVtE8Qx-B7z!wI1Q4YL=X?m^L)(POV-sLnd2vs$qOA>VUp^m5U1A$rCrH ze{h+$%8sqQVbg39$u?0bKvLEZArjWP{O%5_d~O}(X8QvUwSmwl7F7LS^sXCGe1 zLC&PR{3Tye#CyX7`WBNuw6!?!cg1*(izzi%7`7;xIe22**Y{@y= zWkC>3Ipy>5zrSBE0RfL3tQj-Ljxhz^5X!8`|31s^fkYzTV8ttQN|v3aV&gVp5LF4jeJAB`sk9-aa;@@#> zh3`B;jySi5j+lUSSXc0!D(a{Os?0i(S09)!(0{(6==Crc^K2V0%kl?Kb%0+39JPUq z1+a3#c^iE02iy&`$&K)&Nw4W5j1ZplSEBU3{#-`kW^={BI%q_15O% z?&#=P$zvtiiI=-IoG$_pCFm&6+%DX{mG7*+z8I-VXX;BR&Ej0Y4#01AqI#UkU)<0-jfaXO0sbliGnC zL0TNUSg-%ngIs0E_46zjkTUyD$jSq<>kgU#xh{oVH?eHlr^CJvI!i>yTUu&owt-ED z7%BhF7hZCi^y`DXkjQ zB%ek!zGXuijqiu!cfKy%QI-1Gs!%V9GW9??-7J*_9bvs_k9yh~)uUh&mDhe|P49VF z>0NfPwN4jwL5LZWH1N6?d?SAlZ$KLs;W!${PViyQ?9W&apabPOF8mMY2XdSraeRbK z>Tv%GM|a4oCy4X7Wr(+1Veh-yx7*uT9rc9m1(-B=*47ZVE#RGH$34U<0$vf$YBUje z&hl?UF`>y>)17A00|$>Ze27`sq?qe?H>8Z`Swx`<7lh!u9LB zXwmWx8niID8O>+}B6S>Nv)nROjszbi@)_v_O3fzXoyx`K|d9>sOk zpgDm}X{=X63U^Qyd<6TPj;2b86^ayMr1I9+yu}@7vH7WNJ;=!wQqjImAmlFM5ugx! zwghpWSOq%3V~#of##{&a|LlV-+dTU|b8~YZV>1N>p#4LEJNL;qG48OTG!H9-ivdRU zU$CvSY`X&UUXm0mxbN6xLpnUskPf1}{i6*8Jz|~O4*g=E zv8ksHEo-MC#E=2d1@=RnM{q0(Gf*Ty)5ecotWD44=z-u5#DYJFN4w{s-2*|s@O%0k z6QBcS|DXB-S&nn8D&Tix)@_ZmzS8()mRg{w!)OI z$AMOw(T!E6baOS68Qok1!jZqbu`=s-zAkfx30=W`mvH}uMOo#YM!BpP$D$4C(0D`m z5d+#i)PQyj)<-a{kMC0qmZ~68}H^3I3kr9NJk2M+3w^9)leLImFsXBuS9V zK37Y_bAg6xuNe1EX3EInR1j~~X;wfpith${>!&BkdiQVx_-#Wv8qIi^0B;jIzYth2 zH3iPV5_tZ#){JhiH>W!r%;{c&h#qVY+nhFb=h&-HsZs2IjUa1d zI>DIFGoy=(&FSh2bJ#90S|anK@mEF@r9cB3_u# zp$W#cccc;Rj4*({>eJdTI_P6GMIS^R{Y+)#tV$GOp!A`oxyCJfiS;qGpL2r)kO}t{ z*cXh4oWgK!hNBYnpzI&418n!j*`J|ZJa*@T;{f=3jFDJx!I<1WFEg!c!3N6jSuR~5 zpZ@mhG&i6HC3M#Z?gq%gj9}}=ls?szPR%i=^NY;s%5o7fw}5?H(!EVquxl&e%~)B{ zvz=mko?;C=#lY5@UhNjsYo@&t5Ff?#W?w#({kw489tpkL!)0WZ!{u?g&vsbTlO${C zgSAla-2^M>o+Wg_f-c935O>UxKbT?XK~w0fF=6jfO6-rV`?}~-v~N@7FRB<{P)7ez zkpc}>U%OfuUd-_YzAnpTUxZ75pb0z4(pVmK+<1r47^=MNIw8b08VVv6o z`yEbJX6gP0>Mz0!cw7d3b;xCcPgBTA54f{0HKw$2roi2tPR|q3rKJ{hZKWmswa$v} zCWs+>F?M1X)6*RiU@igP5_-9tF|(o9OnYtV^*$S5okef=+tAznwgsSn?tQ(N%gZYF z)ovSlvC9U!kX7%K?Goso7=A}gcQ#rhpRk5cvZ4!%EugO=#3(c9feG}$h_?1MpcU

wUZ$>ikC-e~o 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 WJ9DY6t5x8WM+YH%8lO=Ulm7$fT39>) diff --git a/Demos/FPC/Demo25/project1.lpi b/Demos/FPC/Demo25/project1.lpi index b90ec537..5e6384e1 100644 --- a/Demos/FPC/Demo25/project1.lpi +++ b/Demos/FPC/Demo25/project1.lpi @@ -1,31 +1,32 @@ - + + - - - - + - + + + - - - - - - - + + + + + + + + @@ -40,205 +41,131 @@ - + - - - + + + + - - + - + - - + - + - - - + - - - + + - + - + - - + - + - - + - + - - + - - + + - + - + - + - + - + - + - + - + - + - + - + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + + @@ -248,25 +175,34 @@ - - - + + + + + + + + + + + + diff --git a/Demos/FPC/Demo25/project1.res b/Demos/FPC/Demo25/project1.res index 708df3c5dd4b89a8cddd9168759a69bbe9c91d34..f6e8499568f21121986c715951291349244aeef3 100644 GIT binary patch delta 1020 zcmbu8L5tHs6vxvbx(F);!R_8=D+(T_naRwglaej0hr%AzLqRVdoMa|$plL!Aw-%8e z^aE%S3f{bX5f8(^^JT*T zhGCqY)$~)*$}p-`!~s{nW+O?y$GQOZ=w%&P?d`EH_BXqE0hcgLxbF(cq^r51FCka9 zgueHt>4#9E?M! z=>$y&a-=Y%HgTcLd>?WmQRqk{$D+B3jL`*Pu29$%*oJ=S6Ws~Lq3#QVl!uZbftheu zJ7Jxlr)QOezfb3&Hu{Oh#i_YTIhA%m#Q;H}Da!x= diff --git a/Demos/FPC/Demo25/unit1.lfm b/Demos/FPC/Demo25/unit1.lfm index 71b1a0f6..31cae000 100644 --- a/Demos/FPC/Demo25/unit1.lfm +++ b/Demos/FPC/Demo25/unit1.lfm @@ -7,7 +7,7 @@ object Form1: TForm1 ClientHeight = 522 ClientWidth = 795 OnCreate = FormCreate - LCLVersion = '0.9.28.2' + LCLVersion = '2.0.10.0' object Panel1: TPanel Left = 0 Height = 522 @@ -133,15 +133,15 @@ object Form1: TForm1 end object PythonEngine1: TPythonEngine IO = PythonGUIInputOutput1 - left = 96 - top = 48 + Left = 96 + Top = 48 end object PythonGUIInputOutput1: TPythonGUIInputOutput DelayWrites = True UnicodeIO = False RawOutput = False Output = Memo1 - left = 338 - top = 48 + Left = 338 + Top = 48 end end diff --git a/Demos/FPC/Demo25/unit1.lrs b/Demos/FPC/Demo25/unit1.lrs index 1ab0eccf..775c6356 100644 --- a/Demos/FPC/Demo25/unit1.lrs +++ b/Demos/FPC/Demo25/unit1.lrs @@ -1,7 +1,9 @@ +{ This is an automatically generated lazarus resource file } + LazarusResources.Add('TForm1','FORMDATA',[ 'TPF0'#6'TForm1'#5'Form1'#4'Left'#3't'#1#6'Height'#3#10#2#3'Top'#2'd'#5'Width' +#3#27#3#7'Caption'#6#5'Form1'#12'ClientHeight'#3#10#2#11'ClientWidth'#3#27#3 - +#8'OnCreate'#7#10'FormCreate'#10'LCLVersion'#6#8'0.9.28.2'#0#6'TPanel'#6'Pan' + +#8'OnCreate'#7#10'FormCreate'#10'LCLVersion'#6#8'2.0.10.0'#0#6'TPanel'#6'Pan' +'el1'#4'Left'#2#0#6'Height'#3#10#2#3'Top'#2#0#5'Width'#3#27#3#5'Align'#7#8'a' +'lClient'#12'ClientHeight'#3#10#2#11'ClientWidth'#3#27#3#8'TabOrder'#2#0#0#5 +'TMemo'#5'Memo1'#4'Left'#2#1#6'Height'#3#231#0#3'Top'#2#1#5'Width'#3#25#3#5 @@ -14,27 +16,27 @@ LazarusResources.Add('TForm1','FORMDATA',[ +'eight'#3#168#0#3'Top'#3#240#0#5'Width'#3#25#3#5'Align'#7#8'alClient'#13'Lin' +'es.Strings'#1#6#18'class XYZ(object):'#6#6' pass'#6#0#6#10'class Foo:'#6#30 +' def __init__(Self, Value=0):'#6#22' Self.Value = Value'#6#20' def __d' - +'el__(Self):'#6#24' print "delete", Self'#6#27' def __add__(self, other)' - +':'#6'( return Foo(self.Value + other.Value)'#6#28' def Inc(Self, AValue' - +' = 1):'#6'$ Self.Value = Self.Value + AValue'#6#20' def GetSelf(Self):' + +'el__(Self):'#6#25' print("delete", Self)'#6#27' def __add__(self, other' + +'):'#6'( return Foo(self.Value + other.Value)'#6#28' def Inc(Self, AValu' + +'e = 1):'#6'$ Self.Value = Self.Value + AValue'#6#20' def GetSelf(Self):' +#6#15' return Self'#6#21' def GetValue(Self):'#6#21' return Self.Valu' +'e'#6#28' def SetABC(Self, A, B, C):'#6#14' Self.A = A'#6#14' Self.B ' +'= B'#6#14' Self.C = C'#6#26' def Add(Self, AFooInst):'#6', Self.Valu' +'e = Self.Value + AFooInst.Value'#6#15'class Bar(Foo):'#6#28' def Inc(Self,' +' AValue = 1):'#6'$ Self.Value = Self.Value - AValue'#6#14'def Add(a, b):' +#6#14' return a + b'#6#25'def MakeList(a, b, c, d):'#6#21' return [a, b, c' - +', d]'#6#0#6#9'f = Foo()'#6#18'print "Created", f'#6#7'f.Inc()'#6#8'f.Inc(2)' - +#6#9'b = Bar()'#6#7'b.Inc()'#6#8'b.Inc(2)'#0#8'TabOrder'#2#2#0#0#6'TPanel'#6 - +'Panel2'#4'Left'#2#1#6'Height'#2'q'#3'Top'#3#152#1#5'Width'#3#25#3#5'Align'#7 - +#8'alBottom'#12'ClientHeight'#2'q'#11'ClientWidth'#3#25#3#8'TabOrder'#2#3#0#7 - +'TButton'#7'Button1'#4'Left'#2#15#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'#7 + +', d]'#6#0#6#9'f = Foo()'#6#19'print("Created", f)'#6#7'f.Inc()'#6#8'f.Inc(2' + +')'#6#9'b = Bar()'#6#7'b.Inc()'#6#8'b.Inc(2)'#0#8'TabOrder'#2#2#0#0#6'TPanel' + +#6'Panel2'#4'Left'#2#1#6'Height'#2'q'#3'Top'#3#152#1#5'Width'#3#25#3#5'Align' + +#7#8'alBottom'#12'ClientHeight'#2'q'#11'ClientWidth'#3#25#3#8'TabOrder'#2#3#0 + +#7'TButton'#7'Button1'#4'Left'#2#15#6'Height'#2#25#3'Top'#2#8#5'Width'#2'K'#7 +'Caption'#6#7'Execute'#7'OnClick'#7#12'Button1Click'#8'TabOrder'#2#0#0#0#7'T' +'Button'#15'btnTestIntegers'#4'Left'#2'w'#6'Height'#2#25#3'Top'#2#8#5'Width' +#2'K'#7'Caption'#6#13'Test Integers'#7'OnClick'#7#20'btnTestIntegersClick'#8 +'TabOrder'#2#1#0#0#9'TCheckBox'#14'cbTestIntegers'#4'Left'#2'z'#6'Height'#2 +#19#3'Top'#2')'#5'Width'#2'B'#7'Caption'#6#8'Included'#8'TabOrder'#2#2#0#0#0 - +#0#13'TPythonEngine'#13'PythonEngine1'#2'IO'#7#21'PythonGUIInputOutput1'#4'l' - +'eft'#2'`'#3'top'#2'0'#0#0#21'TPythonGUIInputOutput'#21'PythonGUIInputOutput' - +'1'#11'DelayWrites'#9#9'UnicodeIO'#8#9'RawOutput'#8#6'Output'#7#5'Memo1'#4'l' - +'eft'#3'R'#1#3'top'#2'0'#0#0#0 + +#0#13'TPythonEngine'#13'PythonEngine1'#2'IO'#7#21'PythonGUIInputOutput1'#4'L' + +'eft'#2'`'#3'Top'#2'0'#0#0#21'TPythonGUIInputOutput'#21'PythonGUIInputOutput' + +'1'#11'DelayWrites'#9#9'UnicodeIO'#8#9'RawOutput'#8#6'Output'#7#5'Memo1'#4'L' + +'eft'#3'R'#1#3'Top'#2'0'#0#0#0 ]); diff --git a/Demos/FPC/Demo25/unit1.pas b/Demos/FPC/Demo25/unit1.pas index ad0c3a84..5b9eeb59 100644 --- a/Demos/FPC/Demo25/unit1.pas +++ b/Demos/FPC/Demo25/unit1.pas @@ -6,7 +6,7 @@ interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, - StdCtrls, ExtCtrls, PairSplitter, PythonEngine, PythonGUIInputOutput; + StdCtrls, ExtCtrls, PairSplitter, PythonEngine, lcl.PythonGUIInputOutput; type diff --git a/Demos/FPC/Demo31/Project1.lpi b/Demos/FPC/Demo31/Project1.lpi index 9645cf5e..34aac6a3 100644 --- a/Demos/FPC/Demo31/Project1.lpi +++ b/Demos/FPC/Demo31/Project1.lpi @@ -1,7 +1,7 @@ - + @@ -15,21 +15,17 @@ - - - - - - - - + + + + @@ -44,7 +40,7 @@ - + @@ -56,8 +52,8 @@ - - + + @@ -69,8 +65,7 @@ - - + @@ -79,7 +74,6 @@ - @@ -95,7 +89,6 @@ - @@ -104,12 +97,10 @@ - - + - @@ -135,21 +126,17 @@ - - + - - - + - @@ -161,12 +148,10 @@ - - + - @@ -185,12 +170,10 @@ - - + - @@ -238,13 +221,10 @@ - - - + - @@ -302,8 +282,8 @@ - - + + diff --git a/Demos/FPC/Demo31/Project1.res b/Demos/FPC/Demo31/Project1.res index e66ecf85feb5a99d4bc85c4973bd1bb2e918b668..0ad004b9d97928b9d3a42fa745f31fc0da4dfdb5 100644 GIT binary patch literal 1779 zcmbVNO^@3)5ZzvSC{Q5B9$6j>P~Vc}g}i|gB!JPR4X|m79w~CPD^wy?lJdqV`m6c_ zlhKF0+F;jP)PQV~Lp{EE^Eke^xVRwreEvK=IDGK=_uFIq2i)_`7<=*JeoOK4Q`?X| z7+Y(#p`jO00!nCEtD6n|?ZX?EQ(_%gk~dnxh91Dumsj6^S8!{gEt>;D0A)9{H|o-g zTWGmuZ7qzpx^hhD_LAGy+lQ32T-6m=_i=d|LXi{JPJ(i^J3Jud1p}$hXaUx0vo+$j zb|74Dkj_t(DBj}Wm2Nw(4!_{UdvCPtg&W7)t{Z+Safc4K-PJ0Ns6U=6!3tA%4l}>{ zL-&U8u4`(+hXt|-dWFB3&98Q#kgPZiQ&LEn=59NyGA=)o*pkJ}{M}J3@Aq0seP=z) zrPYeP(#jd#Sb8rWxZ} zA;CuyxL=;~ES%}B+o?+b$D+q{lE;GR4c2v5#lT-Z`T*p6Q}62rZop0vQk+7sKjAw= zCEmgw8qy5k8_MlY?J+MyNndZp;D`;acw=FzDVD-NL41W?_)8jve@bRJyFjCMSoyMU z2LC$(N8QcPR&iqsk8$C DfZ`AY diff --git a/Demos/FPC/Demo31/Unit1.lfm b/Demos/FPC/Demo31/Unit1.lfm index cc22595f..74cdb328 100644 --- a/Demos/FPC/Demo31/Unit1.lfm +++ b/Demos/FPC/Demo31/Unit1.lfm @@ -14,7 +14,7 @@ object Form1: TForm1 Font.Name = 'MS Sans Serif' Font.Pitch = fpVariable OnCreate = FormCreate - LCLVersion = '0.9.30.2' + LCLVersion = '2.0.10.0' Visible = True object Splitter1: TSplitter Cursor = crVSplit @@ -103,7 +103,7 @@ object Form1: TForm1 ' MainForm.Caption = ''PyDelphi rocks!'' #setting properties' ' self.assertEqual(MainForm.Caption, ''PyDelphi rocks!'')' ' print()' - ' print(''MainForm.ActiveControl='', MainForm.ActiveControl # class properties)' + ' print(''MainForm.ActiveControl='', MainForm.ActiveControl ) # class properties' ' MainForm.BorderStyle = ''bsSizeable'' #enumeration property' ' MainForm.Anchors = [''akTop'', ''akLeft''] #set property' ' self.assertEqual(MainForm.Anchors, [''akTop'', ''akLeft''])' @@ -118,7 +118,7 @@ object Form1: TForm1 ' self.assertEqual(DVar.SValue, ''Age'')' ' self.assertEqual(DVar.IValue, 25)' ' print()' - ' print(DVar.DescribeMe() #method calls)' + ' print(DVar.DescribeMe()) #method calls' '' ' def testRepr(self):' ' print()' @@ -126,8 +126,8 @@ object Form1: TForm1 ' print(DVar)' ' print(MainForm)' ' if DelphiVersion >= 7:' - ' print(DVar.DescribeMe # method object)' - ' print(DVar.SL # TStrings)' + ' print(DVar.DescribeMe) # method object' + ' print(DVar.SL) # TStrings' '' ' def testTStrings(self):' ' SL = DVar.SL' @@ -402,9 +402,6 @@ object Form1: TForm1 ' except SystemExit:' ' pass' ' MainForm.ActiveControl = MainForm.Memo2 # Class property!' - '' - ' ' - ' ' ) ScrollBars = ssVertical TabOrder = 0 @@ -440,8 +437,8 @@ object Form1: TForm1 end object PyEngine: TPythonEngine IO = PythonGUIInputOutput1 - left = 16 - top = 16 + Left = 16 + Top = 16 end object PythonModule: TPythonModule Engine = PyEngine @@ -455,19 +452,19 @@ object Form1: TForm1 end> ModuleName = 'spam' Errors = <> - left = 56 - top = 16 + Left = 56 + Top = 16 end object PythonGUIInputOutput1: TPythonGUIInputOutput UnicodeIO = False RawOutput = False Output = Memo2 - left = 168 - top = 17 + Left = 168 + Top = 17 end object ActionList1: TActionList - left = 96 - top = 80 + Left = 96 + Top = 80 object actTest: TAction Caption = 'Test' OnExecute = actTestExecute diff --git a/Demos/FPC/Demo31/Unit1.pas b/Demos/FPC/Demo31/Unit1.pas index c28ad7b1..f0ddcc65 100644 --- a/Demos/FPC/Demo31/Unit1.pas +++ b/Demos/FPC/Demo31/Unit1.pas @@ -7,7 +7,7 @@ interface uses SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls, - PythonEngine, PythonGUIInputOutput, WrapDelphi, ActnList; + PythonEngine, lcl.PythonGUIInputOutput, WrapDelphi, ActnList; type TForm1 = class(TForm)