drawing in an offscreen buffer

I tried to modify the example of the article “Who gives a blit” to use
PgDraw… functions to draw into offscreen buffers. I used code similar to
the doc section “Raw Drawing and Animation/Video memory offscreen”.
Specifically, I changed the place where the two for loops were to:

/* Make it the current context and draw a purple
rectangle in it. /
olddc=PhDCSetCurrent(images_->ctx);
PgSetFillColor(Pg_PURPLE);
PgDrawIRect(0,0,99,99,Pg_DRAW_FILL);
PgFlush(); /
Draws the rectangle. /

PhDCSetCurrent(olddc);


/
for (y=0;y<RAD;y++)
for (x=0;x<RAD;x++)
{
int val=((x<y)?x:y);
val+=(iRAD)/NUMIMAGES;
val=(val
128)/RAD;
if (val&0x40) val=0x3f-(val&0x3f);
images->buffer[(y*(images->pitch>>1))+x]=
images->buffer[(((WH-1)-y)(images->pitch>>1))+x]=
images->buffer[(y
(images->pitch>>1))+((WH-1)-x)]=
images->buffer[(((WH-1)-y)(images->pitch>>1))+((WH-1)-x)]=
(val&0x3f)<<5;
}
/
}

Result: Nothing shows up when the offscreen is copied to the screen

What’s wrong?

Markus




begin 666 blit.c
M(VEN8VQU9&4@/’-T9&EO+F@^#0H@(VEN8VQU9&4@/’!H;W1O;B]0=%=I9&=E
M="YH/@T
("-I;F-L=61E(#QP:&]T;VXO4’17:6YD;W<N:#X-"B C:6YC;'5D
M92 <&AO=&]N+U!D1&ER96-T+F@^#0H-"B-I;F-L=61E(#QP:&]T;VXO4&A)
M;G1E<FYA;"YH/@T
#0H@+R@=V4G;&P@8F4@=&5S=&EN9R!T:’)E92!D:69F
M97)E;G0@=‘EP97,@;V8@8FQI=’,L(&1E9F%U;‘1I;F<@=&@=&AE(&9I<G-T
M#0H@<W1A=&EC(&QO;F<@8FQI=‘1Y<&4],#L-"@T*("\O(‘1H:7,@<W1R=6-T
M=7)E(’=I;&P@8V]N=&%I;B!O=7(@:6UA9V4@9&%T80T*(‘1Y<&5D968@PT*("!U;G-I9VYE9"!S:&]R=" J8G5F9F5R.R @("\O(’)A=R!2
M1T(U-C4@9&%T80T*("!L;VYG(’=I9’1H.R @(" @(" @(" @(" @("\O(’=I
M9’1H(&]F(&EM86=E#0H@(&QO;F<@:&5I9VAT.R @(" @(" @(" @(" @+R@
M:&5I9VAT(&]F(&EM86=E#0H@(&QO;F<@<&ET8V@[(" @(" @(" @(" @(" @
M+R@<&ET8V@@&)Y=&5S(’!E<B!R;W<I(&]F(&EM86=E#0H@4&1/9F9S8W)E
M96Y#;VYT97AT7W0@F-T>#L-“B @?2!#;V]L26UA9V4[#0H@#0H@(V1E9FEN
M92!.54U)34%'15,@-#@@(” @(" @("\O(",@:6UA9V5S(&EN(&]U<B!A;FEM
M871I;VX-“B C9&5F:6YE(%=((#(U-B @(” @(" @(" @(" @+R@=VED=&@@
M)B!H96EG:'0@
’=E)VQL(‘5S92!A(’-Q=6%R92!B=69F97(I#0H@(V1E9FEN
M92!2040@
%=(/CXQ2 @(" @(" @("\O(#$O,B!T:&4@=VED=&@O:&5I9VAT
M(&9O<B!C;VUP=71I;F<@86YI;6%T:6]N#0H@(V1E9FEN92!215!3(#$P," @
M(" @(" @(" @("\O(&AO=R!M86YY(‘1I;65S(’=E(’=A;G0@=&@8FQI="!E
M86-H(&EM86=E#0H@#0H@+R@<F5T=7)N<R!T:&4@86QL;V-A=&5D(&)U9F9E
M<@T
($-O;VQ);6%G92 J06QL;V-"=69F97(H;&]N9R!W+&QO;F<@:“D-“B![
M#0H@($-O;VQ);6%G92 J:3TH0V]O;$EM86=EBEM86QL;V,H<VEZ96]F"II
M2D[#0H@#0H@(&EF("@A:2D@<F5T=7)N(# [#0H@#0H@("\O(‘1H92!W:61T
M:"]H96EG:‘0@87)E(&%L=V%Y<R!W:&%T(’=E)W)E(’!A<W-E9"!I;@T
(”!I
M+3YW:61T:#UW.PT*(”!I+3YH96EG:‘0]:#L-"B -“B @+R@;W5R(&)L:70@
M='EP92 P(&ES(&$@<W1R86EG:'0@;65M;W)Y(&)L:70-“B @:68@&)L:71T
M>7!E/3TP
0T*(”![#0H@(”!I+3YP:71C:#UWC([#0H@("!I9B H:2T^8G5F
M9F5R/2AU;G-I9VYE9"!S:&]R="HI;6%L;&]C
’<J:“HR2D-“B @(”!R971U
M<FX@:3L-"B @?0T
(”!E;’-E(&EF(“AB;&ET=‘EP92 ]/3$I#0H@(‘L-"B @
M(&DM/G!I=&-H/7<J,CL-"B @(&EF("AI+3YB=69F97(]‘5N<VEG;F5D(’-H
M;W)T
BE09U-H;65M0W)E871E*’<J:“HR+$Y53$PI0T(” @(’)E='5R;B!I
M.PT*(”!]#0H@(&5L<V4-“B @:68@&)L:71T>7!E/3TR0T*(”![#0H@("!I
M9B H:2T^8W1X/5!D0W)E871E3V9F<V-R965N0V]N=&5X="@P+’<L:“Q09U]/
M4T-?345-7U!!1T5?04Q)1TXI0T(” @>PT*(" @(&DM/G!I=&-H/6DM/F-T
M>“T^<&ET8V@[#0H@(” @:2T^8G5F9F5R/5!D1V5T3V9F<V-R965N0V]N=&5X
M=%!T<BAI+3YC=’@I.PT*(" @(’)E=‘5R;B!I.PT*(" @?0T*("!]#0H@("\O
M(&EF(’=E(&9A:6PL(&9R964@=&AE($-O;VQ);6%G92!S=’)U8W1U<F4L(&%N
M9"!R971U<FX@, T*("!F<F5E*&DI.PT*("!R971U<FX@,#L-“B!]#0H@#0H@
M+R@=&AI<R!F=6YC=&EO;B!F<F5E<R!T:&4@:6UA9V4@9VEV96X-“B!V;VED
M($9R965”=69F97(H0V]O;$EM86=E(“II0T('L-“B @+R@9F]R(&)L:70@
M='EP92 P+”!W92!J=7-T(&9R964@=&AE(&UE;6]R>2!P<F5V:6]U<VQY(&UA
M;&QO8V5D#0H@(&EF(“AB;&ET='EP93T],“D-“B @(&9R964H:2T^8G5F9F5R
M3L-"F5L<V4-"B @:68@&)L:71T>7!E/3TQ0T(” @4&=3:&UE;41E<W1R
M;WDH:2T^8G5F9F5R3L-"F5L<V4-"B @:68@&)L:71T>7!E/3TR0T(” @
M4&A$0U)E;&5A<V4H:2T^8W1X3L@("\O(&9R964@=&AE(’-T<G5C='5R92!A
M<R!W96QL#0H@(&9R964H:2D[#0H@?0T
( T*(”\O(‘1H:7,@9G5N8W1I;VX@
M8FQI=’,@=&AE(&=I=F5N(&)U9F9E<B!U<VEN9R!O=7(@8FQI=”!T>7!E(&UE
M=&AO9 T*('9O:60@0FQI=$)U9F9E<BA0=%=I9&=E=%]T(“IW:6XL0V]O;$EM
M86=E(“II0T('L-“B @+R@1F]R(&)L:70@='EP92 P+”!W92!U<V4@4&=$
M<F%W26UA9V5M>”@I+B!792!H879E('1O(&UA:V4@<W5R92 -“B @+R@=&@
M<V5T(‘1H92!R96=I;VX@=&@=&AE(’=I;F1O=W,@<F5G:6]N(&9I<G-T+B @
M1&]N)W0@9F]R9V5T#0H@(”\O('1O(&9L=7-H(2 Z0T(”!I9B H8FQI='1Y
M<&4]/3 @?'P@8FQI='1Y<&4]/3$I#0H@('L-“B @(%!H4&]I;G1?=”!P;W,]
M>S L,'T[#0H@(”!0:$1I;5]T(’-I>F4]>VDM/G=I9’1H+&DM/FAE:6=H=‘T[
M#0H@("!09U-E=%)E9VEO;BA0=%=I9&=E=%)I9"AW:6XI3L-"B @(%!G1’)A
M=TEM86=E;7@H:2T^8G5F9F5R+# L)G!O<RPF<VEZ92QI+3YP:71C:"PP
3L-
M"B @(%!G1FQU<V@H3L-"B @?0T96QS90T*("!I9B H8FQI=‘1Y<&4]/3(I
M#0H@(‘L-"B @(%!H4F5C=%]T(’(]>WLP+#!]+‘MI+3YW:61T:“QI+3YH96EG
M:‘1]?3L-"B @(%!G4V5T4F5G:6]N*%!T5VED9V5T4FED*’=I;BDI.PT*(” @
M4&=#;VYT97AT0FQI="AI+3YC=’@L)G(L3E5,3"PF<BD[#0H@("!09T9L=7-H
M*“D[#0H@('T@?0T*( T*(&UA:6XH:6YT(&%R9V,L8VAA<B J87)G=EM=0T
M(‘L-"B @0V]O;$EM86=E("II;6%G97-;3E5-24U!1T5373L-"B @:6YT(’@L
M>3L-“B @:6YT(&DL:CL-“B @4’17:61G971?=” J=VEN.PT*(”!0=$%R9U]T
M(&%R9W-;,UT[#0H@(%!H1&EM7W0@9&EM/7M72"Q72’T[#0H@(%!H4&]I;G1?
M=”!P;W,]>S4P+#4P?3L-"@E0:$1R87=#;VYT97AT7W0@F]L9&1C.PT#0H@
M("\O(&EF(&$@<&%R86UA=&5R(’=A<R!P87-S960L(&=R86(@:70@87,@=&AE
M(&)L:70@=‘EP92 -“B @:68@&%R9V,^,2D@8FQI='1Y<&4]871O:2AA<F=V
M6S%=3L-"B -“B @+R@:6YI=&EA;&EZ92!O=7(@8V]N;F5C=&EO;B!T;R!0
M:&]T;VXL(&%N9”!C<F5A=&4O<F5A;&EZ92!A(’=I;F1O=R -"B @4’1);FET
M
"(O9&5V+W!H;W1O;B(I.PT
(”!0=%-E=$%R9R@F87)G<ULP72Q0=%]!4D=?
M4$]3+“9P;W,L,“D[#0H@(%!T4V5T07)G*“9A<F=S6S%=+%!T7T%21U]$24TL
M)F1I;2PP3L-"B @=VEN/5!T0W)E871E5VED9V5T%!T5VEN9&]W+%!T7TY/
M7U!!4D5.5"PR+&%R9W,I.PT*(”!0=%)E86QI>F57:61G970H=VEN3L-"B -
M"B @+R@06QL;V-A=&4@86YD(&9I;&P@82!S97)I97,@;V8@3E5-24U!1T53
M(&EM86=E<R!W:71H(&$@;&ET=&QE( T
(” O+R!F861I;F<@='EP92!A;FEM
M871I;VXN(”!0=70@>6]U<B!O=VX@86YI;6%T:6]N(&EN(&AE<F4@:68@>6]U
M(&QI:V4N#0H@(&9O<B H:3TP.VD\3E5-24U!1T53.VDKRD-"B @>PT(" @
M:6UA9V5S6VE=/4%L;&]C0G5F9F5R*%=(+%=(3L-“B @(&EF(”@A:6UA9V5S
M6VE=0T(" @>PT
(" @(’!R:6YT9B@B0V]U;&1N)W0@86QL;V-A=&4@:6UA
M9V4@)60L(‘1R>2!S971T:6YG($Y534E-04=%4R!T;R E9%QN(BQI+&DI.PT*
M(" @(&5X:70H,“D[#0H@(”!]#0H@(" -"@D-"@DOB!-86ME(&ET('1H92!C
M=7)R96YT(&-O;G1E>‘0@86YD(&1R87<@82!P=7)P;&4@#0H@("!R96-T86YG
M;&4@:6X@:70N("HO#0H);VQD9&,]4&A$0U-E=$-U<G)E;G0H:6UA9V5S6VE=
M+3YC=’@I.PT
"5!G4V5T1FEL;$-O;&]R*%!G7U!54E!,12D[#0H)4&=$<F%W
M25)E8W0H,“PP+#DY+#DY+%!G7T1205=?1DE,3"D[#0H)4&=&;'5S:”@I.R @
M+RH@1’)A=W,@=&AE(’)E8W1A;F=L92X@B)#0H-"@E0:$1#4V5T0W5R<F5N
M=“AO;&1D8RD[#0H-@T
+RH@("!F;W(@'D],#MY/%)!1#MYRLI#0H@(" @
M9F]R(“AX/3 [>#Q2040[>“LK0T(” @('L-“B @(” @:6YT(‘9A;#TH*’@
M>2D_>#IY3L-“B @(” @=F%LSTH:2I2040I+TY534E-04=%4SL-“B @(” @
M=F%L/2AV86PJ,3(X2]2040[#0H@(" @(&EF("AV86PF,’@T,"D@=F%L/3!X
M,V8M
’9A;“8P>#-F3L-“B @(” @:6UA9V5S6VE=+3YB=69F97);'DJ*&EM
M86=E<UMI72T^<&ET8V@^/C$I2MX73T-“B @(” @:6UA9V5S6VE=+3YB=69F
M97);
@H5T@M,2DM>2DJ*&EM86=E<UMI72T^<&ET8V@^/C$I2MX73T-“B @
M(” @:6UA9V5S6VE=+3YB=69F97);
‘DJ*&EM86=E<UMI72T^<&ET8V@^/C$I
M2LH%=(+3$I+7@I73T-“B @(” @:6UA9V5S6VE=+3YB=69F97);"@H5T@M
M,2DM>2DJ
&EM86=E<UMI72T^<&ET8V@^/C$I2LH%=(+3$I+7@I73T-“B @
M(” @("AV86PF,’@S9BD/#4[#0H@(” @?0T*(“HO#0H@(‘T-“B @#0H@#0H@
M(”\O(&)L:70@=&AE($Y534E-04=%4R!I;6%G97,@4D504R!T:6UE<RX-"B @
M9F]R(“AJ/3 [:CQ215!3.VHKRD-"B @(&9O<B H:3TP.VD\3E5-24U!1T53
M.VDK
RD-“B @(”!”;&ET0G5F9F5R*’=I;BQI;6%G97-;:5TI.PT*#0H@(’!R
M:6YT9B@B0FQI='1E9” E9"!F<F%M97,@=7-I;F<@;65T:&]D(“5D7&XB+%)%
M4%,J3E5-24U!1T53+&)L:71T>7!E3L-"B -"B @+R@;F]W(&9R964@=&AE
M(&EM86=E<PT
(”!F;W(@&D],#MI/$Y534E-04=%4SMIRLI#0H@("!&<F5E
M0G5F9F5R*&EM86=E<UMI72D[#0H@#0H@("\O+R!H:61E(‘1H92!W:6YD;W<@
M86YD(&1E<W1R;WD@:70N#0H@(%!T56YR96%L:7IE5VED9V5T*’=I;BD[#0H@
=(%!T1&5S=’)O>5=I9&=E="AW:6XI.PT*('T-"B
end_

Hi Markus,

I have spoken to one of the developers and he makes the following suggestion:

Try this:

/* Make it the current context and draw a purple
rectangle in it. /
olddc=PhDCSetCurrent(images_->ctx);
PgSetRegion(PtWidgetRid(my_window_widget));
PgSetFillColor(Pg_PURPLE);
PgDrawIRect(0,0,99,99,Pg_DRAW_FILL);
PgFlush(); /
Draws the rectangle. */

PhDCSetCurrent(olddc);

Hope this helps
Regards
Brenda


Markus Loffler <loffler@ces.clemson.edu> wrote:_

I tried to modify the example of the article “Who gives a blit” to use
PgDraw… functions to draw into offscreen buffers. I used code similar to
the doc section “Raw Drawing and Animation/Video memory offscreen”.
Specifically, I changed the place where the two for loops were to:

/* Make it the current context and draw a purple
rectangle in it. /
olddc=PhDCSetCurrent(images> ->ctx);
PgSetFillColor(Pg_PURPLE);
PgDrawIRect(0,0,99,99,Pg_DRAW_FILL);
PgFlush(); /
Draws the rectangle. */

PhDCSetCurrent(olddc);




/* for (y=0;y<RAD;y++)
for (x=0;x<RAD;x++)
{
int val=((x<y)?x:y);
val+=(iRAD)/NUMIMAGES;
val=(val
128)/RAD;
if (val&0x40) val=0x3f-(val&0x3f);
images> ->buffer[(y*(images> ->pitch>>1))+x]=
images> ->buffer[(((WH-1)-y)(images> ->pitch>>1))+x]=
images> ->buffer[(y
(images> ->pitch>>1))+((WH-1)-x)]=
images> ->buffer[(((WH-1)-y)*(images> ->pitch>>1))+((WH-1)-x)]=
(val&0x3f)<<5;
}
*/
}

Result: Nothing shows up when the offscreen is copied to the screen

What’s wrong?

Markus





begin 666 blit.c
M(VEN8VQU9&4@/’-T9&EO+F@^#0H@(VEN8VQU9&4@/’!H;W1O;B]0=%=I9&=E
M=“YH/@T*(”-I;F-L=61E(#QP:&]T;VXO4’17:6YD;W<N:#X-“B C:6YC;‘5D
M92 <&AO=&]N+U!D1&ER96-T+F@^#0H-"B-I;F-L=61E(#QP:&]T;VXO4&A)
M;G1E<FYA;"YH/@T*#0H@+R@=V4G;&P@8F4@=&5S=&EN9R!T:’)E92!D:69F
M97)E;G0@=‘EP97,@;V8@8FQI=’,L(&1E9F%U;'1I;F<@=&@=&AE(&9I<G-T
M#0H@<W1A=&EC(&QO;F<@8FQI='1Y<&4],#L-@T*("\O(‘1H:7,@<W1R=6-T
M=7)E(’=I;&P@8V]N=&%I;B!O=7(@:6UA9V4@9&%T80T*(‘1Y<&5D968@PT*("!U;G-I9VYE9"!S:&]R=" J8G5F9F5R.R @("\O(’)A=R!2
M1T(U-C4@9&%T80T*("!L;VYG(’=I9’1H.R @(" @(" @(" @(" @("\O(’=I
M9’1H(&]F(&EM86=E#0H@(&QO;F<@:&5I9VAT.R @(" @(" @(" @(" @+R@
M:&5I9VAT(&]F(&EM86=E#0H@(&QO;F<@<&ET8V@[(" @(" @(" @(" @(" @
M+R@<&ET8V@@&)Y=&5S(’!E<B!R;W<I(&]F(&EM86=E#0H@4&1/9F9S8W)E
M96Y#;VYT97AT7W0@F-T>#L-“B @?2!#;V]L26UA9V4[#0H@#0H@(V1E9FEN
M92!.54U)34%'15,@-#@@(” @(" @("\O(",@:6UA9V5S(&EN(&]U<B!A;FEM
M871I;VX-“B C9&5F:6YE(%=((#(U-B @(” @(" @(" @(" @+R@=VED=&@@
M)B!H96EG:'0@
’=E)VQL(‘5S92!A(’-Q=6%R92!B=69F97(I#0H@(V1E9FEN
M92!2040@
%=(/CXQ2 @(" @(" @("\O(#$O,B!T:&4@=VED=&@O:&5I9VAT
M(&9O<B!C;VUP=71I;F<@86YI;6%T:6]N#0H@(V1E9FEN92!215!3(#$P," @
M(" @(" @(" @("\O(&AO=R!M86YY(‘1I;65S(’=E(’=A;G0@=&@8FQI="!E
M86-H(&EM86=E#0H@#0H@+R@<F5T=7)N<R!T:&4@86QL;V-A=&5D(&)U9F9E
M<@T
($-O;VQ);6%G92 J06QL;V-"=69F97(H;&]N9R!W+&QO;F<@:“D-“B![
M#0H@($-O;VQ);6%G92 J:3TH0V]O;$EM86=EBEM86QL;V,H<VEZ96]F"II
M2D[#0H@#0H@(&EF("@A:2D@<F5T=7)N(# [#0H@#0H@("\O(‘1H92!W:61T
M:"]H96EG:‘0@87)E(&%L=V%Y<R!W:&%T(’=E)W)E(’!A<W-E9"!I;@T
(”!I
M+3YW:61T:#UW.PT*(”!I+3YH96EG:‘0]:#L-"B -“B @+R@;W5R(&)L:70@
M='EP92 P(&ES(&$@<W1R86EG:'0@;65M;W)Y(&)L:70-“B @:68@&)L:71T
M>7!E/3TP
0T*(”![#0H@(”!I+3YP:71C:#UWC([#0H@("!I9B H:2T^8G5F
M9F5R/2AU;G-I9VYE9"!S:&]R="HI;6%L;&]C
’<J:“HR2D-“B @(”!R971U
M<FX@:3L-"B @?0T
(”!E;’-E(&EF(“AB;&ET=‘EP92 ]/3$I#0H@(‘L-"B @
M(&DM/G!I=&-H/7<J,CL-"B @(&EF("AI+3YB=69F97(]‘5N<VEG;F5D(’-H
M;W)T
BE09U-H;65M0W)E871E*’<J:“HR+$Y53$PI0T(” @(’)E='5R;B!I
M.PT*(”!]#0H@(&5L<V4-“B @:68@&)L:71T>7!E/3TR0T*(”![#0H@("!I
M9B H:2T^8W1X/5!D0W)E871E3V9F<V-R965N0V]N=&5X="@P+’<L:“Q09U]/
M4T-?345-7U!!1T5?04Q)1TXI0T(” @>PT*(" @(&DM/G!I=&-H/6DM/F-T
M>“T^<&ET8V@[#0H@(” @:2T^8G5F9F5R/5!D1V5T3V9F<V-R965N0V]N=&5X
M=%!T<BAI+3YC=’@I.PT*(" @(’)E=‘5R;B!I.PT*(" @?0T*("!]#0H@("\O
M(&EF(’=E(&9A:6PL(&9R964@=&AE($-O;VQ);6%G92!S=’)U8W1U<F4L(&%N
M9"!R971U<FX@, T*("!F<F5E*&DI.PT*("!R971U<FX@,#L-“B!]#0H@#0H@
M+R@=&AI<R!F=6YC=&EO;B!F<F5E<R!T:&4@:6UA9V4@9VEV96X-“B!V;VED
M($9R965”=69F97(H0V]O;$EM86=E(“II0T('L-“B @+R@9F]R(&)L:70@
M='EP92 P+”!W92!J=7-T(&9R964@=&AE(&UE;6]R>2!P<F5V:6]U<VQY(&UA
M;&QO8V5D#0H@(&EF(“AB;&ET='EP93T],“D-“B @(&9R964H:2T^8G5F9F5R
M3L-"F5L<V4-"B @:68@&)L:71T>7!E/3TQ0T(” @4&=3:&UE;41E<W1R
M;WDH:2T^8G5F9F5R3L-"F5L<V4-"B @:68@&)L:71T>7!E/3TR0T(” @
M4&A$0U)E;&5A<V4H:2T^8W1X3L@("\O(&9R964@=&AE(’-T<G5C='5R92!A
M<R!W96QL#0H@(&9R964H:2D[#0H@?0T
( T*(”\O(‘1H:7,@9G5N8W1I;VX@
M8FQI=’,@=&AE(&=I=F5N(&)U9F9E<B!U<VEN9R!O=7(@8FQI=”!T>7!E(&UE
M=&AO9 T*('9O:60@0FQI=$)U9F9E<BA0=%=I9&=E=%]T(“IW:6XL0V]O;$EM
M86=E(“II0T('L-“B @+R@1F]R(&)L:70@='EP92 P+”!W92!U<V4@4&=$
M<F%W26UA9V5M>”@I+B!792!H879E('1O(&UA:V4@<W5R92 -“B @+R@=&@
M<V5T(‘1H92!R96=I;VX@=&@=&AE(’=I;F1O=W,@<F5G:6]N(&9I<G-T+B @
M1&]N)W0@9F]R9V5T#0H@(”\O('1O(&9L=7-H(2 Z0T(”!I9B H8FQI='1Y
M<&4]/3 @?'P@8FQI='1Y<&4]/3$I#0H@('L-“B @(%!H4&]I;G1?=”!P;W,]
M>S L,'T[#0H@(”!0:$1I;5]T(’-I>F4]>VDM/G=I9’1H+&DM/FAE:6=H=‘T[
M#0H@("!09U-E=%)E9VEO;BA0=%=I9&=E=%)I9"AW:6XI3L-"B @(%!G1’)A
M=TEM86=E;7@H:2T^8G5F9F5R+# L)G!O<RPF<VEZ92QI+3YP:71C:"PP
3L-
M"B @(%!G1FQU<V@H3L-"B @?0T96QS90T*("!I9B H8FQI=‘1Y<&4]/3(I
M#0H@(‘L-"B @(%!H4F5C=%]T(’(]>WLP+#!]+‘MI+3YW:61T:“QI+3YH96EG
M:‘1]?3L-"B @(%!G4V5T4F5G:6]N*%!T5VED9V5T4FED*’=I;BDI.PT*(” @
M4&=#;VYT97AT0FQI="AI+3YC=’@L)G(L3E5,3"PF<BD[#0H@("!09T9L=7-H
M*“D[#0H@('T@?0T*( T*(&UA:6XH:6YT(&%R9V,L8VAA<B J87)G=EM=0T
M(‘L-"B @0V]O;$EM86=E("II;6%G97-;3E5-24U!1T5373L-"B @:6YT(’@L
M>3L-“B @:6YT(&DL:CL-“B @4’17:61G971?=” J=VEN.PT*(”!0=$%R9U]T
M(&%R9W-;,UT[#0H@(%!H1&EM7W0@9&EM/7M72"Q72’T[#0H@(%!H4&]I;G1?
M=”!P;W,]>S4P+#4P?3L-"@E0:$1R87=#;VYT97AT7W0@F]L9&1C.PT#0H@
M("\O(&EF(&$@<&%R86UA=&5R(’=A<R!P87-S960L(&=R86(@:70@87,@=&AE
M(&)L:70@=‘EP92 -“B @:68@&%R9V,^,2D@8FQI='1Y<&4]871O:2AA<F=V
M6S%=3L-"B -“B @+R@:6YI=&EA;&EZ92!O=7(@8V]N;F5C=&EO;B!T;R!0
M:&]T;VXL(&%N9”!C<F5A=&4O<F5A;&EZ92!A(’=I;F1O=R -"B @4’1);FET
M
"(O9&5V+W!H;W1O;B(I.PT
(”!0=%-E=$%R9R@F87)G<ULP72Q0=%]!4D=?
M4$]3+“9P;W,L,“D[#0H@(%!T4V5T07)G*“9A<F=S6S%=+%!T7T%21U]$24TL
M)F1I;2PP3L-"B @=VEN/5!T0W)E871E5VED9V5T%!T5VEN9&]W+%!T7TY/
M7U!!4D5.5"PR+&%R9W,I.PT*(”!0=%)E86QI>F57:61G970H=VEN3L-"B -
M"B @+R@06QL;V-A=&4@86YD(&9I;&P@82!S97)I97,@;V8@3E5-24U!1T53
M(&EM86=E<R!W:71H(&$@;&ET=&QE( T
(” O+R!F861I;F<@='EP92!A;FEM
M871I;VXN(”!0=70@>6]U<B!O=VX@86YI;6%T:6]N(&EN(&AE<F4@:68@>6]U
M(&QI:V4N#0H@(&9O<B H:3TP.VD\3E5-24U!1T53.VDKRD-"B @>PT(" @
M:6UA9V5S6VE=/4%L;&]C0G5F9F5R*%=(+%=(3L-“B @(&EF(”@A:6UA9V5S
M6VE=0T(" @>PT
(" @(’!R:6YT9B@B0V]U;&1N)W0@86QL;V-A=&4@:6UA
M9V4@)60L(‘1R>2!S971T:6YG($Y534E-04=%4R!T;R E9%QN(BQI+&DI.PT*
M(" @(&5X:70H,“D[#0H@(”!]#0H@(" -"@D-"@DOB!-86ME(&ET('1H92!C
M=7)R96YT(&-O;G1E>‘0@86YD(&1R87<@82!P=7)P;&4@#0H@("!R96-T86YG
M;&4@:6X@:70N("HO#0H);VQD9&,]4&A$0U-E=$-U<G)E;G0H:6UA9V5S6VE=
M+3YC=’@I.PT
"5!G4V5T1FEL;$-O;&]R*%!G7U!54E!,12D[#0H)4&=$<F%W
M25)E8W0H,“PP+#DY+#DY+%!G7T1205=?1DE,3"D[#0H)4&=&;'5S:”@I.R @
M+RH@1’)A=W,@=&AE(’)E8W1A;F=L92X@B)#0H-"@E0:$1#4V5T0W5R<F5N
M=“AO;&1D8RD[#0H-@T
+RH@("!F;W(@'D],#MY/%)!1#MYRLI#0H@(" @
M9F]R("AX/3 [>#Q2040[>“LK0T(” @('L-“B @(” @:6YT(‘9A;#TH*’@
M>2D
>#IY3L-“B @(” @=F%LSTH:2I2040I+TY534E-04=%4SL-“B @(” @
M=F%L/2AV86PJ,3(X2]2040[#0H@(" @(&EF("AV86PF,’@T,"D@=F%L/3!X
M,V8M
’9A;“8P>#-F3L-“B @(” @:6UA9V5S6VE=+3YB=69F97);'DJ*&EM
M86=E<UMI72T^<&ET8V@^/C$I2MX73T-“B @(” @:6UA9V5S6VE=+3YB=69F
M97);
@H5T@M,2DM>2DJ*&EM86=E<UMI72T^<&ET8V@^/C$I2MX73T-“B @
M(” @:6UA9V5S6VE=+3YB=69F97);
‘DJ*&EM86=E<UMI72T^<&ET8V@^/C$I
M2LH%=(+3$I+7@I73T-“B @(” @:6UA9V5S6VE=+3YB=69F97);"@H5T@M
M,2DM>2DJ
&EM86=E<UMI72T^<&ET8V@^/C$I2LH%=(+3$I+7@I73T-“B @
M(” @("AV86PF,’@S9BD/#4[#0H@(" @?0T*(“HO#0H@(‘T-“B @#0H@#0H@
M(”\O(&)L:70@=&AE($Y534E-04=%4R!I;6%G97,@4D504R!T:6UE<RX-"B @
M9F]R(“AJ/3 [:CQ215!3.VHKRD-"B @(&9O<B H:3TP.VD\3E5-24U!1T53
M.VDK
RD-“B @(”!”;&ET0G5F9F5R*’=I;BQI;6%G97-;:5TI.PT*#0H@(’!R
M:6YT9B@B0FQI='1E9” E9"!F<F%M97,@=7-I;F<@;65T:&]D(“5D7&XB+%)%
M4%,J3E5-24U!1T53+&)L:71T>7!E3L-"B -"B @+R@;F]W(&9R964@=&AE
M(&EM86=E<PT
(”!F;W(@&D],#MI/$Y534E-04=%4SMIRLI#0H@("!&<F5E
M0G5F9F5R*&EM86=E<UMI72D[#0H@#0H@("\O+R!H:61E(‘1H92!W:6YD;W<@
M86YD(&1E<W1R;WD@:70N#0H@(%!T56YR96%L:7IE5VED9V5T*’=I;BD[#0H@
=(%!T1&5S=’)O>5=I9&=E="AW:6XI.PT*('T-"B
end_