From 071f8e5004dcedc0629a021ea71491f280c2405b Mon Sep 17 00:00:00 2001 From: Larry Masinter Date: Thu, 24 Feb 2022 19:03:49 -0800 Subject: [PATCH 1/2] patch some idle hacks and merge in IDLEDRAIN --- lispusers/IDLEDRAIN | 62 ---------------------- lispusers/IDLEDRAIN.LCOM | Bin 1370 -> 0 bytes lispusers/IDLEHAX | 108 ++++++++++++++++++++++++++++++++++----- lispusers/IDLEHAX.LCOM | Bin 14318 -> 16210 bytes lispusers/IDLEHAX.TEDIT | Bin 5253 -> 5428 bytes 5 files changed, 94 insertions(+), 76 deletions(-) delete mode 100644 lispusers/IDLEDRAIN delete mode 100644 lispusers/IDLEDRAIN.LCOM diff --git a/lispusers/IDLEDRAIN b/lispusers/IDLEDRAIN deleted file mode 100644 index c4710ec1..00000000 --- a/lispusers/IDLEDRAIN +++ /dev/null @@ -1,62 +0,0 @@ -(FILECREATED "28-May-86 12:00:22" {ERIS}KOTO>IDLEDRAIN.;2 2598 - - changes to: (FNS IDLE-DRAIN) - (VARS IDLEDRAINCOMS) - - previous date: "28-May-86 11:44:43" {ERIS}KOTO>IDLEDRAIN.;1) - - -(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.) - -(PRETTYCOMPRINT IDLEDRAINCOMS) - -(RPAQQ IDLEDRAINCOMS ([ADDVARS (IDLE.FUNCTIONS ("Drain" (QUOTE IDLE-DRAIN] - (FNS IDLE-DRAIN))) - -(ADDTOVAR IDLE.FUNCTIONS ("Drain" (QUOTE IDLE-DRAIN))) -(DEFINEQ - -(IDLE-DRAIN - [LAMBDA (WINDOW) (* hdj "28-May-86 11:52") - (do (BITBLT (WINDOWPROP WINDOW (QUOTE IMAGECOVERED)) - NIL NIL WINDOW NIL NIL NIL NIL (QUOTE INVERT) - (QUOTE REPLACE)) - (LET* ((WIDTH (WINDOWPROP WINDOW (QUOTE WIDTH))) - (HEIGHT (WINDOWPROP WINDOW (QUOTE HEIGHT))) - (HALF-WIDTH (IQUOTIENT WIDTH 2)) - (HALF-HEIGHT (IQUOTIENT HEIGHT 2))) - (for EDGE from 0 to (MIN HALF-WIDTH HALF-HEIGHT) - do (BLOCK) - (BITBLT WINDOW EDGE 0 WINDOW (1+ EDGE) - 0 - (- HALF-WIDTH EDGE) - HEIGHT - (QUOTE INPUT) - (QUOTE REPLACE)) - (BLTSHADE WHITESHADE WINDOW EDGE 0 1 HEIGHT (QUOTE REPLACE)) - (BITBLT WINDOW (1+ HALF-WIDTH) - 0 WINDOW HALF-WIDTH 0 (- HALF-WIDTH EDGE) - HEIGHT - (QUOTE INPUT) - (QUOTE REPLACE)) - (BLTSHADE WHITESHADE WINDOW (- WIDTH EDGE) - 0 1 HEIGHT (QUOTE REPLACE)) - (BITBLT WINDOW 0 EDGE WINDOW 0 (1+ EDGE) - WIDTH - (- HALF-HEIGHT EDGE) - (QUOTE INPUT) - (QUOTE REPLACE)) - (BLTSHADE WHITESHADE WINDOW 0 EDGE WIDTH 1 (QUOTE REPLACE)) - (BITBLT WINDOW 0 (+ HALF-HEIGHT EDGE 1) - WINDOW 0 (+ HALF-HEIGHT EDGE) - WIDTH - (- HALF-HEIGHT EDGE) - (QUOTE INPUT) - (QUOTE REPLACE)) - (BLTSHADE WHITESHADE WINDOW 0 (- HEIGHT EDGE) - WIDTH 1 (QUOTE REPLACE]) -) -(PUTPROPS IDLEDRAIN COPYRIGHT ("Xerox Corporation" 1986)) -(DECLARE: DONTCOPY - (FILEMAP (NIL (520 2518 (IDLE-DRAIN 530 . 2516))))) -STOP diff --git a/lispusers/IDLEDRAIN.LCOM b/lispusers/IDLEDRAIN.LCOM deleted file mode 100644 index 5d54a963126d89646c2bc1bf97c3268a387fb020..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1370 zcma)6-%p!R6t2sDCp;{^FDJYVlC|Lit%Vs=EGSoKL7+M_UpgUL+DX&uGPC$cZ2yU` zTNa=9-ewQ`Gko86pjuF8Vng7ZbHDSQkKX&itx?-(dWIGlI-> zz_EMDhhc9Jg^(N~>lALHm?#v6+~55Sf1gosl@@U z?n${`10t$|po$`@Gd${_F5A?1JHFxhE0z;DMQI|=Q|hpH&^_Fb#&DFVz^%1?NY$4! z`8)&Mmgdb$S*7W;d>)3Q=wmNA9%l+wRG5z^>7OM__ZUxjCZ7Z^^*Y13Pz6)7*UH;e z4@_`Do~5Qi*UbQP2@HMRz<|KKCcq3$A&uI)v(3Xo`EjYV(0EqD-_M5!VdEeS!~HbN zZp`yEJa1%47Qa|16*KLTIe75<2gTcN*t+;~-ip6}votmh;e{vThssW$Cla8%2)icZB6=}!TA=P|^6njXqhe%6#4v+wXYBgA_Q(oP$VY-baX($3p#*qdGr~_|CJlD9SlbLD-hz1?XA4T+axC z9kh|_(RPq|EjJd!d9Jp(dA$l8r|EiTLoPK;Wv$b02Gl{Pa;!e;_73sOwApb2qv%|o z=Wn^0$N5MVI7pUZ?@NWUJ3+cdg)ad#9e2mee95tIqfzn+n#pLGjJij?1SJurUc-TH HYBT=;O8Z$b diff --git a/lispusers/IDLEHAX b/lispusers/IDLEHAX index 98c52db8..ba0c577c 100644 --- a/lispusers/IDLEHAX +++ b/lispusers/IDLEHAX @@ -1,21 +1,21 @@ (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) -(FILECREATED "15-Jan-2022 15:31:21" {DSK}larry>medley>lispusers>IDLEHAX.;2 22517 +(FILECREATED " 9-Feb-2022 13:53:05" {DSK}larry>medley>lispusers>IDLEHAX.;3 26245 - :CHANGES-TO (FNS CONNECTPOLYS) + :CHANGES-TO (FNS IDLE-DRAIN) (VARS IDLEHAXCOMS) - :PREVIOUS-DATE "26-Sep-91 14:35:23" {DSK}larry>medley>lispusers>IDLEHAX.;1) + :PREVIOUS-DATE "15-Jan-2022 15:31:21" {DSK}larry>medley>lispusers>IDLEHAX.;1) (* ; " -Copyright (c) 1985-1988, 1991 by Xerox Corporation. +Copyright (c) 1985-1988, 1991, 2022 by Xerox Corporation. ") (PRETTYCOMPRINT IDLEHAXCOMS) (RPAQQ IDLEHAXCOMS - ((COMS [ADDVARS (IDLE.FUNCTIONS (Lines 'LINES) + [(COMS [ADDVARS (IDLE.FUNCTIONS (Lines 'LINES) (Warp-Out 'WARP) (Radar 'WALKINGSPOKE) [Triangles (FUNCTION (LAMBDA (W) @@ -56,7 +56,12 @@ Copyright (c) 1985-1988, 1991 by Xerox Corporation. (COMS (* ; "utilities") (FNS DEMOWINDOW) (GLOBALVARS BLOCKTIMER) - (MACROS PERIODIC.BLOCK)))) + (MACROS PERIODIC.BLOCK)) + (COMS [ADDVARS (IDLE.FUNCTIONS ("Drain" 'IDLE-DRAIN] + (FNS IDLE-DRAIN)) + (COMS (INITVARS (IDLE-SWAP-SIZE 64)) + (FNS IDLE-SWAP) + (ADDVARS (IDLE.FUNCTIONS ("Swap" 'IDLE-SWAP]) (ADDTOVAR IDLE.FUNCTIONS (Lines 'LINES) @@ -389,13 +394,88 @@ Copyright (c) 1985-1988, 1991 by Xerox Corporation. then (BLOCK) (SETQ TIMER (SETUPTIMER 100 TIMER 'TICKS 'MILLISECONDS]) ) -(PUTPROPS IDLEHAX COPYRIGHT ("Xerox Corporation" 1985 1986 1987 1988 1991)) + +(ADDTOVAR IDLE.FUNCTIONS ("Drain" 'IDLE-DRAIN)) +(DEFINEQ + +(IDLE-DRAIN + [LAMBDA (WINDOW) (* hdj "28-May-86 11:52") + (do (BITBLT (WINDOWPROP WINDOW 'IMAGECOVERED) + NIL NIL WINDOW NIL NIL NIL NIL 'INVERT 'REPLACE) + (LET* ((WIDTH (WINDOWPROP WINDOW 'WIDTH)) + (HEIGHT (WINDOWPROP WINDOW 'HEIGHT)) + (HALF-WIDTH (IQUOTIENT WIDTH 2)) + (HALF-HEIGHT (IQUOTIENT HEIGHT 2))) + (for EDGE from 0 to (MIN HALF-WIDTH HALF-HEIGHT) + do (BLOCK) + (BITBLT WINDOW EDGE 0 WINDOW (PLUS 1 EDGE) + 0 + (- HALF-WIDTH EDGE) + HEIGHT + 'INPUT + 'REPLACE) + (BLTSHADE WHITESHADE WINDOW EDGE 0 1 HEIGHT 'REPLACE) + (BITBLT WINDOW (PLUS 1 HALF-WIDTH) + 0 WINDOW HALF-WIDTH 0 (- HALF-WIDTH EDGE) + HEIGHT + 'INPUT + 'REPLACE) + (BLTSHADE WHITESHADE WINDOW (- WIDTH EDGE) + 0 1 HEIGHT 'REPLACE) + (BITBLT WINDOW 0 EDGE WINDOW 0 (PLUS 1 EDGE) + WIDTH + (- HALF-HEIGHT EDGE) + 'INPUT + 'REPLACE) + (BLTSHADE WHITESHADE WINDOW 0 EDGE WIDTH 1 'REPLACE) + (BITBLT WINDOW 0 (+ HALF-HEIGHT EDGE 1) + WINDOW 0 (+ HALF-HEIGHT EDGE) + WIDTH + (- HALF-HEIGHT EDGE) + 'INPUT + 'REPLACE) + (BLTSHADE WHITESHADE WINDOW 0 (- HEIGHT EDGE) + WIDTH 1 'REPLACE]) +) + +(RPAQ? IDLE-SWAP-SIZE 64) +(DEFINEQ + +(IDLE-SWAP + [LAMBDA (WINDOW) (* hdj "29-May-86 23:41") + (DECLARE (GLOBALVARS IDLE-SWAP-SIZE)) + (BITBLT (WINDOWPROP WINDOW 'IMAGECOVERED) + NIL NIL WINDOW NIL NIL NIL NIL 'INVERT 'REPLACE) + (LET [(WIDTH (WINDOWPROP WINDOW 'WIDTH)) + (HEIGHT (WINDOWPROP WINDOW 'HEIGHT] + (do (BLOCK (RAND 0 5000)) + (LET [[RAND-X-1 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT WIDTH IDLE-SWAP-SIZE] + [RAND-Y-1 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT HEIGHT IDLE-SWAP-SIZE] + [RAND-X-2 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT WIDTH IDLE-SWAP-SIZE] + (RAND-Y-2 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT HEIGHT IDLE-SWAP-SIZE] + (if (AND (NEQ RAND-X-1 RAND-X-2) + (NEQ RAND-Y-1 RAND-Y-2)) + then + + (* * swap the two regions of the window using BITBLT only) + + (BITBLT WINDOW RAND-X-1 RAND-Y-1 WINDOW RAND-X-2 RAND-Y-2 IDLE-SWAP-SIZE + IDLE-SWAP-SIZE 'INPUT 'INVERT) + (BITBLT WINDOW RAND-X-2 RAND-Y-2 WINDOW RAND-X-1 RAND-Y-1 IDLE-SWAP-SIZE + IDLE-SWAP-SIZE 'INPUT 'INVERT) + (BITBLT WINDOW RAND-X-1 RAND-Y-1 WINDOW RAND-X-2 RAND-Y-2 IDLE-SWAP-SIZE + IDLE-SWAP-SIZE 'INPUT 'INVERT]) +) + +(ADDTOVAR IDLE.FUNCTIONS ("Swap" 'IDLE-SWAP)) +(PUTPROPS IDLEHAX COPYRIGHT ("Xerox Corporation" 1985 1986 1987 1988 1991 2022)) (DECLARE%: DONTCOPY - (FILEMAP (NIL (3562 7602 (POLYGONSDEMO 3572 . 3742) (POLYGONS 3744 . 4108) (CONNECTPOLYS 4110 . 6508) -(DRAWPOLY1 6510 . 7147) (RANDOMPT 7149 . 7600)) (8239 11221 (KALDEMO 8249 . 9660) (KAL.ADVANCE 9662 . -10063) (KAL.SPOTS 10065 . 10406) (KAL.BMS 10408 . 10895) (KAL.ORAND 10897 . 11219)) (11258 12744 ( -BUBBLES 11268 . 12374) (BUBBLE.CREATE 12376 . 12742)) (12771 13756 (IDLE-WINDOWS 12781 . 13754)) ( -13791 16062 (LINES 13801 . 14860) (LINES1 14862 . 15272) (LINES2 15274 . 15585) (LINES3 15587 . 16060) -) (16122 17335 (WALKINGSPOKE 16132 . 16913) (WARP 16915 . 17333)) (17360 21643 (IDLE-MELT 17370 . -19886) (IDLE-SLIDE 19888 . 21641)) (21814 22060 (DEMOWINDOW 21824 . 22058))))) + (FILEMAP (NIL (3794 7834 (POLYGONSDEMO 3804 . 3974) (POLYGONS 3976 . 4340) (CONNECTPOLYS 4342 . 6740) +(DRAWPOLY1 6742 . 7379) (RANDOMPT 7381 . 7832)) (8471 11453 (KALDEMO 8481 . 9892) (KAL.ADVANCE 9894 . +10295) (KAL.SPOTS 10297 . 10638) (KAL.BMS 10640 . 11127) (KAL.ORAND 11129 . 11451)) (11490 12976 ( +BUBBLES 11500 . 12606) (BUBBLE.CREATE 12608 . 12974)) (13003 13988 (IDLE-WINDOWS 13013 . 13986)) ( +14023 16294 (LINES 14033 . 15092) (LINES1 15094 . 15504) (LINES2 15506 . 15817) (LINES3 15819 . 16292) +) (16354 17567 (WALKINGSPOKE 16364 . 17145) (WARP 17147 . 17565)) (17592 21875 (IDLE-MELT 17602 . +20118) (IDLE-SLIDE 20120 . 21873)) (22046 22292 (DEMOWINDOW 22056 . 22290)) (22704 24577 (IDLE-DRAIN +22714 . 24575)) (24609 26090 (IDLE-SWAP 24619 . 26088))))) STOP diff --git a/lispusers/IDLEHAX.LCOM b/lispusers/IDLEHAX.LCOM index dadfa9e52c9ce0c70c280cd84413507a80ea5d60..ba3f6089fea0e44c9fd0cc6fb3a144a35b47ac90 100644 GIT binary patch delta 1997 zcmb7FO^@3|7SkZv|f3}vExKQZDQ|w)*nf2Z?}aCby2Do2W=4- zKtlM+4Hn<{7pvSrDB{Q!W#Q2OfL1C;M0say$4;^Zk%K+&^FHs#Pb8IK9q<|2*OHVRr**yp1gfUX(O?Tx;3ZTSLME}9{>F2CWnvDF6rxjz1bF9JJhoW zp>4*tg_`RXWHo!MA-$#`qLGe@`UA%dcI`-tho~j)1QDW^XG>OS(jfb$@%m+~N_&S# zMUQGeu&<>RAN4I=Y>kkL9Mjv84yYA7XoNbs>DYAFiNRKoZSC5y zz-WQVC}&f|R)IA*ZH{OW2Ia1G47T8o(%AC;38E+yLO!B z;~IrSm^5KX4N!oaS69&;8bte{T})SmK4lczBhMVLHfw8DMKl=gL&v0BG2~ut-6`$Nmm%p?ydKbQ+F=Ywt1WV|M+fF;q4oPHGy_Yz zEfFqtZrtJq)XF^=JR~=6Nz7Oj9C5j`V^SBs@YgxQ&+cArr^(UQ*IeoRP|WT!RVEI9 zJ>vLpIYif?|6*O-*xd8ZrXRTe+4Q!t=Ng{RlhjXK%4^KP1%x$k;XFSycW#|LF+ibk z@06m%3w>f8^p=YS1A+Z_2otSX$RGtX1xVL(L<2!`8EP;q##L9v*TMfsjY>IZI4GsO z2my_->yS-cifH;CNEOS4AP|vDrQ#k$*NDKwIxcy*s})kiT?k&`vBIkmS%U}*OsiH{ z1yJ*9qzpxull5RT%ZR>~y$kzT=5)H{-K=QUnRux@uW%dG4#l*$eSNcmvSb_GYg(Tk zest7CtsDEp*v`}Pk4YPTsI~loVaQPx# delta 190 zcmcaq_bz`z_~cEDViR+%C5P{Gi|%GlJ($XH2%3uMUV fFO04_n?p?OSvLn-sk2P}XXnALsmbN%>B9v8lNK`a diff --git a/lispusers/IDLEHAX.TEDIT b/lispusers/IDLEHAX.TEDIT index fba6d6df40ee72366a0e73844164c110bdbe0297..0fe13314bda3edb49de09b834ff16b449dc5c31b 100644 GIT binary patch delta 331 zcmZqG+@fWdnzy~|XnwH*1SICAD0t?Tq!#6578mH{7o~H0y7;(yI7aXqaq*gP@fvdR z!UTX!6RwSFK8*GM|1&7~mt>?CDR`#jq$*@2CTABbBo?JAF#W?}#W5Wxsy0JShkZaybi#3=j*#ODO! XuON9gAcJ|cqp%$#8&@NPYt=3Qteaa9 delta 170 zcmdm@)vBqMnzy~|XnrxLr;CrPhhqe<5ihR^FRvjlFH8W)G~wN7=fk*}gXummqw(ZG z0rkoJ0^E#7lVt@Afn*?%)S28Wpv|wt00fLD7zBY73lsBXLjhT!%tHZfAjvPN&FC@N uR?vHLm*6=WMvzJ-kZKSEM1UF0Ajalwp&~}cx0^o*+cC0nzGiT#+64g0^CMmW From 2ec33f860c21836b76abe854819144184672db6a Mon Sep 17 00:00:00 2001 From: Larry Masinter Date: Thu, 24 Feb 2022 19:09:53 -0800 Subject: [PATCH 2/2] useless IDLESWAP, no docs --- lispusers/IDLESWAP | 54 ---------------------------------------- lispusers/IDLESWAP.LCOM | Bin 1488 -> 0 bytes 2 files changed, 54 deletions(-) delete mode 100644 lispusers/IDLESWAP delete mode 100644 lispusers/IDLESWAP.LCOM diff --git a/lispusers/IDLESWAP b/lispusers/IDLESWAP deleted file mode 100644 index acdc41da..00000000 --- a/lispusers/IDLESWAP +++ /dev/null @@ -1,54 +0,0 @@ -(FILECREATED "29-May-86 23:42:08" {ERIS}KOTO>IDLESWAP.;4 2353 - - changes to: (FNS IDLE-SWAP) - (VARS IDLESWAPCOMS) - - previous date: "29-May-86 23:10:51" {ERIS}KOTO>IDLESWAP.;2) - - -(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.) - -(PRETTYCOMPRINT IDLESWAPCOMS) - -(RPAQQ IDLESWAPCOMS [(INITVARS (IDLE-SWAP-SIZE 64)) - (FNS IDLE-SWAP) - (ADDVARS (IDLE.FUNCTIONS ("Swap" (QUOTE IDLE-SWAP]) - -(RPAQ? IDLE-SWAP-SIZE 64) -(DEFINEQ - -(IDLE-SWAP - [LAMBDA (WINDOW) (* hdj "29-May-86 23:41") - (DECLARE (GLOBALVARS IDLE-SWAP-SIZE)) - (BITBLT (WINDOWPROP WINDOW (QUOTE IMAGECOVERED)) - NIL NIL WINDOW NIL NIL NIL NIL (QUOTE INVERT) - (QUOTE REPLACE)) - (LET [(WIDTH (WINDOWPROP WINDOW (QUOTE WIDTH))) - (HEIGHT (WINDOWPROP WINDOW (QUOTE HEIGHT] - (do (BLOCK (RAND 0 5000)) - (LET [[RAND-X-1 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT WIDTH IDLE-SWAP-SIZE] - [RAND-Y-1 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT HEIGHT IDLE-SWAP-SIZE] - [RAND-X-2 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT WIDTH IDLE-SWAP-SIZE] - (RAND-Y-2 (TIMES IDLE-SWAP-SIZE (RAND 0 (IQUOTIENT HEIGHT IDLE-SWAP-SIZE] - (if (AND (NEQ RAND-X-1 RAND-X-2) - (NEQ RAND-Y-1 RAND-Y-2)) - then - - (* * swap the two regions of the window using BITBLT only) - - (BITBLT WINDOW RAND-X-1 RAND-Y-1 WINDOW RAND-X-2 RAND-Y-2 IDLE-SWAP-SIZE - IDLE-SWAP-SIZE (QUOTE INPUT) - (QUOTE INVERT)) - (BITBLT WINDOW RAND-X-2 RAND-Y-2 WINDOW RAND-X-1 RAND-Y-1 IDLE-SWAP-SIZE - IDLE-SWAP-SIZE (QUOTE INPUT) - (QUOTE INVERT)) - (BITBLT WINDOW RAND-X-1 RAND-Y-1 WINDOW RAND-X-2 RAND-Y-2 IDLE-SWAP-SIZE - IDLE-SWAP-SIZE (QUOTE INPUT) - (QUOTE INVERT]) -) - -(ADDTOVAR IDLE.FUNCTIONS ("Swap" (QUOTE IDLE-SWAP))) -(PUTPROPS IDLESWAP COPYRIGHT ("Xerox Corporation" 1986)) -(DECLARE: DONTCOPY - (FILEMAP (NIL (532 2216 (IDLE-SWAP 542 . 2214))))) -STOP diff --git a/lispusers/IDLESWAP.LCOM b/lispusers/IDLESWAP.LCOM deleted file mode 100644 index b65c968e137b6c206fd595e8995ddc4c8e418f30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1488 zcmah}%Wl(95KU1*0?CW2do=O}d*R5we#9|V$-{1Q8^?BSr)d#FgxYFTg*ZwYphDgA zJE$MfH9x?HpXdi5!PsuV?(J;OMq6+odNy;mi%Pd6wbIimRs3aO9F_bFHGu%S4q$+g! z7lN(R6oR)8KN;rh(TDEI-(8yPDQA|X|49OgwOZ&)2MbDMbSyB zWq-`GRIFw4vbgbR?QFF9HG?z%>vt*ntd+ffX84aBqN~tDtc~@@d-l!M+ji&X>ZrEY zuGyU|$Vze7XhHkGjQ{i8{Pw$6;)tR`qurok!w!K+TA@gK<(`7HwEZ9v?N$&gxuEO$ zTdP9DcAIU`^1}g@z^)bcXxeMfck$4qB|sL73@W^#PSEwO+yN(;$W@@uf#qXivVx-5 zMTzLe1PTFtZDG~o9Zytmc~TXf=aZWABwd>Gq>47@RnU2fm*!oD$O=SO9VK~%C1TFS zSh&4Qh`tiMf}gSIrBvplENi!uOt8n~>S>x}jBk1)n{6 z@>d0%pA6<;I1CxO7&J5fE#zuM{L*fij#hC8LDTh){A}kr_As6#pP`vd#>u3AK1fC^ Nc1qWHo^hzn`~e-xW#Rw;