#!/bin/sh # MetaCard 2.4 stack # The following is not ASCII text, # so now would be a good time to q out of more exec mc $0 "$@"  4wDevSetup"klocal sSaveDir, sSaveType, sDataStack on InstallFiles pPluginsFlag local tPath -- if pPluginsFlag is empty then answer folder "Select a folder to install into:" if it is empty then exit to top put it into tPath else put the filename of stack "home" into tPath set the itemDel to "/" put "Plugins/" into last item of tPath end if -- DeArchive tPath -- if there is a stack "revMenuBar" then -- -- in Rev: answer "Devolution installed succesfully."&\ cr&cr&"You'll need to restart to see the '4W Devolution' item in the 'Plugins' menu."&cr\ &"Would you like to open it now anyway?" with "Do Not Open" or "Open Now" else answer "Devolution installed successfully."&\ cr& "Open it now?" with "Do not Open" or "Open Now" end if if it is "Open Now" then open stack tPath&"4W Devolution.rev" end InstallFiles on DeArchive pDestPath local i, tKey, tFile, tSubFolder, tTargetDir put the directory into sSaveDir set the directory to pDestPath -- set the endValue of sb "progress" to the uCount of this stack set the itemdel to tab put 0 into i put the fileType into sSaveType show sb "progress" repeat add 1 to i set the thumbpos of sb "progress" to i put the uKey[i] of this stack into tKey if tKey is empty then exit repeat put item 1 of tKey into tFile set the filetype to (last item of tKey) --- -- build folders as needed: set the itemdel to "/" put tFile into tSubFolder delete last item of tSubFolder put empty into tTargetDir if tSubFolder is not empty then -- there are folders specified: if char 1 of tSubFolder = "/" then delete char 1 of tSubFolder repeat for each item tNuFolderName in tSubFolder put tNuFolderName & "/" after tTargetDir if there is not a folder tTargetDir then create folder tTargetDir Err the result, "Can't create folder "&q(tTargetDir) end if end repeat end if set the itemdel to tab -- get the uData[i] of this stack put decompress(it) into url ("binfile:"&tFile) Err the result, tFile -- if (item 2 of tKey = "true") and (the platform is "MacOS") then -- bug in rev 2.1: if ":" is in tFile then next repeat get the uRes[i] of stack sDataStack put decompress(it) into url ("resfile:"&tFile) Err the result, "r"&& tFile end if end repeat -- set the thumbpos of sb "progress" to 0 -- set the fileType to sSaveType set the directory to sSaveDir hide sb "progress" end DeArchive function VersionIsNewer pLocalVers, pRemoteVers return Version2Int(pLocalVers) < Version2Int(pRemoteVers) end VersionIsNewer function Version2Int pVers local i, tInt -- if pVers is empty then return 0 replace "b" with ".0" in pVers replace "a" with ".0.0" in pVers replace "d" with ".0.0.0" in pVers set the itemdel to "." put 0 into item 6 of pVers repeat for each item i in pVers put PadN(i,3) after tInt end repeat return tInt end Version2Int function PadN s,n put n-len(s) into n repeat n put "0" before s end repeat return s end PadN function CurrentPluginsFolder if there is a stack "MetaCard Menu Bar" then return mcPluginsFolder() else get the filename of stack "Home" set the itemdel to "/" put "Plugins" into last item of it if there is a folder it then return it else return empty end if end CurrentPluginsFolder on Err s, m if s is not empty then answer s && m exit to top end if end Err function q s return quote &s& quote end q on PutS s put s into fld "status" end PutS on preOpenCard if the platform is "MacOS" then put 17 into tHeight else put 12 into tHeight repeat with i = 1 to the number of btns set the textHeight of btn i to tHeight end repeat end preOpenCard on StripAndShip put empty into fld "status" of stack "4wDevSetup" put empty into fld "status" of stack "4wDevUpdate" put empty into fld "info" of stack "4wDevUpdate" put empty into fld "list" of stack "4wDevUpdate" compact stack "4wDevSetup" save stack "4wDevSetup" end StripAndShip `o9|4W devolution Setup ULucida Grande ULucida GrandeULucida GrandeU Arial BlackU Arial NarrowU Arial NarrowUArial0UArial ULucida GrandeuKeyuData Pon preOpenCard hide scrollbar "progress" if there is not a folder (fld "Folder") then put CurrentPluginsFolder()&"/" into fld "Folder" enable btn "update" set the label of btn "update" to "Download and Install..." end if -- extra thing we have to do because Rev does not honor the engine's -- normal opening behavior: set the style of this stack to "modeless" pass preOpenCard end preOpenCard | cREVGeneralscriptChecksum+CqpATUm83 bookmarks handlerList preOpenCardscriptSelectionchar 299 to 298 prevHandler preOpenCard tempScriptscript

on preOpenCard

hide scrollbar "progress"

if there is not a folder (fld "Folder") then

put CurrentPluginsFolder()&"/" into fld "Folder"

end if

-- extra thing we have to do because Rev does not honor the engine's

-- normal opening behavior:

set the style of this stack to "modeless"

pass preOpenCard

end preOpenCard

 descA'E  progressAa#kJ74Select Installation Folder...Eon mouseUp answer folder "Select a folder to install into:" if it is empty then exit to top put it &"/" into fld "folder" enable btn "update" end mouseUp  cREVGeneral folder xon mouseUp if the optionKey is "down" then answer "Clear installation folder?" with "Cancel" or "Clear" if it is "Cancel" then exit to top put empty into fld "folder" disable btn "update" save this stack end if end mouseUp 2 cREVGeneral  /Playtime/Revolution/Plugins/  updatee on mouseUp local tData, tLine, tFileName, tPath, tUpdateList, i -- set cursor to watch put empty into fld "List" of stack "4wDevUpdate" PutS "Contacting server..." -- if there is a stack "MetaCard Menu Bar" then start using "libUrl" put url "http://www.fourthworld.net/revnet/devolution/devo_index.idx" into tData if the result is not empty then answer "Couldn't download updates list:"&cr& the result exit to top end if PutS "Getting file info..." put decompress(tData) into tData -- put fld "folder" into tBasePath if the platform is "MacOS" then put 67790 into tCheckOFF put 67791 into tCheckON else put 67792 into tCheckOFF put 67793 into tCheckON end if -- set the itemdel to tab repeat for each line tLine in tData put item 4 of tLine into tFileName if char -3 to -1 of tFileName = ".gz" then delete char -3 to -1 of tFileName if tFileName <> "4wDevolution.rev" then put "4wTools/" before tFileName put tBasePath & tFileName into tPath if there is not a stack tPath then put ""&tab before tLine put "-"&tab before item 3 of tLine put "New"&tab before item 5 of tLine else put the ufwVersion of stack tPath into tLocalVers put item 2 of tLine into tRemoteVers put tLocalVers&tab before item 2 of tLine if VersionIsNewer( tLocalVers, tRemoteVers) then put ""&tab before tLine put "Updated" &tab before item 5 of tLine else put ""&tab before tLine --put "-" into item 5 of tLine put "Current"&tab before item 5 of tLine end if end if put tLine &cr after tUpdateList end repeat if last char of tUpdateList = cr then delete last char of tUpdateList -- replace tab with " " in tUpdateList replace cr with "
" in tUpdateList set the htmlText of fld "List" of stack "4wDevUpdate" to tUpdateList -- if "4wDevUpdate" is not in the windows then set the itemdel to comma set the loc of stack "4wDevUpdate" to \ (item 1 of the screenLoc), (the height of stack "4wDevUpdate" div 2)+100 end if if the optionKey is "down" then toplevel "4wDevUpdate" else modeless "4wDevUpdate" end mouseUp TDownload and Install... cREVGeneral status/     copyright &  1999-2004 Fourth World Media Corporation i   cREVGeneral revUniqueID 1094865910776K@@ cREVGeneral revUniqueID 1094866198888devotitle.gifH@GIF89at!LiveMotion2.0.0.101!,)))BBBZZZsss999JJJkkk{{{333fffRRR߼`ޠ dihlp,tmx|pH,Ȥrl:ШtJZجvzxL.zn|N^Q}t}u  p   y  ̂  HA@` S@R0T0`A H  ;`TczҸ9n(D  P  w+%B$kV``@ A0*dӳh@^(Ƴ2-z02Z<\0WjBrMÅ F#%AAP)* 0r`/K*/9Рd.`c6Tb*8ؼœ@mipr@>x ^VU`@K{ X^ . @YmD$S:W5hAP(DY4}3I[=Ew 2H0hA@H@.]#Mj <ЀEd%b'%ʡ%W8 Ww%\0>H3v6l(%TqLdvJVtx&S @ZAAVs8Fj$E,Вh` =$E @0)X(T,I2>W"5SYFРŜj*T0=EN Q' aJ-`{ 3;iuG |+˦AcFRv2`JoViK9-3M/MefRTkj3Pu8EHv +_-6;t  `w XWQ*֑8@EӎAw0FP2T(6KP}h,oyr D 05 /wkcf3)P8!9C 8W g\’`I E3@|s쳫-@=؎Ř MWi#>vU.) i+~ F p!}-f~rIhӌr-9 ,[N@2: `@&;r II Ny씟8?b$`nӋ$vKJ4CT:iKi i+ 8DP`\q+gB @ iLH`@F+K"gIKG"PAs'uuNʸ_5jݏ+"۸h@酆xjRڡ0iǮb@xJQvP y&@ uRMb\\n:=}õŸ9*3uA42ޢи=_O%?m8!;ԙ"P}ڙ Lq+ V*۲O' 8D |@K1`c&]hWr}r԰$BLCh>fBexKeKnR)EAafOݠYSzo5e;D~ĺTucF~f}HDlSqѦ*܍A0@%qgYgd} ^gqXt"  \P)}i0R @`q/POu/(Ow= "q!>~R!6eVOT4?wTA a!Zm!Z@h"(WVA#͂{goSV=9dPnGb tRQ?](a&cAJ }\AV @):9x/Gf^tFhQaVrҐ2)PKt9BF6 .R4 dtq4i0EQ6%j%>sK2E2x'8Lcx"t/"W.d0 ^E/cK'q PviE') r-YI|Hso:f9Bų K=2%99xsBEa /+Wl慊ƀs e%"McW6/rjR;)/t%2 0`2Pg&S$# ]_Ws F Ao!V&;!;d60ҏ "tEPX~38(qCFTg `#>A1Rn0PTPFe)!:!G B:e*8.x;B i veK]Rr25u< H>=苶 x>>,hsKx "Xs`0?;#/R7bS{eY{cb3/RN3 1;2囬iRl A:h[ /3+P!1'lR683b|H *9Cx U?wS+}2I>#_y5 C @tt`/Qp7 01 V/ 9l>PO Ch *SWCV Ũ`7)Mb%@`wxp֧~ﳐG '&gd6#BZp΁_( Plsgi]T$#HiHF3B{|2GˠruBAg%T: ia7bt~!5 hvgY$f{*'e9x*K#3IM.7q0Ǡpiq7IZ+b%&DVd}P=QrBZByN66sFo+1g " W*pSS~lpㅗp#gʒAц pUtJQbQ i3R8͵ ƩDwFlHrQn q@.F[Hf4r oYpE73jڢ 0"b+(g=v!SxU馷&k`;ӝqp,cGk!nA:!V rӊҌF:>M'0U+|rTZ3Rꟸݠw Y`eG$g9m5g`Dꓠ6Ů.ǩvUV+""r wW`Eo#Z[FW;eQ' @gd6FAC-!jcBh#e.q@eIҀM 51X̥XWqD1q"DE/ߤcp.!/ X?N&)*e$,ڢ9kpٻQ[T%*$?1]Fp0{-u}7 ,8L@$95K* cts {%Ť q,[$gWg O\+xbd@B~>6P 0a`1jBS>4% i'5_4|qp$mIj XV /g eiS 3PXp_c:ruf+jFY 3K~i&5!EupR <R>6GHQ2cYyee[tlX #b4=݀OQA Q>(=U?\@(Pc]mS$,fL ҭ =nk:Pc/:BWe#sp.ٷ\^A)]^Wߞ 3U%#xOn& O"_h-yvK 9$gP?pIAP+n'24g8[F+@<6KE;>:C?@+;f>`b/"@*pE-<`8@3h@0ځ)(+Fr_?(P`hG<+*"00A$P,_5$`+&O/9(`p 0#0$}q+O$P-K/Koʏ'/LyN(:mT2eO*[r:00 )bcjSUi(C0=G2uEt/ٰ Q 16:Ę\XT,Nl 0(fP8ؠ.ڤĽm򰖨Nޜ\h`t>*/M4bڽNTrW3Olf\N\03 gBO4kxʆVva 5 ܡՆ|1ф>m%.jJ%B[lڦ#6o~ᬓ@,TB_NamX"<:![H|N]bUwU4r`Bj C(tuVFGe4Hՙ>Z}E־nLlo/'A;AmGmKɒCLxNV@ 7FrB[ʝ3p;V5 8tߑ%V"I?&KS!8|nA:uV"EѼ6*06aSw>b6츜W}٦z-]Iqs-HEQ F@QU1Va%zF~1O6"4>2r=\Y8fʁ!+8&؀/Ƥ~'2ӐG$w(4TC3 3 $؃$=$]S)6'fe B|`9h  LL 30 and the mouseH < 52 then put word 2 of the clickLine into tLine if tLine = word 2 of the mouseLine then if the imageSource of the clickChunk is in "67790,67792" then if the platform is "MacOS" then set the imageSource of the clickChunk to 67791 else set the imageSource of the clickChunk to 67793 end if else if the platform is "MacOS" then set the imageSource of the clickChunk to 67790 else set the imageSource of the clickChunk to 67792 end if end if UpdateDownloadButton end if end if -- get the hilitedLines of me replace comma with tab in it set the itemdel to tab if the number of items of it = 1 then set the htmlText of fld "info" to item 8 of line it of me else put empty into fld "Info" end if end mouseUp 8$T  4W Camera 2.5 2.5 Current 10.7 KB 4W_Camera.rev.gz A handy screenshot utility that lets you grab the full screen, the top window only, or a user-defined rectangle, and can either put the data onto the Clipboard or export it to a JPEG or PNG file. 4wCamera @67790  w 4W Desk View 1.2 1.2 Current 10.6 KB 4W_DeskView.rev.gz Convenient tool for managing and editing windows. 4wDeskView @67790 u ] 4W Dev 2.6 2.6 Current 72.5 KB 4wDevolution.rev.gz The main devolution tool pallete. 4wDev @67790 [ F 4W Devolution Help Current 262 bytes 4w_DevHelp.rev.gz 4wDevHelp @67790 D b 4W Diff 2.0 2.0 Current 10.9 KB 4W_Diff.rev.gz Simple tool for comparing two text files. 4wDiff @67790 ` 4W Form Maker 2.0 2.0 Current 3.5 KB 4w_FormMaker.rev.gz Quickly create fields with matching labels for creating forms. 4wFormMaker @67790  4W Gradients 1.3 1.3 Current 11.3 KB 4w_Gradients.rev.gz Lets you edit and apply a gradient fill to a selected image. 4WGradients @67790  4W gZipper 1.1 1.1 Current 6.3 KB 4W_gzipper.mc.gz Easily compress and decompress files using Transcript's built-in gzip compression. gZipper @67790  4W Object Browser 1.3 1.3 Current 28 KB 4W_ObjectBrowser.rev.gz This bowser for Rev objects lets you quickly navigate among stacks and cards, select objects, and edit properties. 4wObjectBrowser @67790  4W Properties 1.5 1.5 Current 76.3 KB 4W_Props.rev.gz A universal property editor, allowing you to view and edit all properties of a selected object and even global properties. 4wProps @67790  4W RevBench 2.3 2.3 Current 16.7 KB 4W_RevBench.rev.gz This benchmarking tool lets you run two Transcript snippets side by side for comparing performance. 4WRevBench @67790  s 4W Size 2.2 2.2 Current 3.4 KB 4W_Size.mc.gz Simple utility for changing the size of stacks and controls. 4wSize @67790 q `9Installex non mouseUp local tList, tLocal4wDevFile -- set cursor to watch PutS "Contacting server..." put ItemstoDownload() into tList replace "

" with empty in tList replace "

" with empty in tList replace " " with tab in tList -- set the thumbpos of sb "progress" to 0 set the endValue of sb "progress" to the number of lines of tList set the startValue of sb "progress" to 0 show sb "progress" -- put "http://www.fourthworld.net/revnet/devolution/" into tBaseUrl put CurrentPluginsFolder() into tLocalFolder if there is not a folder tLocalFolder then create folder tLocalFolder if there is not a folder (tLocalFolder&"/4wTools") then create folder (tLocalFolder &"/4wTools") end if put the fileType into tSaveSFType set the fileType to "REVORSTK" put empty into tLocal4wDevFile -- set the itemdel to tab put 0 into i repeat for each line tLine in tList add 1 to i put empty into tOpenRect put item 2 of tLine into tTitle put item 7 of tLine into tRemoteFile put last item of tLine into tStackName put tRemoteFile into tLocalFile if char -3 to -1 of tLocalFile = ".gz" then delete char -3 to -1 of tLocalFile if tLocalFile is "4wDevolution.rev" then put tLocalFolder &"/" before tLocalFile put tLocalFile into tLocal4wDevFile else put tLocalFolder &"/4wTools/" before tLocalFile -- PutS "Downloading "& tTitle &"..." -- Download new stack put (tBaseUrl & tRemoteFile) into tUrl put url tUrl into tData Err the result, "1" &&tUrl -- -- Purge current stack: put ( tLocalFile) into tLocalStack if tStackName is among the lines of the windows then put the rect of stack tStackName into tOpenRect if there is a file tLocalStack then delete file tLocalStack if there is a stack tStackName then delete stack tStackName -- -- put decompress(tData) into url ("binfile:"& tLocalStack) Err the result, "(2)"&&tLocalStack if tOpenRect is not empty then set the rect of stack tLocalFile to tOpenRect open tLocalFile end if -- set the thumbpos of sb "progress" to i -- put lineoffset(tRemoteFile, fld "List") into tOS if tOS > 0 then if the platform is "MacOS" then set the imageSource of char 1 of line tOS of fld "List" to 67790 else set the imageSource of char 1 of line tOS of fld "List" to 67792 put "Current" into item 5 of line tOS of fld "List" put the ufwVersion of stack tLocalFile into item 3 of line tOS of fld "List" end if -- end repeat set the fileType to tSaveSFType hide sb "Progress" set the label of btn "Install" to empty disable btn "Install" PutS "Update completed successfully." -- close this stack if "4wDev" is not among the lines of the windows then if there is a stack tLocal4wDevFile then palette tLocal4wDevFile end if end mouseUp 8Install cREVGeneralscriptChecksumTY,nwl4g굇 bookmarks handlerListmouseUpscriptSelectionchar 2907 to 2906 prevHandlermouseUp tempScriptscript

on mouseUp

local tList, tLocal4wDevFile

--

set cursor to watch

PutS "Contacting server..."

put ItemstoDownload() into tList

replace "<p>" with empty in tList

replace "</p>" with empty in tList

replace "&#9;" with tab in tList

--

set the thumbpos of sb "progress" to 0

set the endValue of sb "progress" to the number of lines of tList

set the startValue of sb "progress" to 0

show sb "progress"

--

put "http://www.fourthworld.net/revnet/devolution/" into tBaseUrl

put CurrentPluginsFolder() into tLocalFolder

if there is not a folder tLocalFolder then create folder tLocalFolder

if there is not a folder (tLocalFolder&"/4wTools") then

create folder (tLocalFolder &"/4wTools")

end if

put the fileType into tSaveSFType

set the fileType to "REVORSTK"

put empty into tLocal4wDevFile

--

set the itemdel to tab

put 0 into i

repeat for each line tLine in tList

add 1 to i

put empty into tOpenRect

put item 2 of tLine into tTitle

put item 7 of tLine into tRemoteFile

put last item of tLine into tStackName

put tRemoteFile into tLocalFile

if char -3 to -1 of tLocalFile = ".gz" then delete char -3 to -1 of tLocalFile

if tLocalFile is "4wDevolution.rev" then

put tLocalFolder &"/" before tLocalFile

put tLocalFile into tLocal4wDevFile

else put tLocalFolder &"/4wTools/" before tLocalFile

--

PutS "Downloading "& tTitle &"..."

-- Download new stack

put (tBaseUrl & tRemoteFile) into tUrl

put url tUrl into tData

Err the result, "1" &&tUrl

--

-- Purge current stack:

put ( tLocalFile) into tLocalStack

if tStackName is among the lines of the windows then put the rect of stack tStackName into tOpenRect

if there is a file tLocalStack then delete file tLocalStack

if there is a stack tStackName then delete stack tStackName

--

--

put decompress(tData) into url ("binfile:"& tLocalStack)

Err the result, "(2)"&&tLocalStack

if tOpenRect is not empty then

set the rect of stack tLocalFile to tOpenRect

open tLocalFile

end if --

set the thumbpos of sb "progress" to i

--

put lineoffset(tRemoteFile, fld "List") into tOS

if tOS > 0 then

if the platform is "MacOS" then

set the imageSource of char 1 of line tOS of fld "List" to 67790

else set the imageSource of char 1 of line tOS of fld "List" to 67792

put "Current" into item 5 of line tOS of fld "List"

put the ufwVersion of stack tLocalFile into item 3 of line tOS of fld "List"

end if

--

end repeat

set the fileType to tSaveSFType

hide sb "Progress"

set the label of btn "Install" to empty

disable btn "Install"

PutS "Update completed successfully."

-- close this stack

if "4wDev" is not among the lines of the windows then

if there is a stack tLocal4wDevFile then palette tLocal4wDevFile

end if

end mouseUp

CloseEx+on mouseUp close this stack end mouseUp @-8Z :!-"Y  Installed Current Download )Install File Version Version Status Size info `6   `4Picture 1.pngDMZZZZZZ@@@@@@IIIIIIMMMMMMLLLLLL??????ddddddwwwwwwmmmmmm\\\\\\nnnnnnllllll||||||yyyyyy~~~~~~jjjjjjrrrrrr$$$$$$%%%%%%   ! "#$%&'((')*+',,-./012133"45671/89:;:968<; = >?@ ABCDEFGHGIEJCKLC@A@ACLKN =checkDiiiiii######0077TT55>> BB @@ AA33QQ\\UUjj!!$$((22--99kkxxPPNNee~~VVzz))``ssssrrttvvnn ;;SSllhh33UU::WWwwZZjjoo%%66JJ kk``22??DD]]  ggQQ{{OOyy^^<<GG))tt11xx((aa44YY&&??33{{00ww&&ooHH QQ55????;;``::~~??@@44 RR^^BBOOQQOO  ,,XXRROOOOAA``llTTaaccQQ$$bbdd__VVoo%%vvddsswwyytt<?@ABC9pTdXV!XjAd.6~˧D[~; status2    div@ =local sIsDragging on mouseenter lock cursor set the cursor to 98997 end mouseenter on mouseLeave unlock cursor set the defaultCursor to empty pass mouseLeave end mouseLeave on mousedown put true into sIsDragging set the layer of me to 999 end mousedown on mousemove x,y if sIsDragging is true then if y < 150 then put 150 into y if y > the height of this stack-108 then put the height of this stack - 108 into y lock screen set the loc of me to item 1 of the loc of me,y set the uResizeFactor of this stack to y / the height of this stack doResize unlock screen end if end mousemove on mouseup unlock cursor set the defaultcursor to 98997 set the layer of me to 1 put empty into sIsDragging end mouseUp on mouseRelease unlock cursor mouseUp end mouseRelease 033D@   4wDevSetupHelp ~ on preOpenStack set the loc of this stack to the screenLoc end preOpenStack on preOpenCard set the hilitedLines of fld "List" to the number of this cd end preOpenCard on resumeStack preOpenCard pass resumeStack end resumeStack on resizeStack doResize pass resizeStack end resizeStack on doResize lock screen put the hilitedLines of fld "List" into tSaveLines put the width of this cd into x put the height of this cd into y ObjRect the long id of fld "list",20,12, the left of btn "div"-2, y-20 if the left of btn "div" > (x-100) then set the right of btn "div" to (x-100) ObjRect the long id of btn "div","", the top of fld "list","", y-20 ObjRect the long id of fld "main",the right of btn "div"+2,the top of fld "list", x-20, y-20 set the hilitedLines of fld "List" to tSaveLines unlock screen end doResize on ObjRect pObj put the long id of pObj into tObj put the rect of tObj into r repeat with i = 2 to 5 get param(i) if it is not empty then put it into item (i-1) of r end repeat set the rect of tObj to r end ObjRect on mouseLeave set the defaultCursor to arrow end mouseleave `= ufwVersion1.0ufwDescriptionHelp and Tips for devolution.4W devolution Help ULucida Grande WLucida GrandeWLucida GrandeULucida GrandeULucida Grande WLucida GrandeWLucida GrandeULucida GrandeWLucida Grande ULucida Grande WLucida GrandeWLucida GrandeULucida GrandeUGeneva WArial PUGeneva UGenevaWelcome Pon openCard end openCard "[Getting Started Pon openCard end openCard  Licensing @Support @mainig list)pon mouseUp if the optionKey is "down" then put the cardNames of this stack into me lock screen go cd (the hilitedLine of me) focus on me unlock screen end mouseUp   Welcome Getting Started Licensing Support` a main pon mouseUp if the optionKey is "down" then set the lockText of me to false set the traversalOn of me to true end if end mouseUp on enterInfield if the optionKey is "down" then set the lockText of me to true set the traversalOn of me to false else pass enterInField end if end enterInField on returnInField if the optionKey is "down" then set the lockText of me to true set the traversalOn of me to false else pass returnInField end if end returnInField    @88990  "The difference between a tool and a product is an order of magnitude: With a tool it need only be possible to use it correctly, but with a product it should be impossible to use it incorrectly."  6 - Steven McConnell, Code Complete (  ( #devolution is my personal toolkit.     ]Since 1997 I've been building and refining tools for developing in MetaCard and more recently in Runtime Revolution. I've shared these with friends and clients, and various forms of some of these have been available in RevNet over the years. devolution puts these in one convenient package, and makes it easier for me to keep my clients up to date. \  You are welcome to use devolution for free. If you'd like a year of technical support and a limited license for the source code that's available with a $99 annual subscription.    !  ddevolution saves me and my clients a good deal of time year after year, but I don't pretend it's any sort of "ultimate toolkit" or even a complete IDE. It's just a collection of conveniences I use to help me get through the day, and it tends to follow my personal preferences more than any HIG's design edicts. Use what works for you, ignore what doesn't.   Y Happy scripting!   - Richard Gaskin   devolved geek   Getting Started with devolution    Installing devolution    aThe 4W Devolution Setup plugin manages the installation and updating of your devolution toolkit.   I You can open the 4W Devolution Setup stack regardless of where you keep the file 4w_devolution_setup.rev, but if you put it in your Plugins folder you'll always have it easily available.   $- Q h   /  FOnce you open the 4W Devolution Setup stack you'll see three buttons:   %  *License and Help - Opens this Help window    Select Installation Folder - by default devolution will try to locate your current Plugins folder. You can click this button to change the folder into which the devolution toolkit will be installed.    ( 2  Download and Install... - This button check the Fourth World servers for new or updated devolution tools, and opens the Update window to let you select which ones you want to download.  @  X b x 3  The Update window shows you a complete list of the tools you've installed and any new tools available on the server. Just set the checkbox for any item in the list you want to download and click the Install button.       devolution will then download the new stack files and install them into the appropriate location within your selected installation folder.    At a minimum you'll want to install the file 4W Dev, which is the main devolution palette and provides convenient access to all the other tools in the collection. - - 3  G QQ   Using devolution    After installation is complete, the main 4W Dev palette will be open. This stack was installed in your selected installation folder, and provides quick access to the tools and functions most commonly used in development. ) ) / JThe window is divided into sections, with related tools grouped together. bAt the very top is the Fourth World logo. When clicked the 4W Dev palette collapses. Clicked again and the full size of the 4W Dev palette is restored. By default, when collapsing the 4W Dev palette all other devolution stacks arre hidden, and made visible again when the 4W Dev palette is retored. You can turn that behavior off in the More window. < < B; } 8  R  < U Y Just below that is a section is for creating objects. There are buttons for the browse and pointer tools, and for creating buttons and fields. You can create any other type of control using the Create New menu below those.   jTwo global properties are next, as checkboxes: SGC toggles the selectGroupedControls property, and BD toggles the backdrop. Option-clicking on the BD button will bring up a color picker so you can change the backdrop color. Whether or not my apps use a backdrop, I sometimes find it invaluable for hiding a busy desktop and letting me focus on my scripting. 0 0 31 d f/  ,Quickies is a menu to execute script snippets, the sort of thing you might type in the Message Box. The first item in the menu is "Edit Quickies..." which opens a window where you can add, delete, and edit quickie scripts. Any script snippets that will work well with the "do" command can be used.  # rThe Tools menu provides quick access to all of the other devolution tools. You'll find a folder within your installation folder named "4wTools", where the 4W Devolution Setup plugin installs most of the devolution components. This menu displays the names of any Revolution or MetaCard file (ending in ".rev" or ".mc"), and selecting that menu item will open the tool.   0  9 CY    The block of beige buttons relate to scripting, covering most of the script hierarchy from top to buttom: FrontScripts, Card Script, Stack Script, Libraries, and BackScripts. j j v x        ACard Props and Stack Props each open the 4W Properties tool to edit thier respective properties. If the 4W Properties tool isn't installed it will open the property inspector of the IDE you're currently using. You can override the normal behavior and open the IDE's property inspector by Option-clicking these buttons.     ) 63 i v Script Search opens a utility that searches for a given string among all scripts either throughout the current message path or throughout a specific stack file.  Obj Browser opens the 4W Object Browser window. Some things in this stack are still being developed, but the features that are there now are very handy: you can rapidly traverse all of the objects throughout a stack, with right-click access to edit scripts and properties. The control list has a column that displays the number of script lines which can be double-clicked to get right into the script. Double-clicking in the "H" ("Hidden") column will toggle the visibility of the object. Invisible items are maked with a "+".   ' Desk View opens the 4W Desk View utility, which shows thumbnail views of all Revolution windows currently open. These thumbnails can be dragged around to move the windows they represent, and right-clicking any thumbnail brings up a list of stack properties which can be toggled, including decorations, mode and more. You can also save stacks with that menu, and edit the script of the stack or its current card.   } UMessage Box opens the standard Message Box window in the IDE you're currently using.    1# $Save Stack saves the topmost stack.   More... opens a window that has option that are handy to have access to but not worth making the main 4W Dev palette any larger than it already is.  _ f l' Dictionary will first attempt to open the MC Transcript Dictionary if it has been installed. If not it will open the Transcript Dictionary for the IDE currently in use.  Some of the other tools have their own documentation, and the rest are pretty easy to figure out. If you come across something you feel should be documented please drop me a note at devo@fourthworld.com.     devolution Developer License     You are encouraged to use any of the tools in devolution in your work with any licensed copy of the Revolution engine at no charge. .  . 8K The 4W Devolutution Setup plugin may be distributed via Internet archives, web sites, online services such as America Online, user groups, BBSs, and informal transfers between friends. The 4W Devolutution Setup plugin may be included in CD-ROM collections of freeware and shareware, and can be bundled with books or magazines, provided there is no charge incurred to the purchaser for the 4W Devolutution Setup plugin itself, and that it has not been altered in any way.  You can purchase an annual subscription for technical support and access to the source code for (see the develolution page at FourthWorld.com for details on pricing and ordering).  If you have obtained a subscription license you can use the source code from any portion of devolution in your own software provided that: \  \ f$ - the code is used in a way that is incidental to your program's main functionality and does not compete with Fourth World Media Corporation, such as making development tools derived from devolution;   - your software provides credit for the use by including the string "Portions 2004 Fourth World Media Corporation" in an appropriate location, such as the About box; - you agree to indemnify and hold harmless Fourth World Media Corporation from any and all claims resulting from the use or misuse of devolution code in your work.   Disclaimer  USE THIS SOFTWARE AT YOUR OWN RISK. FOURTH WORLD DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT, WITH RESPECT TO THE PROGRAMS AND THE ACCOMPANYING WRITTEN MATERIALS. ANY LIABILITIES INCURRED FROM THE USE OR MISUSE OF THIS PRODUCT WILL NOT EXCEED THE PURCHASE PRICE. ?Customer may have other rights which vary from state to state. L2000-2004 Fourth World Media Corporation. All rights reserved worldwide. K M Fourth World is a registered trademark of Fourth World Media Corporation. L BAll other trademarks are the property of their respective owners. A  Getting Technical Support  wRegistered users of deveolution are elligible for technical support via email during the period of their subscription. !Please send support requests to: devo@fourthworld.com &When sending requests please include: - Operating system version - Amount of memory installed - Computer model - Description of the problem 0- List of steps needed to reproduce the problem fThe more detailed your report, the faster we can fix it and get you a fresh build which addresses it.  `b adive Qlocal sXoff on mouseEnter set the defaultcursor to 8884 end mouseEnter on mousedown put the mouseH - the left of btn "div" into sXoff end mousedown on mouseMove x,y if sXoff is not empty then if x < 100 then put 100 into x else if x > the width of this stack -200 then put the width of this stack -200 into x subtract sXoff from x set the left of of me to x DoResize end if end mousemove on mouserelease mouseUp end mouseRelease on mouseUp put empty into sXoff end mouseUp D : " splitter.gifDP@@@X*TNRNr*tX@@@H11N؂;܂ނ;؂[devoUItitle.jpg@;phtJFIFHHCChp" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?((((<= mDEZ B9X O~c W3ޣqq[M'#?CcO|Yo[ooO_Wg_x_!nj<7mD!/^|wcψx" g|[p66X:U*V*j|ʛ攽S4)I4ғz~8%?RO]6]/cd? -#}mH5ԿsO >Ff߆g> 5gNѓ>-|<|@~|V1^7'oßګ"Q|i'k.Z / xO)W_o?Vk [ſ_஭֟oC|վ|HM[DxW  snYR8? 7ߜ!uN7*i˭4믭6-\n2[$ucj?\_-kuȟuο?e>'խ?g*Վxxtq xӎO4Pe/s5k*o+fKz^l~xž;ao/ i1@8(^:KXITU4RыTg+Q9猼P<M8{yniB.m')E']U~,~*x~ޟi~҃=qD|U˪o:C?H [⏎9y~?>|(|'x=vG'¯R|B}xzw#g߅LJ<7߈~'> x[5_7Gψ<8<&]> O|T#}K:[W kqsMR( wwԠO*Nɻb|&6cs@)NPcVɩ#w:~~?G5b_UǠX5{/ٿwz|%7”~| _ |CKE;GĞW|gnW+߇Fe?1D']CÎ';s9%Fl\W-׺םK 3ˋwdRپw}Zۏ?"*qԃ8ϊ5ҿ_E~&7Q%xZ~7p~+}^gbu//?kC7yF߷^ߞ~NWwk.wj ̭q~?}蟳~'ABe/ +3k__l?h<#_'M>#8?_Io^;l<}_տf79-KMֱ|=<-w*=N_@Os ±}~'2}3_ǫ8sLeNvMZM';{ U|S??j/;/ߍ٧ Y/_o-k!ҼxƾYC?x[_xs|~:xw*?#? OOdjvd MOᦃ3CPwះ!?kh/|" _W6DoyxßB`VNK˛7l|6豗di[]yj:ߎ??55=/)W/ZÿٛᯎDgyxG4i߳/>'π|*=0"?O>W8~OῃKu byxumGk}'[Pzݵ+{'c讟Me_uߊ՟lڏSMDG+M'c ׁo9׀*9ך'!v|Y >?U;//S5{5S;Ӂ0._V;g_;7?x V~>*W_#_|([_e=k?k| ̧ɣ#;P}Ϛ.6|Y?5tٟW?^7殿F0SQ& xJ^0pӟ_0k?+{xj~cn{Ͼjsުf~sǿWFtW34GR0O zo|w猼;,x 4$ |?"CJd^Ŏcc'ad✢'vNV|-Nٽ.< mڃß{Oo^*u7tCH.Sdž;38fI,Ժoǭ.R gc9g<s>Yg~wϽxiƼotZ_OITQE~~QEQEQEyp |{#>?὾!aq =ޝpkzZ(U*Œt`q_aoo =͝PӀ@2Nķ-^˪r>|(ʐ|WqGOpxnJ3.\r:Imt{7*Jwӥu?9௟iOo3v>c/ύ?>,?  ᷋V~)t?_|)z+k^x7 6|n" ~g|u޻& |NjO'ْX|u⯁ZRpob|p39xyV65*gtxWFU~G rϖMO%qIJY2'icV*9e9;5}Z?ث c]Ɵ?>@[k|_>/0 k<FV  W޿P<&qgEb&]׆|/?xRE>e?O>1o_|<enU?V~_>"5-'0i{Vo}_1zį I> xOGa̟!/e~jYxc?giO?|8>.I|>t'ޅOc_~uS C?<2":."w;.+eO?V|J[,#/x'>?:D_M_kk?4/kP?Ŀxq>I#+xƾGNj>27ƾKJ>;UNeY[OT`mn?GQV1qE¿WmksL R~T=9+;%~;^Y?hv_>9f>$pE^şU|+</Sρ~%Ǿ&[[Zv>SC;cA#Ι8inW#i*OV cվ~-xvNJ|T2m7S׿OuO*|?@ρ~x?8x{Wx񓟌>1O>Y<__AaxoV[{<'w=C&jS ௅zNOoß&u11T=\|?ү \ |)oN5to|sQj^/gSE=:gLj|__x?*>Ax|aO#%~yLM3 h߶v oZ?Wmc}x⏍|X>(3ź~"RS{C;~owף[%'/;ϵg?o|-h`"S1 Y>`(|~>| ~%£xOw4|l-B𿄾 Ŀ<)?_+O?diz7x 7~"L|Ae>0x|W?ƙ~9ݼWPxVxn>'9|Z/ o TGg*?~#|(_}?zS???'o>?o1iUeJ(諦7? u4{+OKxhcٔ1!LBk{oxo)YZOWZN?T~g$ <|t|$asYidߵ>/AsPg5Ư_5~[Oi!i+Ýx[L!?LtxObEOo__PGfA^]9\q\۾k8erw~]^(Sg [?E_ZB<9}N{NҾke)}~}ᶸLGEWGEPEPEP߳l~`G߉8?ֻ[W-xCnO׎|x{^߇|Gxxkž7guL|g_q濷}x~6mwꚯw?^$8W/?a?)Gox[Wïٗ0'4 hZX Mqxh4|b|oxx^%/-/~Ae k^.};_<,4SĞ <:<7/ g|*|:> <8 -#UAV$cw(Ư>??`? n࿇~wڦ?Mwֳ woFo-0ƤW?2< ^7cTbz߉um;G׼DhAφT)/qI8'Mcuۚɸ'$% 4e%xYkX7-p-+-.[RZ| c~Z] AX|ZOO|-X1؟ᇌC{ğoL+[k6o_Q_=|U~xOS͟~~>.xC'բڷ|e__į A|)gmnOE| ~?ZxgY__QYXx]꿳o[E}< eSL4 YQq)O%E[n' ﯟ[\sߒy?{WÊLMcQ6FJFj-y]i1mU,Fw8.U,r@SgGs*֙o_3Ķc⮳xW>_uoh~K'Ñ^%o᳘XRGo_>ɣg/o3<-5FY|?g)Ś^ t >ƽ#>)LO|6|% :/ǁƟ\ x<߳Llk~E/ ii>3|Z>k(%y?(3| 7~$ 7_-k/~ PNC5h˦~~&_xAᏆ2|S| ߉-x?|i|9/>.G|yqx_?iGoş|Rc&oO4 ֿn|%x{6~񵏁<_>x"E?w+'k=/{Q}:ߧɷW_ٶ]>|)^ïM/Q|i.ς>x?mW_ |>9/|X< 7G|kzt5_ ~6~xjzewvIsxy&, |!(3@~x3|+㔟O}S_V37ž ?^?xৈ~.k<+[Mo's|1=?⏁?zjSŚǃQm)$]|#WWD_s 5[?;woWs?|/6|T6 cx4g$ni4"Hkk}G/3Eq~:ƏC㿆6e=6 ˣGk3]c'ߊ|;?<3w$^G)m~#g#~>fE]>~-|[? x3@|0wHusᇃ8UÉxWO}_M M&~-oÿ|ACPsfz0ύ2xKxxxDxxğ b<{ƫi3u(g<?6[]O<'Y:S|Ohؼ?Z%?I]x>)f j[B exF/G?e#?cX Ŀ|7>=o2OMEƛڊJt޷F:oo7zyv>h#|zYiox~ |v`߆+񷅼B<:kjyZ|* DҾj/㡡|WT߉E|Kfxx?)7|g0ƚ o(u-\xᯆCa^~1=ƾ2KkLg\īS{+?zM&[N13mnX96ok/w_NދuE|~%x8#O |+?:^L,n7*^Js&uWoX>N[n}^F|f?g|9s/-ᗄ<=EῊx>a/+oSYXgt%sK5/xSS:t"o ׅBᏜ烅~)So i?%a^'Ku ?4 7>):ֳ g:<-_k,$xxsN{ȧ W i~'|$<3?~k]GD~ϊ> i|Kߊ78~^koτf''u:½w7\_jIOoLY>=,Kh|6gܾ!~Cψk/潬oi1?mt{gt?$O>=x~"۟xV+v<v=x_?mkW>~ jAG+| OS {Ğ8?Ïxt5ߚtޟFW?g|wÇxPx>_~>~$CI$j<#xF( k~ؿ OxcF| NwB^EGb!&_@(| $_?uϊ|[4|>[Tx_~%j6:7mkZ53Jm͇7T5q㯇_ -=?]h,*|Cu߈~hς|w +@ZY4֋輭}W^(g_Lq_[OCI߁*~fo IW7cHb_|d<oi7ZGį w%4|Q|M[yEW?W~#7/[Ig 烼u}Uof{^b?~ ?f=K@XX,3 O^!4(c^6\~/xE G |fl t^YNg״$ 6N6PjX&:*1ڋe@[OA?~O?  +R7 m1yB< F95| U3?W;Vn/?ĸ |_`>1u1M[aHi[_A]MKEc}i{~d9~R0|o+xZQO2߅(׋|gȄki"b<= 'ьWO?h~>"-/^aڕo~ ݴϾg/q}{َMZq |cSb|tkφ~'nc>-Y7ay$xkȤB^N+F]IjOSjbխb6WY#1DH IJ3ďeW;};\|_o#OGGOwOWQ~ j?/k~'j^'L ψ O3S1C(HRl?TωKa&qZc]x2 "9Fm~ݮkDR4? ?fm>+w?#a5Յ4x B&|E%׉_^Ke a,~ 5|]O_౶l2|Cx5 n|/>12> =bII4ό/in#-_Z-e/ &D~&Eܟƞ-V4rB^pJR)-ߵj;=>\v4ni<~yO_=ثZkNᶑ&^.$ E+x|?3Wxhtxo|K׾|=ލjqOa ]M񷈼ቼWuH ]ŚOs2C<ȲaƌVYC/I4ܡkcq|;<Q~J:V]K&~/ZSG|P.i|mָq⏍> G/{!|<Ox Qzڋn}?KaN׼mO xHe/|OT7>!I|[ /|AxoWr|u'4o:G'߁!;>5%~ !>GB[|%@uύk,;xֽ¿?E|k`N">uTrω_\7M_||3į>a-ƿQx=7JIIw\PT[eOVWܩk;yZFѷh뻻|[_׈-xGw|E׿hȴ'k؏^$O-O_o~xrx#ſ~ [xe|i4_۞W?g-Zh"xQ?5:|<<?~9fC? /O?cwω߲G𗉿MReԵ__gDD?e_9#\KAĝi'"cG 9R 9ᨮ#6~=n2JxaaԔ\N-ArhNI;^1S|ɤ?'I¼nRWM][Gݧ6)]gĿ| *>o77c_/LO|Z> x9d@A񎟠|aeAe苧Kφ  ^o? 7χ>\f^ cOۈ?@/WfӼAƘkJO i{^ Oj%7ZF~"[$շ8*3ӯ5PNpy&&NKN. kndioהl19W"Z嶶]ץC79>8/⿇_5ߋtto7 şx^%Cx[~'oGǞ3O/Qr "!73\jST|4FlS3l `,Pk-3~_- Mϋ|YS ?:Di~7~!d<_^?F?=qf)/ \sk߆֟<5Øӗ5^}:meʔ$nRR:Ϳ).VuG 1\|O7x'5ؚ4/k6_k'|s'"u w.Vu)%+eM*}jf֭߇Ea |A|Sk{ƿ ~IgYsONL|_ɜhkWݲ^uUYhKz?`//oRDc|B9g]rmW^91x1|e_t{OIXUX55T Qټt*Xw[oVwq{d^ٵf{o{߿^m^?Fۥ\O׎ zW|Pu*qM3>u̚]IȲ|1c0U5RYew;+;O++ |l_ɩzVhSFEĿxf?^2;Ǐ|o۸ox/د=Hl߈2/+xđ⿇%M.sCc/5)C_xݗǞ>}">$x(;Q׮ukM<|7_F3(~?xxK[{oף?l_ڛ3O}:x<C_/NjoOX°=}3M"<}>? ׏} |-l1[ QyC|:mS_8 o_Ox]?g? A?>1x{7~9KWWi'q!|e|w ?i?|msٗ⧄4l1Ɵ߂ZM_?d|Ek7!K|r)-uPm]{EZn_m[}?ڳë/ߴ?:٫׊ºÿ~!_x~^" xk?'|R>8xi(~$~0O6"?kψ?;Ox]2dk|(|F>4)x,|\[wz'K[_ucW]s7h񇃟_v4ikSY>&ÿ4/Ik} >?mO Z|h|nǎqWo?/tT-E_F%x\Kg^ O|w~O~|:iS|@J4{u%8Ņ ~wYSggS@eٷ\{?σ^8w/jE_ŏ_=㟋SwK7ÿ4^:W/iI^>|ᗆ~Wt|=7 ?R7 ^1xn!aCok%/L>(e>4]McS,xzCyE񍺏H$eA'&'uӾ}<ϧ? '~/mk#~״ ƾ$$CS:78+eν[ qL3[IѵQ~ktt7[OFޱnokML~*j4y>)җ3 QSEмt|EsE>?'8ߌs¾4'xK_m>;/E YCh/D~WOQc'Z~џF Kvܟ+߈EB-^> PTk>=>q?GƭG5PP?<-l^P|U|'0m?|\-|+_._ok_ͭ|Dᇄ|?IO$'4A{mc q[%fܶ m|X ?Q>xĚލ޵c%5 >&-ŷ==_|!cq/\|!g|0ƟCR'hx _5_>&&_vU&T ? |]O ?,> %H~kkKw7 VRVN|%׉iI5[~Q*qI5g>!xď $k>)x>o*a"&{߲/kWW_R[ĭ j~>7Y^.MyZ?1/V|H<#/x.k#y ?uZQOn[]іKqZi$$vSbEo A*jrKN}w=_ž4MN>2țŞ6LsK_/d_F~>2~G.[$G'8xCtWo#>~Т?hxo<>:x?+߃s;StU^VR[Dω8xs_~ cL| Qo wQxL W5k-|Q ߍ<){ < 9[k?o<)5lj'U4s_y2xW_ VX՟?:7о9Z|mux㎶?ƛ><1qC~6Z,,S| /9\wXxoE76۵vVWmvWy.֍֗>)Yv~BA Z)Yv_2+_QקZk_QקZeH׉5{4Em?SJ'~;AaAq?׾7?=|Ao [,|Ma?[ÿS<__AIAos6ן~5{j߇>~o?hľ(?j?>7!_tڷ+ k?x'ec?֯'ǶA|v<#?߆OFfC=\N> Ao[Mu-Gm[i뿈%Y?2?wC'C <5۷ەGǁ/~F;Eo^nًiUkCmz-}ݵ9xk]_wU|#ǮE-|.ρ^qᨴ?>%EWĚï7?|]Þ?υ>O'/tQټuS~ ?u_He,7֏_ܚ7|,1}/_4 u3ugO ,?~_ l?,mq%c'WE6ޚ|U_: AeO?W/sΩQ i?t^k ȴߊ<#Gw~˜Oi(/+_3 Y|;7&g |8S|@ƿkx?O_\|}|M2}[/.9#]hha7 x> ww\K{Xvle.~9[-C.'¸]k慯VG>"r?G>ρ0/%3Nw=#N~&Zx šO-yS12gY_78֟O?W?uI5F~"p<`p#1X+ OmkW'&vz4o@{rwm`QYk >|Gvsx\9Þ|G ck|o4 Y%+;m?`fᾟn<>|kt^4P {)KY.A,Go/ZGߋ;~ Ҵ xVj5xc͛Þ 1x<p#>31ۉG VNϋV^O[O:|.]B7\_nXm־Vv}N~(X9 py7 GI.Č=N jJƏIv|yg_Wt}#N~#5ǀ4N_!?f-M{ᯏTv^ 8":I)G~c8v~|s/ڿC~,> ¾ 44~?A'?~^F -OS߳|} o#_k@~451#Zg>!Ƈpſ.<8JuENj [H$B oCQ~ִoǺε➩]gR x3sQ] qsoA _t G.Vo~RZPd_~;{;|a~o?x<}ǯ^_3;,>- ot\W8߇1||_}ߍtOڂO,ғ7_Th^Wq bO,[@H +/ϋ1㮕> |^Oڗf_ A0‡Ÿé<?Yh<|}w>D}!O4i^=l>ğ MqëO_hÚ/~#EOA{ x?מreI㷞ewUVڜz??;0u?_ kY|s/I~q^N!? j-s1VUA'&}8 YҖ7Z|'xo:擋]xۭڵZ5? l K=nƟQڻJյ c2xVwM|xk⿌' /W%{ƾ O_We'~^;{wԾ˩7Fm ßLj$;FV6/x;^ HY~1e&ce;}Z+lK^c$\;럴ՠE㇃mm5/^1'_g' \~|`4 7Tl<}㔺"h+ί#>?(=G92ȯ ?FO_h?|+!xwxtcE| ៉:o8Oxž ty/e \x#ώ+.&eM ?U|%~3/?iǧ*㿱(' pJ2n^n ˆSq,\kWFދ^gx+Ŀug.UеOmǚc~0W5KY"3|3$QI|^-IE48@|ѴdgS|U_x6V^ \^𖪺ůؗk dP/1px#4ikq/E$_[&~txGvc/Cw_yj5cϷ ^oQS}헅t/ăN?֝qxL斷#77K]DXN+V'4 |8 Ys^"uxC~,¯} 3 Cx:oi|6w| uo~ U#|o hпkd_ï/_ W~ 3>!/*_IƻG*_Iƻ_q~[=mM |Uû.= ]oV7 oM |; FOTqxQx,T! vT! v,~6~io9?|?]w_:g_?G?RO.5ڢ|/MWW [uV]-9΄<@&w`ÐHF?d Þ)KֳO_>ŵOsbc |G/>y㯎>Uc࿎?O#=w V'D& s+>~yMWϸ·?x{^k7nms2X\ =!>Z9!pv7L> þt_ CEY ]oG0|I |H?9~>Ox '~|h}7n_^.sxA>1ÿ?o;ooľgb|>n1x㿏>|8O~$0G_~¤\T \kWoB_.Ư_5^[X 7<[eo"Xx[lY<ofx?s >$~xcZM;.>+7K|?z_ o>(@Bύ~#,E'~Z%>ֽ3I)aR£@\  '$M-|1붺C@Wzv|7>6Veό?~/o>|N=?|'^^xOjZ/|3 Ş 4)~$xs;+/~!xǞ,h|<ߍ!|x\E V;֩Z/TӳgnhRO.5?RO.5~&֧aj_uO|>*?|-_^&| 㯀o~$)|g's~4|Mk |~'~*;|E>#|;ߍ;/ KυO(Zx2eK"oxt5?J`;A x׿8sRxG.5~UŢ??|GMA-O>77"0s'u};Wßþ"A2?eό47x>-8x=__=7ԾY ey=*$HH$rێHvX~_P;{ >K?ЬOx8_]_h~xV/ӧa?ze`j 1~_%5=o\f:ât^xx:Mex̭&ԗLg-wg#9Oڿ+m*ȟ2?ة醿"O ^0d_M3 3JgEWEPEPEPa9|j?&>.'p:ڿ>>,1? hQZoi>o\B?a ul|5~;}Gx|Iⶉ .?< '\I ZWeڏ`m'~\76?<k~:[}_?5+mk)z}o}~[Y:8k[o;-·Y[<;Xd~R|Tuо0aGǏ|d>!x 𷇼[W#)дmw#ò-/j?IŞ2k7R5s/?DudM؏N5_%An7?$? ։ۜv\)`Jgy㟌`=<ogVs& n6~?>;Y_|,ҧ|oO+>9oC){-=t_SuJj3ؾx׏gw& ־\K_w"hxoxh5|~ f@7gFuҴ++<;'7|(_ @x^=${9o"h)U^'U񇎼j4шuq|\k:sΩR fo[_OIq9q1+&&ڏ%z/h/;dʯ_xgFN,n? F~fBfLZԃ tso ] Z!-]tZ[Nkۮ}^)o%ϴ|W?4MK9D|4焵m%?x[_ j&-Ŀc+oZ&DpgHYk>,F&sOZ:Znj ~_H@kI xw~oMB1@~( s hvAޮän6л>C. )?umN'Zb%//Fϡ>E~C%ûkCJ7Y}GAR[E$xƏ JeROA+7Zvփ-pMl?a>$#kԆgF^(cg.$1,+]9I~GmОjkm_[x~j^(.޿|ϱ3G7}'Ix+H)ē?/5x[R<7EœJ|u[ł+Yҏ$x]6񗇴xVxpHm^O,4{KH~.WE4m'U$?F9[0o:x|WymŻo[ewǿ?f^ ,Z( s#' ƫOuMB*Yzt]Ox0R[ƴ)өuFN.Qm/vwG.' (Jn 'ti&_?e٭ kYMEu˿k:Y= 1ל~1}^FKW ~w1~[jΆO|/gt{CoK|BWi#/E#ĺuƇ >ŠEgq"Ss$pn!Au{#>ok% ρ <Ad6xA??ǿmGlu{מ]_N3?W\Zyk_ճΊ7^軟Zu"~jzƕhjv &]R_x<02k5BmO^u>)MEkM{u-3PmMh~&Y&W񏇴nLֲIM7_Uޑj:|z1߇E$~(xſχ[žw|dViox_#| O|BS:τ'5;KƁtJcyx#~ דzdO< ӤXqiz%z//ᖑ =kGkz7Q麒þou!x? ks, -πnbŔrx+G?\_UoGK^S ''Nj[줿~־?lIMIm7]/sg(~,Sgx㆝O?ehe H|C 5+ |Dm/B_6[/J:5?˵axӧ;inﭟܭk3o?_*<'c?l3g/sب# 8>{žl|1FoFG| tG:/,_|??4/ x?.mr_~u"|Ew?_ռ-qo x3\/_4DŽxׁDe'7/> O L >hzƚ8@\$wxCzY<42ei1 /ӿ?E ?UXAmqbc?-+Vտ =R_ {g&O<;HDx,I J墶~8?Ͼ]_N3?WGָcOIܺ[]w-/Gs>k\'|u[K -oFuIOO^ͰX?|['3t9O}_$ jz|C_s?j:|I|@V7|E O ?0k >#Z5t,W 3KMןKa}W7;fOi韈3soɳ?k?|q³rFc{  x,4|b#a3֑ o_-ix>>d`/'?OmCT~xP,lu];X'#5gߩb5cro >wUZ]s_KH+cc(?*H?c"~~^߁C}{WaT?IZ-.HyrBxknITQE~(~QEQEQE}w?-\/7?χ>?4 瀾|S~x^!lڶ'->C/[U'|s8 9<o S_OX>90=Y_[0ko/ ׿!7[_S n|$ ?"xHm!P lʟs\ەԚ r\GOWo[kuf~:l> SoGvO V~#xğ|OXgB!&+;Cko|34? |5 n~$>tcW 8~9|;0?cq;xacoov~F_x6ODž,._gwk$e7*e?/'L+-~w 7 t k 5 _®13)xLx?<Y? G>CMo~%#m/X񾷨]iƳ)4 h2II|6m[LxWj;7V 2 ?@~|G,4?_ iznxA9x(]g`bUpژtԝz|rVrwIVJIߙrsM?{-k e~?΢mvV:? /˾wQwkڕ_ZM|<O:`Uko_׍/S8⼁BnZRmiju*iYj{zod>9+_9ҿ ~xS'i|QqC^~|Pj s7< M8/?iڃ~ xQ?]s?D|h}wk+]oNr-7ߵƦɬۮ~=;C<.85k;e7|tм[g/~ށG~~ |< -~#xOx}[WhO>xkĞ)ֵ3? [f}gĿ|5 &[ )|>4>G5ku+}ރZ˗۴-W?,/aWV0,w ^ڨJ4ޮ{kg-[m7W]u;Xx>;<gDw_9kx\މx^"?\?,)nu_|MB/2| Eu?ez+{7޼yTM9z]}Os V+ w|-m)sl /It:WȩW_ɜ_GG߆'z@EddY sRj3T)]N?*Sf&9E vu  |7_4*>&Go灼) C¾"^U!5?E>̪4j/$2<|ө<~ < hV_oo_ڭo {A^|;/_T_xAψ$Hk{mV?-*wo]=|z&⟂&ҼO⏆>|C𞇭xg=@uNOoP=~0|8A⿃'q h-C *~_t+ x-n4 ω$?j_?ox4_"o.~xT SIweW_|D=co$7!Nj]qO Qro >5|qw jt/|?3㧂%'oo m3x_ÿ0S3|K:Ku3~6k:_Yxo3~<;?6xs<;k/?xRWԿazu]ɾH<>fPکt=+BMh+Q; 'o(< `|<0#35[όٷA>'h.?~)[~0W;w ~x(_.|H+?@ɻod݅}m}6??do"|1ڏڶ L߆hxS^3;|g."|Eωzߍ~~8x^"}fy5 q5u|\~$k?ÞGQ#߄<1oxtO~ xx_6|??h? m7m3QWfI?d΃/xS+0k79I<7?G/;M[7y}zGgn/u $ߴ$>!x2]oQ|bG|m5x~s]̿}e׈<ڶߴ7h~(%+"xo?l{xxsĞ3q5_JJ{_%!ioK ?>* aڊ?xoĘ>3HeCv7DoOEE7㯊_C'|6v_|-8O|# ?y?`@xھ(ѿ'Č)[ ;v_q <?">:V <?">:VCG$fGCG$f@ #Em #Emo?ݾFky?ݾFk ?Wm?xĿ>|c| e_|?媝\E)Kl} 37_Wzǎo5g?s|8> ;&Y"ğoƯ _6_h2<fO7 |LujUH::dOkM@91m[<1 ~^k:֭Jx↓G#^3Co+I/4v+exP5 'ɟ>7:o*xgHc߆/ǿ_ x2] &ߦ|W?h_}XXC[=ῆ&+~ω% |)OȻVId"j]\1c|9g?~_suM[mگZ@_3}#$f=TCοOOS˚Γr_?N0 '?/_GO'ZDEO|gyȿ?7L¿lKN#J+S`(((l_JI?Ex3)si7~7į|aw!/ߴk _|8]~?]7y+B;G/>n?_ſd߁(x^G_V>?K[p+e>᧍<_. _o?Ae ϋ3gW2HOR_K[S+.sú|>;7wᷓK_'N={Ɲ'ǟ tg4?j"=~(^ >$a /1I?_?ǎ>#>e[KAiK{Ÿ 5?,KQ#_ O1}]5|= /v Ox' [< rɓmWʰ|R.xA# 3񧄵 x$_"'>;x ?|Aƞ?uJ׵mx[M-G]zyw8|$EC·~8קZ|+>w^2&o /ŋw/+0x~_).?FxGvĿo_|8Ŷ ^-;C~+xU5G෇§o/Ed@ ѼŞ>>MJ@|w?~ x?j<= \u"?S?Wz?LI6?`_. |~ο% ? ~cV=~?8_LzmRkq?AiW2j^i}+IӇ?ϭ|17ʾ| a>+KQOϢbc-}l}|דySo چcᕭզ}U\c}-}yun.|C}\o*׺ŏ}zOOJu8sjGo5s{ |In'h._eǥ-|_"nKRдoxWfdK|O'%>';;?y}ƾep_h^*xP5?Xw|Y|<=W; a4JKoz2qkU{4WGJ4[u!x& º2'[.?wG.nl Dj?[)Ęv ctܤbCكѵ<]C|/ذ| &b/~A/3* g .K.|Qs]d_x{Ht __~x> E(Tƾ*}ax2,TUEU^>wĘ[O9%gˈkR)w'k[ VWoGGl{uv Öv}*Atg~' xÄx Diީ'5MI4]⎿vx|_Jq\B+>]-lv.]#u3q hC/oUj}VJ~1t5ڼow߇V>ǎ?yЏ=?R[ogҶ_滶 B;gA_η?#eӟ!'{ZƐ?k;p㿆I+3 Ꮕ|q.KnT@P|MohӟhG'sן|ɥxxDڙ>5% gYW}K4⩮^nY&57nk^o⼯o)ySm9F:^ivisRz~K6=[~Ij'X|= PY'⩼b |) >~џwm[|Fz5Y~պ^jzf??>#<t^0GKîW8&]>mG3koxҺsL{Z _Md}"ìm}dɶ~ )2R+X-)=_d ,h??|QcĿ Լ?wS9f||C/6$n2Go^]զf8|1O|ehG~17|t |3*|? Jj~=+8<?aछ-JwWw*Kh}e|Ol>ksZMmڶ۽/?d83Sri?h? ?i[|<>;׀~(2'ϋᜏNyIscR?kO1iW K~}[n/*I |\Oޢb@_?>f,~7?d|=td,?IUG,?IUX_>H}ƃe>H}ƃe[[Nnm35UT+n>M*_ ?5~g֟,R>sy7o?_-5O+lNS?s_'x2jӓ_e9-_eȫ9IyWHdWw"~_?j`?O_ֿf"t3 ݳ/8*(OՂ(((^i0o_onOgo^xZEj~3_k>#y[-2i,|sZkc>26 OYbq5׆|Q !_|p~1ďM x4+jAocÛ_WkvW_\U,^ګk{~ 1 ewE>B~N>7-m _x&o/?eo|ww+A3f5-c^|he|f=EW;Ff]S:D> 8_gPǂsg/O x48|5 (0svd{~x>PO|F?i.oÛ߉7|G? !|c_Nj7!׍~(owMU{&ջ7Mg?/O{7||Y|_7ÿk~"į#!еV/LQ/~_IO3)ؙz?1o?GH|_+w2yT:.rs?)~loik طUҿ_:t W~4K⏍?~/&?A |\; Iߋ&]q xC-o>"E'VFuV+}~oNNVFuxՅh??r=0/lO* x0xbJI_irǂ.4ϱxBw:b?^9N"Xw1~xwOÚoɞ%{/KDQ׊eߌ^1W2x+C㟏>o~:? + w㿅~񞃧~iT[\/f| U%|,gx?86vV Q>|WK>4Z?? g_ |9<)w<1+/ׂ|D|O|'Ӯ>54mF[񗊼gXӵBoxg 1x0|+r뿳ςx?</|<<_+Tu NΥ |;ğ Ao~_xg [<)L~_a G\PƵ't[t?1=W?jOaG>>?*VN#to_OǿJ3q~9nO+'~z_e_)Ry> h|9-"S  ?h&o<| ѫ?ƾMki6'Yt"o>!w>-";OqoO9*P͵⯆zO4;sCW_XŸ͵?* C^wZ_%5럵^@~gNm ^~^3Do4>[g nf|e^*;|u)< ??v}W~Lڧ7-gnzVOCUK0i1xᖽJ]wB|/ Ob: i7~mOĄn>^joi|-<1HrQt6~k|UǍA<#/?[~!Ϟ0r<k}-B1?QKtF?_>ѫ?Ƽ,Q(/Tw,JE_~.4}WyoYbQ_X_hG5Gזŗ;%eG|]5GZzn`Y&hwA d5|:o~&⏉ ~At詤i~#+ <,jx;l)|pRTgo 屃oͻ61+EIc/\\OOc_'===@95W9>Ee c,eCp(9JTjʫJ)5.IFӍNw_>'rC4~ [YEsJ_k}>z?ҿ"O ݫ%?H?+*ȟ?.HYv\M.tۻsm-J+Cp(((lhM477ZeSźx'pH=x+n|iZďx~|C_x<74N Wߊ3۟?H~ ~$UQ`' &t,$h]:ER;5սmn6ihk_ H]K޺>#|9\ǀ[k?x#ž_^xo $/~M'͆+h;'9b׼K/<'o0F3>YTku?uwAþ/5~:|IS/Z64 K?x*X%[=jr`gx " OFtjj2iֽ_ ?|Kg_<_x2_Ј?{dqG+-zM[VZKi٣~,<MB?h,ωO1hZ$k{ieyf~g⿈_ {f?h9sOeg|oy-;Ú9 2%O7~oZotC' nh:/[GoH-6~7> [Wx\+ oj+&y_So[_Owuv6? S>3_L~>7~g_. x?O?1>hG_QP:>~?6&zs ; }kT?"+Ug- m|KzJ:oVw~؟Mc`-cQ5.?/Q7Gw$>'<<ώ\O #u?6?HG'$p2R7cҠ|uMEqx ެw)X0 9F]1ɯȸ r(I|)Y8.ir9(}o Ba$ޒӧuiZT~}ӟƏ|n/z/G<-2~ӿr_G| ovoh?"OOb+7<OCM8x~cf/+ F|7[@n?2?cǟW+~n|}9o~ m%{_ϱҕA+_a-|Zdԫ>/5P~}#E~|\dدF_6s?Q me?W~-o|i}_Ox| }M? ~mu_ï٫oÿh? t_0Dx[σhF7|Nmߍ>՘yïר'[4`|OOx5&")_+3ɿO%+swcq gS_J??e{JkOi=>eO|ZtLg8UìF a{>7?>3+zE+_/]Wt{Jv<-ߚ6|i|m 51Y5 u*A_J<Þ-cǧk_7%g-j MkqῇZ]/_  dJI ]ch#2|E7񧀄^_5¿>$|]D>>S׀|r -`_> |JA~g◃ğG3|a['x~̿G!|_o|@+|S++(|QWO~:~#|%|q/ ~Z.8|3q\OGsY|i;gBw7XZ뽿[E}<஛?~x+Ǟ?G<=#m[ ߈_I[xC`Ş"-"O6(bI u'τ:G2GM??e~g+3uۑ^x0 # ,teq~03y4ʼDK1|?®ɮmݭg?!e\%ßZM}kQ'?/_n$Ts醿/"O y!@(s?UQ_Q@Q@Q@Ug0o\cN_T>0x[R$Hx^er~x3;_[y~RC]Eπ>Y~5?|}'r/3M>:jPW2>0A=^x g|M;OOfG|C/G#|9_sO?w>7t<.6*o{iݧkvk?5_~}<=*ε=n?xž aU= S_^z][ዯǁs+2xq~ xǍ|WE0n\ hFֵZCx'_uxůoOٽ|sீ^ __!a/{f I?Z_|7/Q^'|n?H__xƿ =kV־>,8,>;PS/uG }&3ÖĞ$o_ܿ<9yd6D'~>__׿~4wZ-_][S_S^w%[xGƁ>3yO |F<\gRO ^4 {xko76>9YXZR}mqkkZ)'6 ߀dgmjn/ƗݴOY^$ >%|M| hW'|e g|ݷm8l?c/hMkos/_0ʻll,“ׁ ojݕ]Rqß}7OF4/kU48?O@!VA4ھSzMJͯz]|[=?µ-V\Ze似pbZcz= Luzٛt?h|X۸?u#eſ|Os|蚹?@F=+,$OQ?u5櫹ڣHO[n@P~+o8[18~UӜBNNڭ/zNk'NQVp1x ]9I]5G}|+⯄>_?ELjl}c@5og_0xCZez?Z=5|5:+Bk>!τYG:_H4Ag% ~?h@u+҇|ǿٿ COO_xօ)[j h|!jĞ! |U/YiڏD6y$_JyI~&SŞu__~/j_{v?k ~1|e?j9~x?wnP-JѨ B#0˱08ꎪU)YE{1K[;%H|ll3?voǟ9#% |Oc#ixm|>'?><"Lj$:OST 9xNRoS[xK? |8X3FF i~<' zwU.?REK p0ʅk6NqF8QsTbLDZ%7.*mkYj/_/>)|*?(a4+9_ I+y|!neopI/D)#y]O6wZ-BCJ7z8*$ى_ߵ^?_lߨ=* =չYc?jA׷_ <\(Z4]WGԄpYyf⹚Mv|v+7o;Mg67kOM|IOX|uNj.7KuxÞ"V>$foXx>񓷏 ̸' gş*??kOJ<__~x?![k?=xW mwᇉ|k ¢?B.~"xW?|oMx#_M6?W=:2? Srq7 ζsF5̓әJ+NMgKd)IsTN^?ox$|Hu|q[UմcÚ$9 ox~)|^?>y^C>5}['η@oM@~(5_د?G?~ҿMo'<|m>-^GOLtާyx'W~Q?#5@%A*?b'<=-i7:xRoZO^?kc7.xoc,3¨8MQMH5wmdx"pg\#ֳ?צ-wV~%ǍH|ce&ſ'ؼ1#S/Ə?"~_=b!|Q@ q(׿Qo_C-N>_\kk-NJjWF'_?wO'#1TeCo_C-jY#_?H'QeJC>ak)5xcz{ƒ>4Ҵϊ_;ï%x GVB3ʟ .|Cq5L?o]|$Gǎ>?՟ek>#h|=2s|Px$O>/wg x'>3ܮsֿ5zM|n_"x7Tշ[/D=uߧ_\khO?/.5u4}=j>K}{0^SG|Q@ q(׿Qo_CO?/.5u4}:>K}{fG%>Zynw%WZy#"p\[-#x\}&ǿN3#>{vkm⦺/|( ]_5`Q8@&6<࿅~3xG]-q4n_ |ouTږ_]>$b@[ƞ GWes_=75Qs1\%RP9=[V|#$GֿK"~GO': ?O_ֹhmj!grBw7XL=ITQE~(~QEQEQE'}߷H>4oZŶL8ܗ?>'k7"+ѼU8v_g?em=(q!WxJ}7kh>7 7NȾ&\u9۰k'ۧIXkz_Y⯋!⟎ O 67x<? t}o׋4 K_=/1/&m'CJx5S^?C"O1ൟDzKz6.ִwDվ3;h^$| EuIa㏀~&|&/00KW+cc:Ӈ o:χQE Ǎ'pR;9nz^oI)8ڷ2g]lYy}>~hf/L}K4OxI>5|o4xOi~!:B|ddaa2_xj߳/mhz߉~~_izl<mi|,' |1vd[%V_ wvqx 4_j~:-/ xG$>/|W/I<,~'u"_ _ǃI~"gŞ{57?^!|/J%߅Z |?O9-W^#Ƶ=*7_?_u.*WJRIǛ9;5}}gnlc_QVFwjڟ?bݟݯ9^L=|]ҕ_2=. /`|7 m_.?| Px<+{_^F'ß xª$?"?\To~t|߲<Dj~~ ռ;Kuhq,_ `2|f0pѷğNO~5xj][v{GgO5<]o Wd|/`I~-x_:4:|poßU+y|@~ x C~7'X.ٻ_^?LROO~_>'|'3r|tN?E[eoO/׿-:%_H$7x*?|S<=|韴S& w ~˿ᶿsß|7Ag_Ky}iO<"ǿq׆E.|U]?jc'Je h|!_ǎ_ |h|~G%/$n?_#?η$u^N.u_)Z4? C?</KHv?k3)94xg,j ?[şxaH|o'3NѼs}WUz{ãFV+`one}ˡ}o?™'GJ_烨~{ޏϿHdk>];^??S㎯}Mt3S޵>𮗢x>>K|!2d^-OG~g8"oO#o+xf>[+=?ڋ>k{$߰I' _ >"~~9~7/ҿd_6>u+?zơk-\yxŧǏ}8RRdj8 ̥x7ר=8> }cg;AO hX0ž1>(z>OMgs|EmCox?޿g:檰>+/)X^#ҵO_ou;:VZMs^oX<@|d?h_YpH>&xƶ[㧎¯>O? Iw'[|@<7g-b'㶹_ hkᗄK7ï?~!~3>^7o??|}㬟?ࡖ78פGx/]9ľe">&犾)xRx]ky> > M~e|<?! KmOֶk4ח>G?F5|W^RC_SǺǎeOi'u?]ŷ=k/>|F"Ǎ7B%?୿+N 5EwQ5x||L)Jo7Qv< 6r߲w'tusVڏN4_g< |_ږk?^x? @ O# ׏¿>G G[~~59{7_76{{?|UѼEHZU^16ǏG\Wwbe1Z]ZR涩;{:Ӻ^~zh^<}K]Sc?h>*YA¿K3hϋm>|9_KҼO']񇇯tmu]#O>D*D|3ox|a wz t{ٟf#?R? VXv0|^FFsh4k>' ׵a} ~յ<4?b®]z В1R=-TM4m=Wor?H:oD<BGyƯc|^^$Ϸ^kн*e+2OSO#jzLlLrkקU(5iGqZYoշ{|?3COǃoZ~/&6jV~h!F?*;+[_C_xža+F~|;}@~/OO<^*,!q<?O߆5qBxࡿ a?P_MT|2z J#G_jڗ<3{gG^=ĞoGž |g 3:+| |\x?cdKz-SP' QAO&rѻU'k޿+}֖4?_?p3??g7_qR¸?:}#<[vK9v7hZ߾n4mZtoC_|"ؿ|)/ ꚟ._H@MO ~;l }zjƱl;1('9Yd YWO EŸxGRΓܮ +) AdsԠj}jў?|s +$,|*gٲ'iJKIEI QVC 쿚m=!/xY/8/xkHW,[?1# <)xS7Wxƺ_ kC? ?|pߍ~~~>_x3 N>$>8},ό^O~Y4OS΍o x *[7|s+'pN*v/^1Cagź75xC_x|[+7C5L6oſ|BIƾ8c_6NK~xc{V{~+io) ோ/QC[Bо?ik\_>WbWlڷ#[6~u|#o7~;z,> kYO^kKDŽUuq<2O~|1c:ؿh/~|@=c>%|Ix(K$nG'| ~:{?W>5RX6/šߴ_xs?~&?5wx$%c+0| 6#ΛwK}4o_x6|¿B 7qYk1/?~:xW7~k/~ 7x@|=x7ڿi(`<4|u +{?B ?7kO?u/o /?8|R~#wub'|5_;3~e|gu=5:~_OZoğaOxsGé>$k<;$xĞ<G<go//YbW./~97~ߞ wi7@oſǨj|)7TcZ| .\~< яهh> ?w^3F6W'wжhIĀ/F~~_eKg?uZ-_ܹb/Tw,JOf?^ؿ_ӯ|Wo[ƭ-vx^͓? Z|HCUkDDgoxO|1o4}O 5ƙ5{:~#xDy>Gߎ^'71C7<㟇'o ƿY?ok[N.DbMQ絬}_Xŗ;%w]z~5okp?eGYbW}o??VGKtw} /Tw,J?տEo?pv_mSwoAtsNsӜW ɾ'$lswkT:x$|IL/J鑘WP39 ?O_ֿ۟#:_Q_ЗSD'k??CHg|GEWEPEPEPKVAMcVո~ү:rYDž>k+sc"x?'^> xc_|po<|!?xG?V;m_?ڃM|\5+n}3xݼ 9~_x~'-|a> |7x%_s4>~>%U ा6/ r%M4mb]_E}[[['!%=yin~/>ϊğx" +yOc+/7 I>6_ kxSſ~ξ/|CşWo #%ύfl~4|fI;xoZw xuZ^x>3&' _zUv sH_ {iz5 #M}k]W|EH>j>d_>5t#.[4_r&gemd5z}t_JxW.(񞡢xcھ$!O|j">3/.T]/C9+OҾ.$oo |,3NB99>?U_ ?i_/}EӾ |K #xReψ~x7 'a¿^,Y|*Fߴ'_Wj|B7ִO$|Mg߁x xFmy}ovS ;mjU^Ypj-q]ֽ~|t/~#>#voI_~W(>xÿG;o ~D?AwT#W:?m^Q9=p_߷'Y I 9?ԵB4oB#=Fq&u~h[+v?0hoWWgn<;_ON3xĞ-7_>w U?qcc6_x_>5x/(Go|O^Ҿ.'_Eσ|/  ƒh:[ $rx=|T~!'P kЏ7_/~)ZNxwAG+M ~"Bxx[|.E_:FѬ)tGx%8_dxFӀgg-w>6(o|1g^__ë/'Ɵt|KÝGƿFq-GZW4|`w<9߇:| SzÏh^(hω4] Z_#M ^'W/!6Uc]Ug;B?kzQo?n?fӥ}/~>+zqUM?h;B毯ޫ}h?P?^o~˟<7$֡5K_KIU/AMz+G;>4O߳uB4-WE׼qK)hώiڿ= >9q/ ako^. ^ m8oпPf?YA_kb]G߇|M Ŀ<x|;oFG?s|< uiYk> |Z}eÝþ/MN[Z[H< ¹={rzYvVn;_qA>IZAw (>>oz߈3wSFxdx7A?x į<9o>;O?/.5u4y>0ŸCkh7??/!z O?/.5u5xCL+xP⯇;g' V*2á7??/!zxGL P⯇$kc 2o45|wu_~ؗ:Ï ^&!Rx÷joxGg,W!ᗌY ƾ< [[/ . h~%cWc9?+߀MV?>_dzmⶳ/7=xM2ңu >*9_Gſ~"7I% jq ~^5Zk t k-kSW:N{|NEψ?dK}{iG<%ƽΦ^SGټQA ֣(׿P9b.evN5Is޹99ɐ|O@|I_dwm Ӵ =N@|qL/J鑘*HΧdX w"~^ka5?O_ֿa#?xWITQE~(~QEQEQE ~5XxO'^/~ >X;g^@+09é73{{ZahoO%=O@Ҿ*a[+_$@ώ4 ^g|EX>"xh6O7͠x?ÿ5o i~=񝦓a_X;:g|]hˠGMOr:Ee\%0.I}V>}ݗ}W/<={G|>|{ᾁ /ĦW|=_ x|k/E4~71z<ÿR|Y2W.૷&wvCzG]{>)uo  xǞL׈Si]+%}7nIe{=U~9Y?hQ廖i4kk Ăw}x˻ڼkt㾣xRH#oRu| )V5-B3 :[k/0??>"|| ᝇw^$е}gN| ľ}~ ^>%>&/%4~Q[Q1Їa|W׌YG0y ?zYݷnsz|// Dw瀾%[ڞi@熿|G hF /jn5_|%374MPx-~3O[A^!_7ʏ^ DJW_X>/_ *{Ƃ +G/vX[W/ |EԾ ~ϖZό }Bϊ?/|_?g7 mb$; ~ sI;O~s=A@~W_OZ'ÿ|W/tolW߳G߈>(Rz*E_| ^4MCǁ ,,_ 9_?l>*ӾI߆>!a%o|F2þ(o_7~1%S~<~V? o- MmieK_ؓO!6:2XO~U| 7ºO<+}}z4{J=NMz?.?ªyֿਗ਼ |;㏄ ?kxWmOuSZ ~~ZgPx_|~x>/?iM㶓D8pO|;/m<\HǏѿZO x%oÿWo=dO_hDy_xwCm.=<[F zvWOQ_wණ.ٱ|)k^:=[ĺď |5@ƚ? |hំf|u|, =o@;C~#8Ծ'T|9?׌$u?E 6(o?h/|!x|7XVj/:|<aBf7 Ô/|<{x[ž ?kCc?`9ԅvxؘLχ 鷖ݵ뱿OK^?xoxM`xJ?m?fGˏyYR1_=~<h˯x|-|Q!x?~T<;?8o%>xUigK?DLN]G[Qo_ x_xk{#P_e(?q_xJռ_io¿?Otg_ga6ߵ8x1K<~̟i< ?'uϊjO j׿-3xׂ<7mc= ^3w.ˏqை?ρЯC#P_e)g:檏Em Q<u ym /W!d| y?cFK\ʼ?QO>x7(+\4êX1I"}@j_|+O{ti:xB7/\xkq;>_ =wψ7qx9~gr|J_͟ꌒV$gvv]_Ri&{4Ծ]5m|E'> }te h>4U߆xwcO.?,\ 8s??#ģ?M> #9_8~ ^'ԺƋ/ Z:|utmG椩홣n 0MDWf_$T4/kl3o c?nIѥt}mW:?K P}?-7ߟ _#޿[Msi{xgFAo:F՞[A'ͯ HfpşkkiM:7q\r: 39{s~o?^3~ >+kZ+/!))׌]>&qqa|N[.Os\<]z_>$u|EEo0x? ~xѩ~*G'~?|}𴿳_|tǻozDorcń'T&:yM8 W%+ |QA/%?iLH'w#k s<]7W/5O> 灵_#7xƺn$ A>xR_s߅?|?xr’᷉?goo} ~> #Z'j7ׅla |6W/ω߲Ʃ>7㟈_~h^<(KO5h/ 47e_v7  oL!xcKS~kK8?|IE|9i|cF/O"|8'"[ǾMy㿄T~ |?x_t? 7|~5IK⯂O:2KC#|F34FuYؼ/7>/|C_º~,Ok!Ξ'5 ᗆō>rgo+Z+m%ݻJո+#=:_V!alm4|(iO1x$O`iG_c/GLuarg5Ug3mL'?ioA<' ) ;":=kπwߴZwOYxtSW֏xj}?jA |N >|U/DǍ{G |8GᯄU합xW{L|2wA/|K3x }t? xxdFT0N@]G61ѴO5k>x*Q 'WO6x)ǎWP6x?M}~ o q}/xQ>z <|Qut?ڿGO ?Sş/g_x|Hw/x_K6-Nzȋ~~Xx`Ѭ3x᧌ix#|G>;7\|]Cு_xU-ټwO1Qd~? B_~fTxF-?h&߉5χ|K㟀o^EX: ׀~"~ў9 |o +C^ּO#^jZ.}3JreGYbWU U?2Um!ṷMkŗ;%e]W%V޾,_ U?2—]NݿӶ9=9Nq_ |3/ǞΩ|,~cd#x${F`_G2?˫}?vĽ߱_O ؏Y*'|ItH|Iqz Fq  x{|?d^B7Npݫ|t"_K?{#_L"O }$TqW;T?IZƏ ~Y_w_%%QEQEQEQEs'[OŽ:̎n>Nc⛯'f2VoUw/FOo~p|L߇4 [X//oo>(#P|IS_?j+xs$r|ES &?Ӕ6J.I_{Ϳvi}wU)WV~}>?c _%|?.Ix E-Ầ,HHY=a^ំ_8<~#=y+g|cR>b %?DKEH#i 0s 9I;>8 8 kCSBP>?|C? <)P" 1p~|dG=>3e1\j(JJU Rde}ڔZj૊H% [kiڟ? 7/A,?ʿ#??' dz +T!^JmMPKVv%_ '-ݝܖ_#<'b -ɮi?|}C1J"SEA xx\|fIis߳?uojMנ@~Gy~}pqŢeu}} | i$▵ܿυ>G O>%4kf~ ?kmIcOS?|97^<>+~-y e>Hk<|Y_J^"iI>xS7iQú&8-=Gm-1,(?),AHFehmGt%uj\5bJCuwaEl8$a'YwuZI[G:O /B ,?}u}V~WwHl>^;ڋ]#_Í@bǞt ^3Wu ?_!_Wwco' AA0Ǹ+ 0^9%ӥRJRWOk[>q5ಘ8~x|-k(k;f"9)-BVϋ|7vHԼ_^$o&_|;'@|żύx Ru?:OCo&P|'?x9oP~пg'~+o_!_u~?x{Og7e^~ g=)!Bھi]xGLݤj?m+{^[^?O'*5h ?? 6UDnGJ4ÚwAROc5 `+Jc VuWWA6 _M95WQ}sճiwm;# T律?hkOoM^4hkOoM^5AXO4Nl?jvWQcNVQk k/#WW}?從~{;OSW`XevT8'dx}q:z?tNa~ո28={{bk_i4O]U9  nOuz+a_GVR˦^{k߳η?JE,jRSWSW0xY:tgxW[y?_dRA}d?h҆Bj޼>ERsuKDvZ0#}-{uP>+<U.*۵YW_OJğJcz6T"o^⟎|) @xy'<"A ?UpRcIOr 7uVӼk q \Ƽ%֮Ncocof |<Aecciu[YHχ@U'k}A8lߴr|q!M;β~>x|e+/C{þ|PWD_ x8=̖1 o|,Zӳtw Doyk?zϊ4`~1 ?\|NM/ӧo^k]#s^||5(f|'M#H(-$ 4h_?h@ү| 4هTߍsԑka/â /υQxkDs$y7xs |b u_ai#ú s g$mB4Fj+&E]m|ԊG_#:gL""O <h3t:cƱh]DEO|gyȿ?3 ݳ:*(OՂ(((a_]=sgQt:VG䓌dy'54l m(G_e/h{c>{kg?~J.I2 1Ֆ(OF!58F\sWv?0\%,9T䔚깻Jzwig~}?%%RY߶OmIԯ;{N%֣{N%֬0plݿ꥽_zu:ԼK_->'c ;?-i/zjߵ6l~wb,/]kZ*/qJ?ǿ_j?ǿ_j17Z4gz/'?/??|~+W_ӯ8KG8K\xWzt^ wS!wӋݴ~_dGŏjWį/W沿q;Zq;ZO i:G/H?!wEs|3vE[C5IÏ$Ï$Կ4htzC!{,%ӽǟ,3PB?OJ?jC5USÏ$Ï$߉9_NtK|_EcԂ f\x!FwcMs]Va7?ǿ_j?ǿ_jx`ZX+>o+ۣX qv{t߫6~ ۭBOڮB?˧5X+NG\ϕ=kӿIӿI^:dxeb$D^!=~/odR? ?U}Iְod>?Ww/w/qr/$T}?Hyio{Wx?/}:?/??,/fǃy_ʿ/q;Zq;Z?5dzۃcd}߱E{y.f{</=ս}'#?ǿ_j?ǿ_jHZk +Nv>_ǃ=u~}Ϫ|Oh__?8KG8K\콻 MI/ %I_n֝?b߀wzu㚹 MG~Ï$Ï$ԗv\o/Ǻ;? v5ޟw_x{z֮!|+]cO?n0=}}q;Zq;Z\ȫY1ܺ#!=Qޣߔ>1-U?]w~WU?J?, [n;ˏܯاRRIҾ;8q/)dF1wZ)+]ͭ<+‹ntk=AEWŸPQEQEQEWɇxjYvo +0tL??V(,__q_ɇxha?E;b쿯e:Ə&R ._q_ɇxha?E;_pL??GOՊ(e_ɇxha?E} Yv_2s&h-7Hྩ, ƿQ؏5FYxĞ дm7Nğ^%χZG'H'^$Ɨ4R:+K ~HO4߈>,񖱯YmoH/oh'g+\R[kv򄽸L8}{/gJrwu蛺i'kMO]|K8G~!>y\< |U_ }O4gI %" ry+ l|L~QRhˣ!м;/ C_NT G(I-َ~G@|4i˾=5_zi)⛭;&~xWҖ>_?bENO7eƤL_.oi.u'EǙ|zukYzӷSz]gAW 45kxi Fup"@vqF?+ß-aV/Կio i:,oϊ$~wI/Y~6>I'I9j>xߌ|?|vV,F+"dxhR4Ӕms޼I]ի-tOnݏOɃxzW> Ҹ>Y$C<,Syܯk+;;gK?moeoz~N"܎{zV4ƅsh>f4[ȎgYċ[ڿ?,-'9K Y&? 4mSGsqW5<+kS|@.|)sgux^tk|C$aLω_naMKW]_if4XgA&C? x(_5ŬAF,f*pcU VTi9ɻJ+J+EvKzii{gcjz*xWg#xz]"_ 4xr(Kh \N&\^__5a2`p<]ZS=Z﮶/ݲJ];r|`=FOL<+/9ܱ:!|_AWԬ,mudi;1/9f%2I^+4n>SVO-x\ *OBR>` CG'9VRnmJ7{-zZZ_n_c sw 7J3ĭ[ſO/u?Z>"j ]Nkv>?0ʗa8Xt/&iؿKώ?k7-uMWǕgKo+^)> 6UKy,?b_D|%hK|𷇾x75,f?nOdxA@22H_I{BD8Ҕ&|wk9~{]^?C{,|p_}1iSbIn\x{[h!#bD^5_?j_5lǿZy/ Sþ'x=~F_x|jۻ2?.>5B?=hPCE\cc Lsxq%+E'f_ Ꮗo_ꚕ7uZS[M45zbgmXn&mYpׄ2cJͺܗԹҊI)Knŵ)$ޫfKZ륿UwV6ֶ(DP,.2J0x*;+#XӭtKO]֗V&`˟ uA$?gO_;ԟxKćq5|PR)\׆rr\ʛQWi&gEn~KKd<@3׬}CU􅷇Vt0ޟY6cLy zu86>8}G:g~$Eybtmk\usx Gwʧ;r|!ҿk~_O OOO4M1DmxwWxt w/Z>m01٪(p$$/r[Xj;Z[<~??\Rsk_?e_!7 j:oζ~oxkߎ ~Eh-|-"D`ӻdǙ1)FN J2jQRNRikm.5vvbEEPEPEPEPEPEPEPEPEPERj~-y>kn<=cs3{޵dH?U3k~1)N7 H3z#_<O|9_h53Ğ7wK|Ex20BLivesaom隕[  B'YF}_߲Nhk,|xF|)Sx~3hscy # #?Ac0/'y6`Z*3RQQjZ^#v=dnGwo=ڷ?u0|s^S_|,گ< kxÒ82CĻI51?U+> |#7׾WP ;*18?2KKH?ď3k6P,]'8_"O%{~~Ҟ/dž[CEgm7^H7fn# 0˱B3 TpIMߑwQRiF j?%}kW~7ðw^?/v>KE#5tO '^hP5$ #U M!?okOw ~dY8-1:2UJ<'߄>|9¿=ևo ZgxD'FwՌb]zIf,$ydݸmvd#uO73SºxLV3m5PߖKRֶMuhDV-{zWO]+/ ׁ<-dW({{/ņ}9xyq0C0GHO#RXNj^m9K&iEno7mVx_Ş Ǿ!Nլ~C_~ѼANO˵|MͿk/ |:m Xd6яBk !x4?V a:=L`BHHlXAp 7&gكm߅z-Xx_ x x{LG< QIIkr־q϶G?*cIS^r7u{7mR{Z\Ev >мhgn\^5? -1(r; p~:19_ C2Lr>"`Nam/aþ?17\&a,*d _şwĺW? pcK_x ᗐ)2T >o?ڻ 1(~-Լs? k  2*c wQ/p|^ ·ִ ]CU״&]oxK q C'UbCoiO0_Mgß-Ώ>q?ލ&Ln:P.W|Ngf0~jiI'u0tk}T?WI`ڛZ_}@>WX/^,/@ex]vY>:o 3f N#ܐHUdBax\f:Upm8SIIZI);Y7 j-Q^X(((:Xm֯\Zi~h`"腝ᶀ#!N6' 8\|tW_C~zW8|QO|7<31Cw>#q~pZH>0u<.Brdl6Xφ&ӷ+-Ɂg]\[Xqss=ӨKU Ǖ X8o׃u|4?x7^ѼQ{T}/K-mUkh]~؞B[NwyxgH)1ộ%@Kj%dRyJHxѿ>0~Cχ?>Jߌ3~"x.WZV:׊;Gk3#ᾳmRnJ*mRTCtL{[?^4GkmWW~!k/0 |K~?'\|1 v?vk|n,)8J]tvm-6|hֻ/ƿN<(5c& D7u7]𾽤֋i7i֕Dzƍ\<,E* :2LR?aF|%|@/x_;Z<ΣxlĢeY|6[o6+7ÏhVx/xXxgjZ5cd8,ptԛ|э/NKݫ=$һK]H?iO(( ~0ğ$io |SP𯆼'~x_ƾ*)bKG7[_6@i`oW|յO8ݯǯV_BGe̊[{ǯHV1^&eYky"ߵOۧmƉ:|W4?u>K~2o|K(-x 6K[v)Ք}]Az(m^@O[?▿><~['?_{~l=״-cZ\yBB^_BcMG?ZF_|K<+iZ%gqF\ןFq3϶c1O=.n=+\~ԟ>Y7Ax q5M'|qkuм{Ml6fo-ѥI?>Q_4&>&jxo_y XxN?Kxqį%BL}ƣ&VeohѴwIf' xܻxźǏه% 7}kO"12/ӡ0X+~D [xO-HGoB? _LwOo'*QM^ozI_6x_FI批Vn*۷ۢ߭;#~-k>mšc[hƗ[N-%Եx_4 LAƿf`@v4`Fǘ[%~2_?gρ7ſ?ZxN|Nj:?(~+O%?x28C"O.͑\S$?i w_h/WcO: F_.&6X+O6XBYcQZ'4|Qڲz+;6~C7ՀnWO!㯍~lا_ǯѾßl }{Z5 x[pxi!+-ݠY S 1?b?m?sωt *g~߇5wßO?[ĎQ̞B71#ܘaIr잉i'~:o>gCߴ'/{þ յ+|@&𶹥ݼ47pk$>6BH2ۗ_5w|Ho O?|!c o~,Zxߴi_+B3k^#:ǾYj 1\ @/-i)s1TjIKwӵ_~F3_g?j_f/&|dmd|E=TxLE;H>!\To >ÿ |:fmoe1,lkR2nυ{ ѿ`o"CiW?|a#T-W?~:S5"RjYf')Z{\mif_wj|S/G#)i ~6udf+^%0Œ5/۔ki~)~ѿG7?|kߌWOk |/_t #@z_h1hT2`Ʒ|;njD_ٷ%sw>|+=Ç7#ľ;0G3$Df?]WnI7ztV ^gE0PݿM,89G?4^]'Ǐ~%?rhLFI =}^O3 l|+o'M|R/(F txJ?O #|8;xB/ GmRY;M|4Ms%d'+d[o4Yjs=9g`Ja~~?OmC?c3~*?7o|;>>τ_bHg5V9}My_ iYxo&Q5vw qĒB|,xĉ%+2$ۋ"Yo֕!gˮYdnk}otcqj>9as~$Z |J!Yx#r5xOovg? cm4r\$/.'[xXql:1N/Wni}Z(((( +ĺ.kvq:6ahtWzfo;) lF3ʂ4"MKG;?+G}[Vx޻`CBI]-'|z7h4}䢫SM§+(庺vvm;n״ /Ě6kvq:6jz.c ޛ#AuH(fu9PO7_%G? ,ξ( Qo #s[:e_^Zx^){9}^fO!~8|hˣ"g.fx[ú,:#a8pH3&D)E^I+I$Jaxݵּ\MH/t t6x<x_Pk_/GRk|D%⾱UTQFOlxRxC6?GΪsQ]tզ+%Gm.wE_gHxZog?gf_>(  O?$SxVx챢Kmq/s7QIm_"|= k~*|*9|CiͧbSt-p43 86hn0qg ??CF;W>#)\m<O$K_oNޛimC0?gi-o| U+uMop޼忋nCq$XeuNjel@1kyes'\_׉d??᮳| t}G5#Gm{ׅ7|l3<9^7 $e7tW+6kM߉~-70x'4k?g_➗xsZ׉|/>*xZiO Dh('OM Z ѿ`|#O~>$?4 x-F{ o\[QMc+UϢi+륭moѵih#P?i?vx'xSǺ>w7t!|0a&|&yf4۱?jqC>'_5O]Y[N'>#*+n%M]F⡢hMwQsl>Ёw{[H.ꝟu|$ qOh{׃<;wĿmꚥ|8h?_k>G|OQa6%?oH߶|?S'o: 3E/'|3x)4œ]܃r%RZ(>i馬vk[zf),O#Ѵ?^iy]7-xAΙHcF߈"~ԟgHh//^. Zxs)?\SIJcz߆eo #Kdxǃ<%"G|Jߊ4/G4q7/C៳>1X7&HV.Rnu{tZ.ޢ