[Setup] Product=Poltergeist Version=100 Archive=poltergeist.umod SrcPath=. MasterPath=.. Requires=UnrealTournamentRequirement Group=SetupGroup Group=umodINIGroup Group=PoltergeistGroup [UnrealTournamentRequirement] Product=UnrealTournament Version= [SetupGroup] Copy=(Src=System\Manifest.ini,Master=System\Manifest.ini,Size=1423,Flags=3) Copy=(Src=System\Manifest.int,Master=System\Manifest.int,Size=597,Flags=3) [umodINIGroup] AddIni=UnrealTournament.ini,Engine.GameEngine.ServerPackages=Poltergeist AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.AttractRadius=1500.000000 AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.AttractStrength=0.007500 AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bAnnounceDestroyed=False AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bAnnounceNewOther=False AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bAnnounceNewSelf=True AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bAnnounceSurvivedOther=True AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bAnnounceSurvivedSelf=True AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.bRotateProjectiles=False AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.SurvivalBonus=3 AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.TargetPickType=PT_TotalRandom AddIni=UnrealTournament.ini,Poltergeist.PoltergeistMut.TargetStayTime=15 [PoltergeistGroup] File=(Src=System\Poltergeist.u,Size=388997) File=(Src=System\Poltergeist.int,Size=271) File=(Src=System\Poltergeist.txt,Size=3004) [Setup] LocalProduct=Poltergeist ReadMe=System\Poltergeist.txt SetupWindowTitle=Poltergeist Setup AutoplayWindowTitle=Poltergeist Options ProductURL=http://people.ce.mediaone.net/serpwidgets/poltergeist.html VersionURL=http://people.ce.mediaone.net/serpwidgets/poltergeist.html Developer=Serpentine Widgets DeveloperURL=http://people.ce.mediaone.net/serpwidgets/UT.html [UnrealTournamentRequirement] LocalProduct=UnrealTournament ProductURL=http://www.unrealtournament.com/ VersionURL=http://unreal.epicgames.com/ Developer=Epic Games, Inc. DeveloperURL=http://www.epicgames.com/ *E3@# ,f P,53NoneSetTextCreateControl SetHelpTextTick PoltergeistSystemCore SetValue DoFXStuffEngineReceiveLocalizedMessageWAVClientPlaySoundSetNumericOnly Register GetValueSpawnAGhostNowAttractProjectiles SetMaxLengthSetNumericFloatAddItem PlayerPawnBroadcastMessageSubtractTarget GetHumanNamePickNewTargetUWindow BeginStateTimer IsActiveSetOwnerLightingTextureResetTheTargetLocationSetBotEnemiesisIdlePoltergeistHeld ImAServerPostBeginPlayBotpackBot LightType ModifyPlayer ScoreKill DrawTypebCenterSurvivalBonusPoltergeistEffectPoltergeistGhostAttractRadiusPoltergeistClientWindowPoltergeistMessagePlusAttractStrengthPoltergeistUMenuModMenuItemPoltergeistConfigWindowTargetStayTimebAnnounceDestroyedbRotateProjectilesbAnnounceNewSelfbAnnounceSurvivedOtherbAnnounceNewOtherPT_TotalRandomCollisionRadiusCollisionHeightbAnnounceSurvivedSelfHitWallPT_FragWeightedRandom AddInventoryPT_FlyingPoltergeistPhysicsCreatedLightBrightnessNotifyYPosServerReStartPlayerTouch DrawColor GetString FontSizeStyle AmbientGlowPoltergeistMut MenuHelp LightRadius RotationRatebBounce MenuCaption SetEnemyExecute bIsSpecial ScaleGlow bIsUnique bFadeMessage bSizableRotator GetValue2 FearThisSpot GetOffset GetFontSize ClientClass ClientFlashbBeepTargetPickTypePT_KillerBecomesTarget SetEditableColor LightHue StatusIconUMenuSetFont RemoteRole Destroyedspeed WindowTitleScorebWaitingPlayer bIsSpectatorHasFlag Velocity PlayerName nextPawnGameKillerP NewLocation HitNormalRegion Instigator DeltaTimemyHUD NextMutatorZoneVictimOwnerFatness LocationbReplicateInstigator LocalMessageLightSaturation RelatedPRI_2 RotationInvOther RelatedPRI_1OptionalObjectNavigationPoint DrawScaleSwitchNavigationPointList ZoneGravity TextBufferObjectEnum FunctionStateHealth bGameEnded PointRegiondist PawnListYLVectorStruct UnrealShareUWindowEditControlUWindowPulldownMenuItemUWindowSmallCloseButtonUWindowSmallButtonUWindowDialogClientWindow bIsPlayerUWindowComboControlUWindowRootWindowUWindowCheckboxUWindowDialogControlUWindowWindowUWindowPulldownMenuUWindowLabelControl CreateWindowbIsPawnAlign NotifyWindow EditBoxWidthRootpHIcons StrProperty LightEffect ShieldBelt NumPointsBelt_fx BlueShield SpawnLocnextNavigationPointGameReplicationInfo VisibilityClipYUMenuModMenuItem MenuItemLevelPlayerReplicationInfoMeshUT_ShieldBeltEffectUTTeleportEffectLocalMessagePlus TargetVelTGTPGuidedXFlareFX utflare5ACStructPropertyObjectPropertyFloatProperty BoolProperty IntProperty BytePropertyActorPawnRole FireTextureSoundClassHUDPackageEFire ZoneInfokStaticSaveConfigiC ReturnValueNWall ScriptTextA GameInfoMutator LevelInfo Inventory Projectile bCheckedUWindowFramedWindow ServerTarget TargetPosQuarterSecondGravtDist ANewTarget Package0TargetDestroyed Package1TargetSurvived Package2 URTarget Package3 YouGotBonus Package4 EPickType TargetTimeTargetPassedTimeCurrentTarget PrevTarget TheKillerAttractEffecttHeld HasAHeldCTLoc TargetDiedpPnPawnspList GrossFragstScore FragChoose FragFraction RotateProj AN_NewSelf AN_NewOtherAN_Dest AN_SurvSelf AN_SurvOther AttractRad AttractStr StayTime FragBonus tPickModeAnnounceLabeltClosetCancelToggler TimeRoamed TheTarget ClosestDist FoundOneServerResetMeLastResetStateAcc RandPoint LastTarget TargetedTimetTime TheGhost HasAVictim UsePrevLocServerDestroyedZEQFYY l9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }.;9 }.;9 }.;9 }.;=9 }9 }.;9 }9 }F9 }F9 }F9 }=======F9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }.;9 }9 }9 }___________RùR9 }9 }I+\9 } q Rw4w4Rw4w4w49 }9 }9 } q q q 9 }مم9 }م9 }9 }9 }م9 } 9 }9 }9 }j@j@j@9 }ممممم9 }م9 }مlمممl9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }.;9 }.;9 }.;9 }.;=9 }9 }.;9 }9 }F9 }F9 }F9 }=======F9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }9 }.;9 }9 }9 }___________RùR9 }9 }I+\9 } q Rw4w4Rw4w4w49 }9 }9 } q q q 9 }aa9 }a9 }9 }9 }a9 } 9 }9 }9 }j@j@j@9 }aaaaa9 }a9 }alaaal ."7$pA1$D4$;8<:;@9fD\}$ ::$2aj@___________5I9 }9 }9 } kE,)GT:^R3@kan0C ::$# q _Rw4w4Rw4w4w49 }9 }9 }.;9 }.;9 }9 }I+\9 }=9 }9 } p$Dn,O P>$A?$A)jSUE@ h/FL\'  Z$? b /@(5_ 1 ;`@)[D3#7j`=.;.;' N"Y[\eL*iI$C- "*Y&'c hSV W9Zg7@F@@O%$NpJ@C@I@B@\OP@6@>?f8@, 4 XK[ t] iQ pLT-= b ad MVy2Jj: ~r"I|.Xڅr"I|.Xڅr"I|.Xڅr"I|.Xڅr"I|.Xڅr"I|.Xڈ_4r"Ir"Ir"Ir"Ir"Itr"Itr"Itr"Itr"I|.Xچ|.Xچ|.Xڅr"I|.Xچ|.Xچ|.Xڅr"I|.Xچ|.Xچ|.Xڅr"I|.Xچ|.Xچ|.Xڅr"I|.Xچ|.Xچ|.Xڅr"I_4_4_4_4_4_4_4_4_4r"I_4r"I_4r"I_4_4|.Xچ|.Xڅr"Itttr"Ittttttttr"Ittttttttr"Ittttttttr"Itttttt7XÐ7XÙВ`Y|.Xڅ`Y|.Xڅ`Y|.Xڅ`Y|.Xڅ`Y|.Xڅ`Y|.Xڈ_4`Y`Y`Y`Y`Yt`Yt`Yt`Yt`Y|.Xچ|.Xچ|.Xڅ`Y|.Xچ|.Xچ|.Xڅ`Y|.Xچ|.Xچ|.Xڅ`Y|.Xچ|.Xچ|.Xڅ`Y|.Xچ|.Xچ|.Xڅ`Y_4_4_4_4_4_4_4_4_4`Y_4`Y_4`Y_4_4|.Xچ|.Xڅ`Yttt`Ytttttttt`Ytttttttt`Ytttttttt`Ytttttt7XÐ7XÙВ\t|.Xڅ\t|.Xڅ\t|.Xڅ\t|.Xڅ\t|.Xڅ\t|.Xڈ_4\t\t\t\t\tt\tt\tt\tt\t|.Xچ|.Xچ|.Xڅ\t|.Xچ|.Xچ|.Xڅ\t|.Xچ|.Xچ|.Xڅ\t|.Xچ|.Xچ|.Xڅ\t|.Xچ|.Xچ|.Xڅ\t_4_4_4_4_4_4_4_4_4\t_4\t_4\t_4_4|.Xچ|.Xڅ\tttt\ttttttttt\ttttttttt\ttttttttt\ttttttt7XÐ7XÙВq|.Xڅq|.Xڅq|.Xڅq|.Xڅq|.Xڅq|.Xڈ_4qqqqqtqtqtqtq|.Xچ|.Xچ|.Xڅq|.Xچ|.Xچ|.Xڅq|.Xچ|.Xچ|.Xڅq|.Xچ|.Xچ|.Xڅq|.Xچ|.Xچ|.Xڅq_4_4_4_4_4_4_4_4_4q_4q_4q_4_4|.Xچ|.Xڅqtttqttttttttqttttttttqttttttttqtttttt7XÐ7XÙВZ!dž|.XڅZ!dž|.XڅZ!dž|.XڅZ!dž|.XڅZ!dž|.XڅZ!dž|.Xڈ_4Z!DžZ!DžZ!DžZ!DžZ!DŽtZ!DŽtZ!DŽtZ!DŽtZ!Ǘ|.Xچ|.Xچ|.XڅZ!dž|.Xچ|.Xچ|.XڅZ!dž|.Xچ|.Xچ|.XڅZ!dž|.Xچ|.Xچ|.XڅZ!dž|.Xچ|.Xچ|.XڅZ!Lj_4_4_4_4_4_4_4_4_4Z!Lj_4Z!Lj_4Z!Lj_4_4|.Xچ|.XڅZ!DŽtttZ!DŽttttttttZ!DŽttttttttZ!DŽttttttttZ!DŽtttttt7XÐ7XÙВw|.Xڅw|.Xڅw|.Xڅw|.Xڅw|.Xڅw|.Xڈ_4wwwwwtwtwtwtw|.Xچ|.Xچ|.Xڅw|.Xچ|.Xچ|.Xڅw|.Xچ|.Xچ|.Xڅw|.Xچ|.Xچ|.Xڅw|.Xچ|.Xچ|.Xڅw_4_4_4_4_4_4_4_4_4w_4w_4w_4_4|.Xچ|.Xڅwtttwttttttttwttttttttwttttttttwtttttt7XÐ7XÙВ6u|.Xڅ6u|.Xڅ6u|.Xڅ6u|.Xڅ6u|.Xڅ6u|.Xڈ_46u6u6u6u6ut6ut6ut6ut6u|.Xچ|.Xچ|.Xڅ6u|.Xچ|.Xچ|.Xڅ6u|.Xچ|.Xچ|.Xڅ6u|.Xچ|.Xچ|.Xڅ6u|.Xچ|.Xچ|.Xڅ6u_4_4_4_4_4_4_4_4_46u_46u_46u_4_4|.Xچ|.Xڅ6uttt6utttttttt6utttttttt6utttttttt6utttttt7XÐ7XÙВS|.XڅS|.XڅS|.XڅS|.XڅS|.XڅS|.Xڈ_4SSSSStStStStS|.Xچ|.Xچ|.XڅS|.Xچ|.Xچ|.XڅS|.Xچ|.Xچ|.XڅS|.Xچ|.Xچ|.XڅS|.Xچ|.Xچ|.XڅS_4_4_4_4_4_4_4_4_4S_4S_4S_4_4|.Xچ|.XڅStttSttttttttSttttttttSttttttttStttttt7XÐ7XÙВb|.Xڅb|.Xڅb|.Xڅb|.Xڅb|.Xڅb|.Xڈ_4bbbbbtbtbtbtb|.Xچ|.Xچ|.Xڅb|.Xچ|.Xچ|.Xڅb|.Xچ|.Xچ|.Xڅb|.Xچ|.Xچ|.Xڅb|.Xچ|.Xچ|.Xڅb_4_4_4_4_4_4_4_4_4b_4b_4b_4_4|.Xچ|.Xڅbtttbttttttttbttttttttbttttttttbtttttt7XÐ7XÙВw/ݑ|.Xڅw/ݑ|.Xڅw/ݑ|.Xڅw/ݑ|.Xڅw/ݑ|.Xڅw/ݑ|.Xڈ_4w/ݑw/ݑw/ݑw/ݑw/ݑtw/ݑtw/ݑtw/ݑtw/ݑ|.Xچ|.Xچ|.Xڅw/ݑ|.Xچ|.Xچ|.Xڅw/ݑ|.Xچ|.Xچ|.Xڅw/ݑ|.Xچ|.Xچ|.Xڅw/ݑ|.Xچ|.Xچ|.Xڅw/ݑ_4_4_4_4_4_4_4_4_4w/ݑ_4w/ݑ_4w/ݑ_4_4|.Xچ|.Xڅw/ݑtttw/ݑttttttttw/ݑttttttttw/ݑttttttttw/ݑtttttt7XÐ7XÙВTT|.XڅTT|.XڅTT|.XڅTT|.XڅTT|.XڅTT|.Xڈ_4TTTTTTTTTTtTTtTTtTTtTT|.Xچ|.Xچ|.XڅTT|.Xچ|.Xچ|.XڅTT|.Xچ|.Xچ|.XڅTT|.Xچ|.Xچ|.XڅTT|.Xچ|.Xچ|.XڅTT_4_4_4_4_4_4_4_4_4TT_4TT_4TT_4_4|.Xچ|.XڅTTtttTTttttttttTTttttttttTTttttttttTTtttttt7XÐ7XÙВYY |.XڅYY |.XڅYY |.XڅYY |.XڅYY |.XڅYY |.Xڈ_4YY YY YY YY YY tYY tYY tYY tYY |.Xچ|.Xچ|.XڅYY |.Xچ|.Xچ|.XڅYY |.Xچ|.Xچ|.XڅYY |.Xچ|.Xچ|.XڅYY |.Xچ|.Xچ|.XڅYY _4_4_4_4_4_4_4_4_4YY _4YY _4YY _4_4|.Xچ|.XڅYY tttYY ttttttttYY ttttttttYY ttttttttYY tttttt7XÐ7XÙВA=gDB:H2 l0PU62u}oMcjq]#"Poltergeist Mutator Configuration]z!"6~'"-v!!w!*{!a/!( w*.! W!!6 @:::$  /a0 --- ,?10::$wD*D   ,  ;::$3r   ::$%` ?&P%.T ?&T`?,d$?D?D&%%Z,s?%X ,s?&q<%r r*X,pWarning: Snake is a dork! FragWeightedRandom has failed to pick a different target! S  lG4)T -ca?=:$,d-a---a--a ba =w@ $B$?G$?'$@F@ 'w *\  \G$$??RR?>G WqHl $q 4Close button hit -8<- -F)- -B"- -C%- -I*- -P&-:J_:, $o>:& $o^:, $o $ 6L 7L JL  AJ    Go "X/a0 ffa10-ofw*5=g5w*55gM M a MVr*Warning: Ghost couldn't be spawned, switching to Random mode!$ Hi[2,tw*a$r* b$-i/a0 p collected the Target Survival BonusZr #,W-P  g ( #,-I  o (10?AJ/a0 Ip was an excellent target... #,H-F  e (10r::$k-i'r( Bn/a7 zDw2 W[2]2nW 2   -Qa+P 10 X|3xj -L(?;E/a7 D-%--N N??N_-L'10X-L _=+ a/!(. ` U::$ w @p h::$  *=?=?,a ! ~!!=w*/h/w*//h^----b  {5RQ-.- w.* a    $$ =,$$$$ I*eQa/!(iw(*R(a/!$-Y'i(((-Ya   r*WARNING: Couldn't Spawn PoltergeistHeld! This will explain the following Accessed none...-'[6]7-Q-8 Ca  aw* * drO) pr.*r.*$w.r.* r*q!# .% a   1?,da 1V,r,>,, e.K~`^.-..-..%-e'd.. LmMrH*m S&S{HH is the new Target q%You are now the Target! ,Survival Bonus! ,Target Survived! ,Target Destroyed!   w ELJigw*T%a/!.J,d,,p is the Target!/a0 f#r #% -C  k (e #&e-B  j (10 ^aA@Dt  c+3+=3J r*%nw*g%'n(::$9+9@@93*:*9r*(::-ed-c'3wa/!.dL#HC/a0 'B'Aw*' V ' 1  +A::$' 16  +10;+;> w*=,;;-O-O-O" vsFn)0E /a7 zDE-,w 0E  S6070s S  0        ,-8 a+P  10 kU+Ip rKDU/a0 >edr>Kr>*>a10w*+UK @JFMb%  NK^A2#իff?^^ %T]52SOͷ;aGնmo lV]Poltergeist ConfigR]! Sets up the Poltergeist Mutatoru//============================================================================= // PoltergeistUMenuModMenuItem. //============================================================================= class PoltergeistUMenuModMenuItem expands UMenuModMenuItem; function Execute() { MenuItem.Owner.Root.CreateWindow(class'PoltergeistConfigWindow', 100,100,220,300); } @//============================================================================= // PoltergeistConfigWindow. //============================================================================= class PoltergeistConfigWindow expands UWindowFramedWindow; - -sy//============================================================================= // PoltergeistClientWindow. //============================================================================= class PoltergeistClientWindow expands UWindowDialogClientWindow; // checkbox; //var UWindowHSliderControl slider; var UWindowCheckBox RotateProj, AN_NewSelf, AN_NewOther, AN_Dest, AN_SurvSelf, AN_SurvOther; var UWindowEditControl AttractRad, AttractStr, StayTime, FragBonus; //SetNumericFloat, SetNumericOnly, SetValue var UWindowComboControl tPickMode; var UWindowLabelControl AnnounceLabel; var UWindowSmallButton tClose; var UWindowSmallCloseButton tCancel; // called after object has been created... // this is where you add all the buttons and crap function Created() { Super.Created(); // announcement, label AnnounceLabel = UWindowLabelControl(CreateControl(class'UWindowLabelControl', 10,5,110,10)); AnnounceLabel.SetText("Voice Announcements"); // announcements - checkboxes AN_NewSelf = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,18,110,10)); AN_NewSelf.SetText("Self Targeted"); AN_Newself.SetHelpText("Plays a sound when you are targeted"); /// AN_NewSelf.bChecked = class'Poltergeist.PoltergeistMut'.default.bAnnounceNewSelf; AN_NewOther = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,31,110,10)); AN_NewOther.SetText("Other Targeted"); AN_NewOther.SetHelpText("Plays a sound when others are targeted"); /// AN_NewOther.bChecked = class'Poltergeist.PoltergeistMut'.default.bAnnounceNewOther; AN_Dest = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,44,110,10)); AN_Dest.SetText("Target Destroyed"); AN_Dest.SetHelpText("Plays a sound when target is killed"); /// AN_Dest.bChecked = class'Poltergeist.PoltergeistMut'.default.bAnnounceDestroyed; AN_SurvSelf = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,57,110,10)); AN_SurvSelf.SetText("You Survived"); AN_SurvSelf.SetHelpText("Plays a sound when you get the survival bonus"); /// AN_SurvSelf.bChecked = class'Poltergeist.PoltergeistMut'.default.bAnnounceSurvivedSelf; AN_SurvOther = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,70,110,10)); AN_SurvOther.SetText("Other Survived"); AN_SurvOther.SetHelpText("Plays a sound when others get the survival bonus"); /// AN_SurvOther.bChecked = class'Poltergeist.PoltergeistMut'.default.bAnnounceSurvivedOther; tPickMode = UWindowComboControl( CreateControl(class'UWindowComboControl', 10,115,200,10) ); tPickMode.SetText("Pick Targets"); tPickMode.SetHelpText("Determines how the next target is chosen"); /// tPickMode.SetFont(F_Normal); tPickMode.SetEditable( False ); tPickMode.EditBoxWidth = 115; tPickMode.AddItem("Totally Random", "0"); tPickMode.AddItem("Killer Becomes", "1"); tPickMode.AddItem("Poltergeist", "2"); tPickMode.AddItem("Weighted Random","3"); if (class'Poltergeist.PoltergeistMut'.default.TargetPickType == PT_FragWeightedRandom) tPickMode.SetValue("Weighted Random", "3"); else if (class'Poltergeist.PoltergeistMut'.default.TargetPickType == PT_KillerBecomesTarget) tPickMode.SetValue("Killer Becomes", "1"); else if (class'Poltergeist.PoltergeistMut'.default.TargetPickType == PT_FlyingPoltergeist) tPickMode.SetValue("Poltergeist", "2"); else tPickMode.SetValue("Totally Random", "0"); RotateProj = UWindowCheckBox(CreateControl(class'UWindowCheckBox', 10,165,100,10)); RotateProj.SetText("Rotate Projectiles"); RotateProj.bChecked = class'Poltergeist.PoltergeistMut'.default.bRotateProjectiles; // Projectile Gravitation AttractRad = UWindowEditControl( CreateControl(class'UWindowEditControl', 10,180,150,10) ); AttractRad.SetText("Attract Radius"); AttractRad.SetHelpText("Max distance of projectile attraction"); /// AttractRad.SetValue(string(class'Poltergeist.PoltergeistMut'.default.AttractRadius)); AttractRad.EditBoxWidth = 50; AttractRad.SetMaxLength(8); AttractRad.SetNumericOnly(True); AttractRad.SetNumericFloat(True); AttractRad.Register(self); AttractStr = UWindowEditControl( CreateControl(class'UWindowEditControl', 10,195,150,10) ); AttractStr.SetText("Attract Strength"); AttractStr.SetHelpText("How hard the projectiles are pulled"); /// AttractStr.SetValue(string(class'Poltergeist.PoltergeistMut'.default.AttractStrength)); AttractStr.EditBoxWidth = 50; AttractStr.SetMaxLength(8); AttractStr.SetNumericOnly(True); AttractStr.SetNumericFloat(True); AttractStr.Register(self); StayTime = UWindowEditControl( CreateControl(class'UWindowEditControl', 10,210,150,10) ); StayTime.SetText("StayTarget Time"); StayTime.SetHelpText("How long each player stays as the target (seconds)"); /// StayTime.SetValue(string(class'Poltergeist.PoltergeistMut'.default.TargetStayTime)); StayTime.EditBoxWidth = 50; StayTime.SetMaxLength(8); StayTime.SetNumericOnly(True); StayTime.SetNumericFloat(True); StayTime.Register(self); FragBonus = UWindowEditControl( CreateControl(class'UWindowEditControl', 10,225,150,10) ); FragBonus.SetText("Survival Bonus"); FragBonus.SetHelpText("Frags awarded for not dying while target"); /// FragBonus.SetValue(string(class'Poltergeist.PoltergeistMut'.default.SurvivalBonus)); FragBonus.EditBoxWidth = 50; FragBonus.Align = TA_Left; FragBonus.SetMaxLength(8); FragBonus.SetNumericOnly(True); FragBonus.SetNumericFloat(True); FragBonus.Register(self); tClose = UWindowSmallButton(CreateWindow(class'UWindowSmallButton', 80 , 250, 48, 16)); tClose.SetText("Save"); tClose.NotifyWindow = Self; tCancel = UWindowSmallCloseButton(CreateWindow(class'UWindowSmallCloseButton', 10, 250, 48, 16)); tCancel.SetText("Cancel"); } //when a control changes, Notify is called with the changed control // and the message sent. function Notify(UWindowDialogControl C, byte E) { local int i; //log ("Poltergeist Config Notify"); switch(E) { case DE_Click: // the message sent by the controls switch(C) { case tClose: // someone hit the save button... // set all of the variables now log("Close button hit"); //checkboxes class'Poltergeist.PoltergeistMut'.default.bRotateProjectiles = RotateProj.bChecked; class'Poltergeist.PoltergeistMut'.default.bAnnounceDestroyed = AN_Dest.bChecked; class'Poltergeist.PoltergeistMut'.default.bAnnounceNewOther = AN_NewOther.bChecked; class'Poltergeist.PoltergeistMut'.default.bAnnounceNewSelf = AN_NewSelf.bChecked; class'Poltergeist.PoltergeistMut'.default.bAnnounceSurvivedOther = AN_SurvOther.bChecked; class'Poltergeist.PoltergeistMut'.default.bAnnounceSurvivedSelf = AN_SurvSelf.bChecked; // dropdown combo box i=int(tPickMode.GetValue2()); if (i==3) class'Poltergeist.PoltergeistMut'.default.TargetPickType = PT_FragWeightedRandom; else if (i==1) class'Poltergeist.PoltergeistMut'.default.TargetPickType = PT_KillerBecomesTarget; else if (i==2) class'Poltergeist.PoltergeistMut'.default.TargetPickType = PT_FlyingPoltergeist; else class'Poltergeist.PoltergeistMut'.default.TargetPickType = PT_TotalRandom; // textboxes class'Poltergeist.PoltergeistMut'.default.AttractRadius = float(AttractRad.getValue()); class'Poltergeist.PoltergeistMut'.default.AttractStrength = float(AttractStr.getValue()); class'Poltergeist.PoltergeistMut'.default.TargetStayTime = float(StayTime.getValue()); class'Poltergeist.PoltergeistMut'.default.SurvivalBonus = int(FragBonus.getValue()); // write it to the ini class'Poltergeist.PoltergeistMut'.static.StaticSaveConfig(); return; } } } <FPo R.  A@B ARVoice Announcements%.  AAB A%Self Targeted%+Plays a sound when you are targeted%- -C".  AAB A"Other Targeted".Plays a sound when others are targeted"- -B).  A0BB A)Target Destroyed)+Plays a sound when target is killed)- -F&.  AdBB A&You Survived&5Plays a sound when you get the survival bonus&- -P*.  ABB A*Other Survived*8Plays a sound when others get the survival bonus*- -I.  ABHC APick Targets0Determines how the next target is chosenm%h(BTotally Random0Killer Becomes1Poltergeist2Weighted Random3: :$Weighted Random3,: :$Killer Becomes1e: :$Poltergeist2Totally Random0<.  A%CB A<Rotate Projectiles<- -8.  A4CC AAttract Radius-Max distance of projectile attractionU 6HB,''.  ACCC AAttract Strength+How hard the projectiles are pulledU 7HB,'' .  ARCC A StayTarget Time :How long each player stays as the target (seconds) U J HB , ' '  .  AaCC A Survival Bonus 0Frags awarded for not dying while target S A HB $ , ' ' 4. BzC@BA4 Save4Z.  AzC@BAZCancel R_#16"}::$q!%u! pK8~//============================================================================= // PoltergeistMut. // // Gives each player the Held item each time they respawn // // Destroys the one they have when they are killed, because all possessions // are apparently detached from their owners when they die. If it's not // destroyed they will continue to pile up in the level. // // Notifies all Held items of who is the target // // Affects projectiles // handles buttloads of stuff... // need to know: // how to know if game is over // how to determine who is spectator // how to force a player to respawn //============================================================================= class PoltergeistMut expands Mutator; #exec AUDIO IMPORT FILE="Sounds\ANewTarget.WAV" NAME="ANewTarget" GROUP="" #exec AUDIO IMPORT FILE="Sounds\TargetDestroyed.WAV" NAME="TargetDestroyed" GROUP="" #exec AUDIO IMPORT FILE="Sounds\TargetSurvived.WAV" NAME="TargetSurvived" GROUP="" #exec AUDIO IMPORT FILE="Sounds\URTarget.WAV" NAME="URTarget" GROUP="" #exec AUDIO IMPORT FILE="Sounds\YouGotBonus.WAV" NAME="YouGotBonus" GROUP="" var config int SurvivalBonus; // Number of frags to award for surviving as target var config float TargetStayTime; // amount of time a player stays as the target // note: these two must be replicated to the client Held objects!!! var config float AttractRadius; // max distance of projectile attraction var config float AttractStrength; // Amount of attraction // voice announcements upon events. // this can get messy and annoying if they are always going on... // 95% of traffic is Other becoming target and Other being destroyed... var config bool bAnnounceDestroyed; //False var config bool bAnnounceNewOther; //False var config bool bAnnounceNewSelf; //True var config bool bAnnounceSurvivedOther; //True var config bool bAnnounceSurvivedSelf; //True var config bool bRotateProjectiles; // rotates all projectiles when attracted // mainly to make rockets and redeemer warheads look better. // this is more realism at the cost of execution speed... default is False (turned off) var config enum EPickType { PT_TotalRandom, PT_KillerBecomesTarget, PT_FlyingPoltergeist, PT_FragWeightedRandom } TargetPickType; var float TargetTime, TargetPassedTime; var pawn CurrentTarget, PrevTarget, TheKiller; var PoltergeistEffect AttractEffect; var float QuarterSecond; //ticks the attract function every .25 seconds // this still creates realistic attraction, but doesn't eat up so much performance. var bool Toggler; // flipflops to tick bots and set their enemy every half second var PoltergeistGhost TheGhost; // must get rid of the Held Inventory item manually for some reason // otherwise they will pile up in the level all over the place function ScoreKill(Pawn Killer, Pawn Other) { local PoltergeistHeld tHeld; if ( Other == PrevTarget ) TheKiller = Killer; // hold onto who killed the target foreach AllActors(class 'PoltergeistHeld', tHeld) { If ( (tHeld.Owner == Other) || (tHeld.Owner == None) ) { //log ("PoltergeistHeld Destroyed upon Owner's Death " $tHeld); tHeld.Destroy(); } } // called by GameInfo.ScoreKill() if ( NextMutator != None ) NextMutator.ScoreKill(Killer, Other); } // Every time a player respawns, this is called. // This gives every new player one of these items. function ModifyPlayer(Pawn Other) { local Inventory Inv; local bool HasAHeld; // I'll ask im, but I don't think eel be very keen, // e's already got one, you see? local PoltergeistHeld tHeld; if ( Other.IsA('PlayerPawn') ) {// don't spawn these for bots, they are already on the server // make sure this player ends up with a PoltergeistHeld... for (Inv = Other.Inventory; Inv != None; Inv = Inv.Inventory) { if ( Inv.IsA('PoltergeistHeld') ) { HasAHeld = True; break; } } if ( !HasAHeld ) { // give it to them, vars will be replicated normally //log("Spawning PoltergeistHeld for player " $Other); tHeld = Spawn(class 'PoltergeistHeld', Other,,Other.Location ); if ( tHeld == None ) log("WARNING: Couldn't Spawn PoltergeistHeld! This will explain the following Accessed none..."); tHeld.bReplicateInstigator = True; tHeld.Instigator = Other; tHeld.AttractRadius = AttractRadius; tHeld.AttractStrength = AttractStrength; tHeld.bRotateProjectiles = bRotateProjectiles; Other.AddInventory( tHeld ); tHeld.SetLocation(Other.Location); tHeld.SetOwner(Other); } } // called by GameInfo.RestartPlayer() if ( NextMutator != None ) NextMutator.ModifyPlayer(Other); } ///////////////////////////////////////////////////////////////////////////// ///stuff that is done on a regular basis, not really mutator stuff... // function PostBeginPlay() { enable('Tick'); // testing Config Window stuff. /* log("Survival Bonus " $survivalbonus); log("TargetStayTime " $TargetStayTime); log("AttractRadius " $AttractRadius); log("AttractStrength " $AttractStrength); log("bAnnounceDestroyed " $bAnnounceDestroyed); log("bAnnounceNewOther " $bAnnounceNewOther); log("bAnnounceNewSelf " $bAnnounceNewSelf); log("bAnnounceNewOther " $bAnnounceNewOther); log("bAnnounceSurvivedOther " $bAnnounceSurvivedOther); log("bAnnounceSurvivedSelf " $bAnnounceSurvivedSelf); log("bRotateProjectiles " $bRotateProjectiles); log("TargetPickType " $TargetPickType); */ } function Tick(float DeltaTime) { local PoltergeistHeld pH; TargetTime += DeltaTime; if ( (TargetTime >= TargetStayTime) || (CurrentTarget == None) || (CurrentTarget.Health <= 0) ) ////////////////////////////THERE IS NO ACTIVE TARGET////////////////////////////////////// {// if timer expires, target dies, or target leaves the game if ( CurrentTarget != None ) // turn off the effects { if ( CurrentTarget.Health <= 0 ) { SubtractTarget(True); } else { SubtractTarget(False); } } // ensure that a new target is picked, if it's anything other than // poltergeist mode, we need to act on a timer, otherwise we just sit // and wait for the poltergeist to intercept someone if ( TargetPickType != PT_FlyingPoltergeist ) { //log("Picktarget Timer is active " $TargetPassedTime); TargetPassedTime += DeltaTime; if ( TargetPassedTime > 3.0 ) { // pause for 3 seconds between targets, // allows clients to clear stuff out TargetPassedTime = 0.0; TargetTime = 0.0; PickNewTarget(); //log ("New Target is " $CurrentTarget); } else { CurrentTarget = None; } } else // otherwise hang out and check to see if the poltergeist has caught anyone { CurrentTarget = None; TargetPassedTime = 0.0; // keep this timer from going off // this holds tick in the "between targets" limbo state if (TheGhost == None) { // log("Poltergeist not found, spawning one the old fashioned way"); SpawnAGhostNow(False); } else { if ( TheGhost.HasAVictim ) { // this is true if the Ghost has caught someone PrevTarget = TheGhost.Victim; CurrentTarget = PrevTarget; theGhost.ServerDestroyed = True; // will Clients know this and destroy it too? TargetTime = 0.0; PickNewTarget(); } } } } ///////////////////////////THERE IS AN ACTIVE TARGET/////////////////////////////////////////////////// else //otherwise there is a valid target { if (CurrentTarget.isa('PlayerPawn')) PlayerPawn(CurrentTarget).ClientFlash(-0.05,vect(0,0,200)); // notify all client objects of changes // server should SET the values of these vars // predict general location of target for next frame foreach AllActors (class 'PoltergeistHeld', pH) { pH.ServerTarget = CurrentTarget; if ( CurrentTarget != None ) { pH.TargetVel = CurrentTarget.Velocity; pH.TargetPos = CurrentTarget.Location + (CurrentTarget.Velocity * DeltaTime); if ( CurrentTarget.Physics == Phys_Falling ) {pH.TargetPos += CurrentTarget.region.zone.ZoneGravity * DeltaTime;} } } // this is a server, there will be no player Held item affecting projectiles // so we need to force this to happen on the server now QuarterSecond += DeltaTime; if ( (QuarterSecond > 0.25) && (CurrentTarget != None) ) { CurrentTarget.Visibility = 255; // makes them more visible to bots AttractProjectiles(QuarterSecond); QuarterSecond = 0; // reset the counter Toggler = !Toggler; if (Toggler) SetBotEnemies(); } } ////////////////////////////////// } function SpawnAGhostNow(bool UsePrevLoc) { local NavigationPoint N; local int NumPoints, RandPoint; local vector SpawnLoc; local PoltergeistGhost tG; foreach AllActors(class'PoltergeistGhost', tG) { tG.Destroy(); //log("SnakeWarning: Extra Ghost detected and destroyed!"); } // if there was no given location, pick a navpoint if ( !UsePrevLoc ) {// grabs a random navpoint and places it there. for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint ) { NumPoints++;} // count the number of points in this level RandPoint = Rand(NumPoints); // pick a random number for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint ) { NumPoints--; // reiterate back through to the randomly picked one if ( Numpoints <= RandPoint ) break; } SpawnLoc = N.Location; } else { SpawnLoc = PrevTarget.Location; } TheGhost = Spawn(class'PoltergeistGhost',,,SpawnLoc); if ( TheGhost == None ) { log("Warning: Ghost couldn't be spawned, switching to Random mode!"); TargetPickType = PT_TotalRandom; } } // twice per second, set all bots' enemy to the current target // makes bots go after the target more aggressively // also check for end of game by fraglimit or timelimit function SetBotEnemies() { local pawn P; if ( level.game.bGameEnded ) disable('Tick'); // turn off all the crap if the game has ended for (P=level.Pawnlist; P != None; P=P.NextPawn) { if ( (P.Isa('Bot')) && (CurrentTarget != None) ) bot(P).SetEnemy(CurrentTarget); } } // conceptually copied from the Held item function AttractProjectiles(float QuarterSecond) { local vector Grav; local float tDist; local Projectile tP; local vector CTLoc; // CurrentTargetLocation //Log("Attracting Projectiles " $TimeRoamed); CTLoc = CurrentTarget.Location; foreach VisibleActors(class'Projectile', tP, 1000, CTLoc) { if (CurrentTarget != tp.Instigator )//don't attract owner's projectiles { Grav = Normal(CTLoc - tP.Location); tDist = (AttractRadius - vSize(Grav)) * AttractStrength; Grav *= QuarterSecond * tP.Speed * tDist; tP.Velocity += Grav; // set terminal velocity... if ( VSize(tp.Velocity) > tp.Speed ) tP.Velocity = Normal(tP.Velocity) * tP.Speed; if ( bRotateProjectiles ) tp.SetRotation(rotator(tp.Velocity)); } } } // this is called when the target is killed or has survived past the allotted time. function SubtractTarget(bool TargetDied) {local PlayerPawn pP; if ( AttractEffect != None ) AttractEffect.Destroy(); if ( PrevTarget == None ) return; // no previous, nothing to say yet.. // reset the ex-targets stuff that was changed If ( PrevTarget.Health > PrevTarget.Default.Health ) PrevTarget.Health = PrevTarget.Default.Health; PrevTarget.AmbientGlow = PrevTarget.Default.AmbientGlow; PrevTarget.LightType = LT_None; PrevTarget.Visibility = PrevTarget.Default.Visibility; // if the player has an inviso, it will take care of itself in its timer function. if ( !TargetDied ) // if this is true, the target succeeded at surviving { foreach AllActors(class 'PlayerPawn', pP) {// need to send a message to all players, this is the big flashy one // this is the console/chat message BroadcastMessage(PrevTarget.GetHumanName()$" collected the Target Survival Bonus"); If ( PrevTarget == pP ) // if this is the target guy, send "you get the frag bonus..." { pP.ReceiveLocalizedMessage(class'PoltergeistMessagePlus', 2, PrevTarget.PlayerReplicationInfo); if ( bAnnounceSurvivedSelf ) pP.ClientPlaySound(sound'YouGotBonus',,false); } else //otherwise it will send "soandso is the new target" {// see Info.LocalMessage.LocalMessagePlus.PoltergeistMessage for the code pP.ReceiveLocalizedMessage(class'PoltergeistMessagePlus', 3, PrevTarget.PlayerReplicationInfo); if ( bAnnounceSurvivedOther ) pP.ClientPlaySound(sound'TargetSurvived',,false); } } // give the player the fragbonus PrevTarget.PlayerReplicationInfo.Score += SurvivalBonus; } else { // otherwise, send "TargetDestroyed" to all players. foreach AllActors(class 'PlayerPawn', pP) {// need to send a message to all players, this is the big flashy one // this is the console/chat message BroadcastMessage(PrevTarget.GetHumanName()$" was an excellent target..."); pP.ReceiveLocalizedMessage(class'PoltergeistMessagePlus', 4, PrevTarget.PlayerReplicationInfo); if ( bAnnounceDestroyed ) pP.ClientPlaySound(sound'TargetDestroyed',,false); } } // if Poltergeist mode is enabled, spawn the flying entity if ( TargetPickType == PT_FlyingPoltergeist ) { if (TargetDied) SpawnAGhostNow(True); else SpawnAGhostNow(False); // don't spawn on top of survivor... } } function SetOwnerLighting(actor Owner) { local PoltergeistHeld pH; if ( Owner.bIsPawn && Pawn(Owner).bIsPlayer && (Pawn(Owner).PlayerReplicationInfo.HasFlag != None) ) return; // Spawn the ShellFX and turn on lighting AttractEffect = Spawn(class 'PoltergeistEffect', CurrentTarget,,CurrentTarget.Location, CurrentTarget.Rotation); AttractEffect.Mesh = CurrentTarget.Mesh; AttractEffect.DrawScale = CurrentTarget.DrawScale; AttractEffect.Fatness = CurrentTarget.Fatness; /* foreach AllActors (class 'PoltergeistHeld', pH) { pH.AttractEffect = AttractEffect; }*/ // ripped from UDamage powerup, changed purple to blue... Owner.AmbientGlow = 254; Owner.LightEffect=LE_NonIncidence; Owner.LightBrightness=255; Owner.LightHue=160; Owner.LightRadius=16; Owner.LightSaturation=0; Owner.LightType=LT_Flicker; } /* This is the big mofo of a function that picks players... I know this could be divided up into several functions. And your point is? This is all in one function because I don't feel like passing arrays or copying the same code over and over... */ Function PickNewTarget() { // pick a player from the list... local int i, k, nPawns; local Pawn tP, pList[64]; local float GrossFrags, tScore; // used for picking weighted by frags local pawn FragChoose[116]; // me too local float FragFraction[64]; //log("PickNewTarget at " $Level.Timeseconds); // this mode skips all the crap if ( TargetPickType == PT_FlyingPoltergeist ) { DoFXStuff(); return; } ///////////////////////////////////////////////////////////////////// // create a list of all players & bots // level pawnlist may contain something other than players & bots (?) foreach AllActors(class 'Pawn', tP) {// if it's an active player... if ( tP.bIsPlayer && !tP.PlayerReplicationInfo.bIsSpectator && !tP.PlayerReplicationInfo.bWaitingPlayer ) {// ensure that these are not spectators... pList[nPawns] = tP; nPawns++; if ( nPawns > 63 ) break; } } //log(nPawns$" Pawns Added"); //// list is constructed // When we are done picking, PrevTarget will be set to whomever is gonna be the target, // no matter what mode is played. // tP, PrevTarget, and CurrentTarget are all used in funky ways... // by the end of DoFXStuff, Prevtarget and CurrentTarget will both point // to the actual current target. ///////////////////////////////////////////////////////////////////////// if ( TargetPickType == PT_KillerBecomesTarget) { if ( TheKiller != None ) // account for first case... or if player leaves { PrevTarget = TheKiller; } else { PrevTarget = pList[Rand(nPawns)]; } DoFXStuff(); return; // if player suicides in this mode, too bad... heh heh heh } ///////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////// tP = PrevTarget; if ( nPawns < 2 ) { DoFXStuff(); return; // can't pick different if there's only one } if ( TargetPickType == PT_TotalRandom ) { while (PrevTarget == tP) // keep going till we have a different one... { PrevTarget = pList[Rand(nPawns)]; } //log("Picked a Target: " $PrevTarget); DoFXStuff(); return; } ///////////////////////////////////////////////////////////////////////// // this is the tricky one, we need to create a weighted pick // Create an array of 100 and fill it based on the proportion of // frags each player has... you'll see. if ( TargetPickType == PT_FragWeightedRandom ) { for (i=0; i FragFraction[i] ) FragFraction[i] = int(FragFraction[i])-1; // too lazy to look and see if int truncates and if min is an int function... } // now put the names into a hat (the FragChoose array) k=0; // why not? // put one into the hat for each player's frag percentage points for (i=0; i115 ) break; for(FragFraction[i]=FragFraction[i]; FragFraction[i]>=0; FragFraction[i] -=1) { FragChoose[k] = pList[i]; k++; // k tracks the FragChoose array index if ( k>115 ) break; } } i=0; // now our hat is stuffed so we just pick a number until we get somthing we like. while ( (PrevTarget == tP) || (PrevTarget == None) )// keep going till we have a different one... { PrevTarget = FragChoose[Rand(k)]; k++; if ( i > 30 ) { PrevTarget = tP; // 30 is enough times to make sure... don't want recursion log("Warning: Snake is a dork! FragWeightedRandom has failed to pick a different target! " $k); break; } } } //////////////////////////////////////////////////////////////////////////// DoFXStuff(); } function DoFXStuff() { local PlayerPawn pP; // Turn Off FX for old player, and set FX for new player. CurrentTarget = PrevTarget; if ( CurrentTarget != None ) { // make sure someone who is dead doesn't become the target. // if they are dead, force them to respawn. if ( PrevTarget.Health <= 0 && PrevTarget.IsA('PlayerPawn') ) PlayerPawn(PrevTarget).ServerReStartPlayer(); // give them a buttload extra health PrevTarget.Health += 100; if ( PrevTarget.Health > 200 ) PrevTarget.Health = 200; // this is the console/chat message BroadcastMessage(CurrentTarget.GetHumanName()$" is the Target!"); SetOwnerLighting(CurrentTarget); foreach AllActors(class 'PlayerPawn', pP) {// need to send a message to all players, this is the big flashy one If ( CurrentTarget == pP ) // if this is the target guy, send "you are targeted" { pP.ReceiveLocalizedMessage(class'PoltergeistMessagePlus', 0, CurrentTarget.PlayerReplicationInfo); if ( bAnnounceNewSelf ) pP.ClientPlaySound(sound'URTarget',,false); } else //otherwise it will send "soandso is the new target" {// see Info.LocalMessage.LocalMessagePlus.PoltergeistMessage for the code pP.ReceiveLocalizedMessage(class'PoltergeistMessagePlus', 1, CurrentTarget.PlayerReplicationInfo); if ( bAnnounceNewOther ) pP.ClientPlaySound(sound'ANewTarget',,false); } } } } /* doesn't work... // ripped from LMS code, manually makes the player respawn so that dead // players cannot remain dead to aviod becoming the target, or remain // dead while they are the target in order to collect the bonus. function MakePlayerRespawn() { local NavigationPoint startSpot; local bool foundStart; startSpot = level.game.FindPlayerStart(None, PrevTarget.PlayerReplicationInfo.Team); if( startSpot == None ) return; foundStart = PrevTarget.SetLocation(startSpot.Location); if( foundStart ) { startSpot.PlayTeleportEffect(PrevTarget, true); PrevTarget.SetRotation(startSpot.Rotation); PrevTarget.ViewRotation = PrevTarget.Rotation; PrevTarget.Acceleration = vect(0,0,0); PrevTarget.Velocity = vect(0,0,0); PrevTarget.Health = PrevTarget.Default.Health; PrevTarget.ClientSetRotation( startSpot.Rotation ); PrevTarget.bHidden = false; PrevTarget.SoundDampening = PrevTarget.Default.SoundDampening; } } */ \//============================================================================= // PoltergeistMessagePlus. //============================================================================= class PoltergeistMessagePlus expands LocalMessagePlus; static function float GetOffset(int Switch, float YL, float ClipY ) { return (Default.YPos/768.0) * ClipY; // - YL; } static function int GetFontSize( int Switch ) { return 0; } // switch is 1 if the player sent is the target, // otherwise it is 0 // ignores PRI_2, only uses PRI_1 static function string GetString( optional int Switch, optional PlayerReplicationInfo RelatedPRI_1, optional PlayerReplicationInfo RelatedPRI_2, optional Object OptionalObject ) { if (RelatedPRI_1 == None) return ""; switch (Switch) { case 1: if (RelatedPRI_1.PlayerName != "") return RelatedPRI_1.PlayerName@" is the new Target"; case 0: return "You are now the Target!"; case 2: return "Survival Bonus!"; case 3: return "Target Survived!"; case 4: return "Target Destroyed!"; } return ""; } +qyH//============================================================================= // PoltergeistHeld. // the item that is held by players, this keeps it relevant to them so the // clients work. //============================================================================= class PoltergeistHeld expands Inventory; var pawn ServerTarget; // the player who is the current target var vector TargetPos; // position/movement data on the targeted player var vector TargetVel; var float AttractRadius, AttractStrength; // replicated from mutator var bool bRotateProjectiles; // replicated from mutator var float QuarterSecond; // used as a timer //var PoltergeistEffect AttractEffect; replication {// the server needs to be sure these are sent to the proper clients! reliable if ( Role == Role_Authority ) ServerTarget, TargetPos, TargetVel, AttractRadius, AttractStrength, bRotateProjectiles; } state ImAServer{} //does nothing...like it should :) // when nobody is the target Auto state isIdle { simulated function BeginState() { // if it's any kind of server, this object has already served its purpose If ( Role == Role_Authority ) GotoState('ImAServer'); // sends it to nop land //log("*****Client BeginState Idle " $Self); //log(" At " $Level.TimeSeconds); Enable('Tick'); // turn off lighting FX and shell // if ( AttractEffect != None ) AttractEffect.Destroy(); } simulated function Tick(float DeltaTime) { // log("*****Client Idle Tick " $Self); if ( ServerTarget != None ) GotoState('isActive'); } } // when any player is the target state isActive { simulated function BeginState() { //log("*****Client BeginState Active " $Self); //log(" At " $Level.TimeSeconds); //log ("My owner is " $Owner); //PlayerPawn(owner).viewtarget = ServerTarget; // testing relevance... Enable('Tick'); } simulated function Tick(float DeltaTime) { // only perform tick if this object's owner also owns a HUD // This way only one per HUD = one per machine. // If the owner is not a playerpawn (it's a bot) OR // If the owner's hud cannot be referenced OR // If the Hud's owner is different than my owner OR // If the Owner has no PRI (not sure who has who's PRI, assuming it's only the local player) if ( PlayerPawn(Owner) == None || PlayerPawn(Owner).MyHud == None || PlayerPawn(Owner).MyHud.Owner != Owner || PlayerPawn(Owner).GameReplicationInfo == None ) return; //log("*****Client Active Tick " $Self); // ensure we are in the right state if ( ServerTarget == None ) { GotoState('isIdle'); return; } if ( Pawn(Owner).Health <= 0 ) {// when player is killed, server will destroy this! // log("Dead Client Owner Destroyed " $Self); // Destroy(); return; } // try to keep it near the target... /*log("******** begin locationdump ********"); log("Owner's Location " $Owner.Location); log("My Location " $Location); log("ServerTargetLocation " $ServerTarget.Location); log("TargetPos " $TargetPos);*/ SetLocation(ServerTarget.Location); Velocity = ServerTarget.Velocity; if ( vsize(Location - TargetPos) > 100 ) {// only correct if too far off //log("Correcting Position of Target..." $vsize(Location - TargetPos)); SetLocation(TargetPos); Velocity = TargetVel; } QuarterSecond += DeltaTime; if ( QuarterSecond > 0.25 ) { AttractProjectiles(QuarterSecond); QuarterSecond = 0; // reset the counter } } simulated function AttractProjectiles(float QuarterSecond) { local vector Grav; local float tDist; local Projectile tP; //Log("Client Attracting Projectiles " $Self); //log(" At " $Level.TimeSeconds); // attracts projectiles based on their normal top speed. // Combined with setting a low terminal velocity, this will make them // more likely to come into a decaying orbit... foreach VisibleActors(class'Projectile', tP, 1000, Location) { if (ServerTarget != tp.Instigator )//don't attract Target's projectiles { Grav = Normal(Location - tP.Location); tDist = (AttractRadius - vSize(Grav)) * AttractStrength; //ensure these numbers are replicated! Grav *= QuarterSecond * tP.Speed * tDist; tP.Velocity += Grav; // set terminal velocity... if ( VSize(tp.Velocity) > tp.Speed ) tP.Velocity = Normal(tP.Velocity) * tP.Speed; // rotate projectiles for more realism if ( bRotateProjectiles ) tp.SetRotation(rotator(tp.Velocity)); } } } } X< uBB\CC fY`/w*q! v {`//============================================================================= // PoltergeistGhost. //============================================================================= class PoltergeistGhost expands Projectile; var bool HasAVictim; var Pawn Victim; var bool LastResetState, ServerResetMe, ServerDestroyed; //last is used by client to track changes // when server is changed, it is replicated to clients who can then figure it out // when ServerDestroy is set, all copies (client and server) will destroy themselves var vector NewLocation; // Server sends this when ghost is teleported var float TimeRoamed, TargetedTime; var Pawn TheTarget, LastTarget, ServerTarget; //LastTarget is used by clients to notice changes replication // TheTarget should be transferred from the server to the client. { // if clients are allowed to choose targets, it could be a problem when they differ reliable if ( Role == Role_Authority ) ServerTarget, NewLocation, ServerResetMe, ServerDestroyed; } function Touch( actor Other ) // make sure all clients are notified of this { // if it touches a live player... if( Other.bIsPawn && Pawn(Other).bIsPlayer && (Pawn(Other).Health > 0) ) { // log("Ghost touched " $Other); HasAVictim = True; Victim = Pawn(Other); } } simulated function Destroyed() { super.Destroyed(); } simulated function Tick(float DeltaTime) { local vector Acc; local float tTime, i; //if ( role 10000 ) TargetedTime = 10000; } LastTarget = TheTarget; if ( TheTarget != None ) // accelerate toward target { // Make it accelerate at a larger amount than its top speed // this will make it home in a lot better by overcorrecting // the velocity, forming a quickly decaying orbit. Acc = Normal(TheTarget.Location - Location); // gives a direction Velocity += Acc * DeltaTime * TargetedTime; // multiplies it by speed if ( VSize(Velocity) > 1000 ) Velocity = Normal(Velocity) * 1000; // limit speed } else { // otherwise come to a stop if ( vsize(velocity) > 0.0 ) Velocity *= 1.0 - ( 0.25 * DeltaTime); } } // The Timer function searches for a player or bot for the Target to fly after simulated function Timer() // pick real targets on the server! { local Pawn A, aC; local bool FoundOne; local float ClosestDist, Dist; //log ("Timer Fired"); FoundOne = False; // locate any visible players and target the closest one ClosestDist = 3000; foreach VisibleActors(class'Pawn', A, 2000, Location) { if ( A.bIsPlayer && (A.Health > 0) && !A.PlayerReplicationInfo.bIsSpectator && !A.PlayerReplicationInfo.bWaitingPlayer) // only go after live players { Dist = vSize(a.location - location); if (Dist < ClosestDist) { ClosestDist = Dist; aC = A; // hold on to the reference for this actor FoundOne = True; } } } if ( FoundOne ) { //log("Ghost Found Target " $aC); TheTarget = aC; TimeRoamed = 0; if ( TheTarget.IsA('Bot') ) { Bot(TheTarget).FearThisSpot(TheTarget); //warn bots if they are targeted } // have the server notify the client of authoritative target if ( (Role == Role_Authority) && (TheTarget != LastTarget) ) { ServerTarget = TheTarget; } } else { //log("Ghost didn't find target"); if ( Role < Role_Authority ) return; // don't let client do this. TheTarget = None; TimeRoamed += 0.5; if ( TimeRoamed >= 15 ) // nobody in sight for 15 seconds straight... booooring! { Spawn(class 'UTTeleportEffect'); //FX at point of exit ResetTheTargetLocation(); // place it at a navpoint } } } // note that this is very inefficient code to accomplish what it does, // but since this only happens at most once every 15 seconds, it is not // a noticable drain on the game. function ResetTheTargetLocation() {// grabs a random navpoint and places it there. local NavigationPoint N; local int NumPoints, RandPoint; for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint ) { NumPoints++;} // count the number of points in this level RandPoint = Rand(NumPoints); // pick a random number for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint ) { NumPoints--; // reiterate back through to the randomly picked one if ( Numpoints <= RandPoint ) break; } ServerResetMe = !ServerResetMe; // toggle this var, which when replicated will notify the clients NewLocation = N.Location; } // when it hits a wall, it will bounce off with some loss of velocity // note that this will only work properly if bBounce is set to True in Movement! simulated function HitWall (vector HitNormal, actor Wall) { // Log("Roaming HitWall"); Velocity -= 1.8 * (Velocity dot HitNormal) * HitNormal; } simulated function PostBeginPlay() { // Log("Roaming BeginPlay"); // log ("At " $Level.TimeSeconds); Enable('Tick'); Enable('Timer'); SetTimer(0.5,True); // loop through timer } A&G u! Ai u!  2nRIFF&WAVEfmt "VDdata  )0  -08GA@GLK9 /.+>OOFBKab`zz\bhQ3&?21EV][Wm~mja?50 (#Bg /\ty.m({ /Wla8zq*a"3@ZB/h6 etQ:W3&9}S1YmcME}y,/jpB>33E%2EOM>EQ;Ti2 p<# |)$P{>m{^|bF>R X=gQU>CIdDD`Vg$:=l k=3jziڴulDPr=Mپi ԧ^0ރX:.=bpD *B  VzC t  V 9!hu}Z @%} # + X o yc ] ^Xo` f9ib % H"^ \^Fk/B '2x#1(Y)7Rs$U) H. !x*Cm ;m0#:i + N Q F KZ [2ghhS"&#J s *_!. !e"X- a g &\ ? F:g"fv#&I# z-A|_jE`$0 ! =[[_ /   $ Y@ia R Q54JW58Nn $a\ ^ \{p;'0x `k9)c"#R!C8 6{2!#:  ` @ Q& $ 239[ 2E  `h f _Ze>ND,2 c "isX Yz FR; c-9 ] Q &m i Kt# !Li B;84 M(o>e4kv9\(67 ?RCAXPs N<rU)jH{Q$F3.3NTH|u cYX #A 6B@ L{` i9hl5 %<"/+ r Bn;G:; | bi ; hwq7gQM^G X\hdSrUGyIqjw > i4gE!le$tGs&_V#>(DmT[fP=$ P#o\i2_m;^a^zO>Ao[vl^sox_S49"2aefs.-mZ82(DaAK%Ft4;0r{u@% @{2}u5bK7@crj}{\%XawH#28s= eHD29+IeZ_W]=hMd`0}w]8Ks& &B9?:Rw8K+6NJ`$<7* OuS@E2N>>mf v SOaj 4 fUMv R 7 >M} 9Kd`ySr7q\8}%n%1K1:4Ep*T_pBAg_7sfGthv(IA,ge~ 'Xb*I;07<5?ZL_JG}  + b#aU8 A&+38<6.$U <܇x{tB `"+S01 0-'\rڭ֬G }"# * %?qfޛ6& iY hfx#K6,=pg rA:BT. W OeHxO3[ # P /LI1DFfG8] F'?1H""'&()*)(#'@!3 4+YڡS$)+E-%0/7*  lL".&*+S)F#m~K9фҼ}cUh %&%!%{/-Qްk`^4TnA kh@qO ?I^he R  LCx4)@CM}+PZ0Fӷԙ,+_eRb2HAI ;c ^ S v y }Qgm$ !o)0Z5;A=?ACrB974/l( ֶŻK ˦l#<&7cOYgDpn7h?^rReA ( @݆׏Әi%ʉC %@JxY>`v_mWE1 ڔXĦgud^*6M]2jobo@hY>E)N A٤Ǿ\XxѥײKuE(;wJTVRF6" ݱ̯/| y?0k=FzKID7#a Jݤ.̢B9w` +*6-*D%l߆Ґǎĵs?mr&)/)$ky|a;Y mr. =FNSSENG=14W*$n-;nQ՞=^![ -~4=MM4MQTM?9-c'ͫ.AU ,:>1E>6$(_֬EνпIvZJ֧ 0)AZNX`]YI8i%-NG\=W#- 3140-$0 m0Tol*9O [l%.674." 7ئŸeyKǫњܹJe { ? /Aݦ ۊ+RԈ<2t] ;6$3&+K/00U1.;7v4i12N3s#` Ѣ<Va֓Q%3?jYEWQTVX0PWFj->UsNЛJ7.ެ+/D*ImNJmCh59# /.#L s0BO\^^WK}<)SN1¶;ɽڅ7!,4585".$ (;;L`ɿ&,#%3= AA<5*1 ]'W8Wk#p}'&?[yt^OT $i*0g1365d3j2.0.x0.#-r-+.uAUǮLٳݑ E 3F1>L=^XTSaSFJ=% ELJfgN$:8LyORYLRD6$ ]%?趮q.>HsQPZP{I;) ).#&KK  %y-t6-85-$n'ӈǠ¥_Ҫ }8)2w8p;1(ƵNغӶظԒW<YV3 .T%/{0߶f_ 2.4EPG$;=ME JMGB\lswF}xh*G*%XjY<3[jRsvv oYx8̄^,Z(>4wQ>gv{?|yn(ZGA&tVw|ۊ C$L:LfX^1\#VJZ8]#\> iR0 }1b@VL4UZWUM>,ځdԧ0^/6GӛQh/(+&,)#S _QUX73}Oi1*L`M ah +X8<@EI^NOPC([Qk˰LUֈ> /OfRmZlqxAu&iO0.|(ɏ~Ë#I,K_f'ijij]/Cg!8 һGY8I/4K`RoOvlx\xt+hPQ 4| =HȚ$b$8iHT\M] YHQBt,Yϵ§ƿۃ A 0E=1I{ROWVQ7F\5! {+6`$㢍ZU?& *(y%&kMПƠ ϭCٗxF \6<{mt %_1:?mBEI J6(Ɉȳڪ߸i0L|`\d*k*q7q_jXB7<<1ԋ͐S}~n05ڝ,-HV]bd_NP0gȻ^\Iۓ*Db~#BJ`#t]G|@r_^E^( жL@E:Shlle{VB,)TÙw'˟hݹr1^G+[msyNz#ucrH`(șՃψK׷&/5;7X-*! zӘ ϕw7~c.7z>AB>5 %m}Z3+iDWcjgb0[N;!Ɉ|*4\ԡ-6~JTTXCUG5, - ɽs]ɂV4ބs3#+8+"\Qx1j}y8 *6!AJ+T.Z8ZSUOJKE- %1ͦ\M68P _cWaWH/*P~Yr/V,N >&>Um\2 ~➭V`ٰZ̛3OXPD6Y' 7F˰דI7TUhksxwwgiT=% 8{7]Q*6HRiw(|Ix'jdR3,kx4ӫK8q.@S6L]vi b|T@:O%FQ՟lU57)x@.PLU\SNF|5 KԶٶЯKO)(9H$Y0it0zztv7jXF/ v-ߠR"Աl[1^yjC5 rڕ !C@dZ 2p˷_Ka?3_=(0Z sxo`P@7&q޲e0^ >b$%/B4&1" }WdמҘPΦ #V6CKH)>^3'& bűs-᧱ƌّS**02/%`?2G ǜ$ߔFs  & "=!&w%+i.5:?B8FKUzR8cYOb uܽ«yz7U/fp|pxZ9~V3tݭa\ e0F etiH$@(ۙwڵI76We]aD("{RDH:&D_hY 9o$!pc%ɛȱsϝhr*AOK?E5k#,v_Ƭm{lCxd Oj 0!#?&g^j\|׷њS3C,r Ir!'$/;kKY-c dc;\?RJH:2!..^(aJh_h81^̛#u 4Rxy`PW!Kچh Πl 77D>#% Ch׶"Y(c43]!ۢc(̐،h p0ELF/pj%<|ζb~ߪ0-/g% / CSSs=o#284 3P7A9%2$OOfPȶ҂ k!+-5:-%8 7 .%!'t+, *&&())%4 scKY|B[(_3;>60* KgB}%5=?j<5+"53֙mŝԫT0 4!'(l(v&D}jGP)|#hۯ=ڏR^F! X q `eћ{78Җ[\k 6 ={JC)AWU"+1/.,S04N64#0,,`(U :% Ni&.2J9@TC>K4%(xB@ԆqSUe'7?s@>;5$(><5+ O"Eh$.6 :9C98Z2'3 T:Н:gP|`J iCt2<чϑv `ڔ>  )?*R 1*2ۙ Φ4Pըz Q3 wZ(n@U8 w G p s z T Wn} [l!~#a%Q(C(%l# l;M $V(r3u9:< <[6,!{ )o4 {*6T?lCCBU?[:0#5R?ܛޡ2$!$>$f!(2 Qoa3ӿԧڭE5 j!Cp mE̛ ķį)ٿ S  G%8dJe% i :6 v +Su,\<Գ2%؇ڱ7O n & (e&"|tlե'߀r #%E(R&|  q]/^Ԩؾ O*@%-9UACB@~N֒˦+Uk$)('} GW1χ+ū~3V?^"L'+-- (T>69Ϲ_Р(x3 J3e '2ld= 4 pUTM + U   ! t]Xߨ ;rte B*0-,S.-f'R?gչђԇxy;(-,&"iϬǍŜf/ 1s+64<*; 4)8# :BP=g L-"'e(t)y)&l@FqIؼ?}%$&1$! u:g ^COС)DK9M۽: ՜3X ܈M l U\'./,,/|*&"i*{[ Ku'<069C;zB>2N%Z61yAc /`!*/-$s* 8_Ⱥi|gG^ nA$#~ Oтƽ\`a( -}S "!P^<)A M$X!w- o i69:Ɂ,p_ zD}1dX<>fO clܞ  K {G&+3%1&]Jѩ\%4[E-&.;DKSNMC3zquOh !@RWQF<;>' ![.),LT-֜N4BWM ~#(&mn7ث ܪzzzl(/7M92&{[b Nޑϋ83\:4 C\anmک\yne/w  P~Y5to nSF2,׀گ <!d+c03753.%E#y/2B."$jʖJ2XlVu3v-S500)@L2 "e>GSH_$6Ki 4Nd^8]þ6<;QI~- \?2 ^'I ʮ! o;OMN3 PM# fދɉ*&y'p~ 7JS!!S |6’ך߽Wd gTv;(zMdz̳#:C^e$ %[8;.Y~ %/]ĦdJd'p<P_d[I39UwKeVOqtq5  .Ba?s!vK*t?p7?!A1k2}ɶt1'W 7;Ҳ)MA4ƶm~JJ w'e-S^O.D p TMA֨e\* |.ۉԫ*$# ,-׹m yղѧiBRCҺڭdۻQ-HG~]iSo5  lu!=Sr21  )w@QNuNF. 1 5#CrAv@4.0Go{c4f +0SGyI-/㨡eI D*- PN'P5{0 /$].-)o'JA>$4Y b rߌN~oJ ͵v=^S5Hj؜)Eݸ>ܷp  $ Z 6 KSKǴ _!,2070Q*V;% ' O v$s3H^mq}M~&{&c%x'6Bs8|5{H`rf(ZI EzY0A=.OI(s)E.-Tתk4tE^Y4mdH| 6Y^bw H[cW*4yU>,0lB˵n5 ۍ%)ճW!&#B&xwB  h|-eEWIgAl o e}  F !q cP$/m8/'8.agf]Qyc1 <"a 0^Kg6ƧxɚΡ$- R*oF<>lcx3@e^b]3bO&^*'T³Қ."<<5+qY<',׮˷2"n؟FN{ FZa jNEįښ$AQMݩ5[ΉƤMף =_Agr  H g#SP %*U.142\,#Ai(O6J>t?E*J}MI..3п$NvnnKI-w6!ZJ= fc:cQBRƼ]{ >G=x9:Fg'6Սݖ(4VrG]"`%4.1%S3@@(jթGLֹ#[2Q1&" J8{e In*(' @Ԑި!5@\%D\ɵȲڜ<= D#c)BPE?YQ , Nc [ 'X+, --9,!^'G:>59}QuycF(Y3`# v;&2#+ѫڄ=M) " F\$?iC3H ##" 3<'.c5O(? n "'w@Li0t- = L'|!:uCO>x X k[sJ\N| ]U^B!"!J( W, ) (t 9  v Uu2FBjA`qCI_xS$  'pN=9dP(x  w A'1DY2l#"z{5V   Uh4OD u H?kzVn%fBI{k ' 6 nM+%.z] U3h /B  "wci0    .G= GI Y L2y0m' OD K"/#k&.4o6MT.Y+"|Dfi{h.8wn2S;SIaHo]I!F\v_c P/| K& i V vF P K#, hH Jo ?  @%9HG ~ Fi + )VqyHZA jp7tVqe$aalSunjwM5\) & 5(Vv 2> <,I wknU# !EU:B@x)%(0+&m ]+rmR(-O%^j mv &{ .(,#vu;&YHZV? l 7+;QHI{67J  n ;; r8Ta4~vVp2 @Dbi x X &J'|B't/@`Y]#x%#$"4  Q  )P Z, #),=+O-l$6$i22ook(g[ * }3) n~ k n~)"%JgJ  B9  jx=  Qߐ U#(@iRz Rmb^=l ou;Z}e\ [Q2NXK$ Q1"R(߫ݺ߯M  &q MF6h q!&*+*}"2_n A;28O0)  .%*?8r1) O +m _p$aQ ((u( X&l=G+# Rg-u=z# !hoܭq$"^/Y 2?; T{jtZd0S W'i{)`xAu_o  YA ST%<&$A- r"5%RxN+a3#KebAŢ ^% U$  <Ghw;%' da]x7  H}EqTd?H>*6"74`K1)Oo-+l7H.0)D:i # _5*|,]QP f] <z} 0_ {# t ;V+)L-t3Z iT`:0/hUAvŮێ/J,L#)C7 hdh w*, q A ;!KHn?\$P d5(KOD%2H~LJxd5me# F LH4-$k-*Ex &8] U Ih)!"$&("j! ':./K-Af 6 [/.p) 74m{E@' (^! -Y8 &" %0$[O 5(uD(E ~F^ ^TxF)U^xC` )  }jBiuH+ < l M"%')f)"J7(+,%6 Fy4n%.-|0ޞbYfn,  X= WRn OI.Q y?L9clTqS!NZUl/ A9ptR$y9p= ZJ9CR,|tA(a`K[5 )g~sW F (1,3,c*) n# '%O0 LsJAj{%*r(e[ܐy x X7] Es F  !*3M/;Jb%{k G(9)D+Gy.JiFqG&&73}rO07:!Ij)j f Df1Sx "l!8lfH{ h(I ! "@<bK$!E./  q{e p , [ 5?OW}ptxN" MO ~^ Lylb%b0S zfT0- Q _S&zB]u(.qU+2K<;E5V"zz7 KFCmI1 I$ v R Gx [U7h {fINqo .M:Y6&a\?ecAaqEJwLnP@orl(]-fuXh&.EcLV3Y= QE9, Y'^?w7!7QXxjoY#hMn+  eY73RN$HX*& B p D f R1   O &Ebd!`f 1^uZ(hLn5~6`zyC:_c c9m=!'6QYiJ[nEKoN,?>g?h :-B 4mW#D42B(qM,jxE^g*j  2#Y%'S^4;  dh2 3W:a! jv7j gi>"mZM='\6 AWb X|~ m]$;,N/(H em> S/ {BQ@_DLZ5H6D/%4r :=t] dwi {cz r,P_'VkF $NzAlL bw )0   #ydM\X M+1K_eE{ vBbjc P/6w-(Y'w!s4!1"* ] $LBM*Fi0 6:43!J "W",OJ.oh'H- )eۜM S  1[{q@tD -) 6<]7 ?Uh 3yKJ5s QS;HsE 8Uyb c .-OM Z[ g ] u RB@X^ BD-VW+(138n;a?9G5NlLH@]"g!MQU_]N/+Aj!EUR5 * !:; IC2*ê{n o >=fx*+" P,73"ͣηٱ_3 u-o)hCr_l.?BX6wo+U5.@2 qB~varH%ur oh.Fj @VS'FG+2Pi& .+r @=Z:'2f9f* o$'-0|m7]+EFJ* t\'+%A>FMFM:( CNjz wMȴã{ $%%As%.97&t }a@Es^,@~BE9b-# t<re$+Y0"+.> z5̸#'41Z vaۅ ef8ޜ f!x(:fաbB.e}"e2<* ^gx! `    5H }0=gDEGG>>+^V )3IB EFG.%Ż`95S[UvH6$,!F(hO)"]bV (';PC@?3ͦI2 /<>+ bYe;NESN@ &d 4fN$.B6.]%!1n oc4A?2ZAќ0 i[!NHLچrrm=W>!/[%ٞن_ :F9F:eibE;5f`fN={G?i v(6zDwLwI1@26#ߴ-KnKFLL2X8f08.xI үvQ+V2:2&/7o܅c(2>1#) I6/!37J0#;E" ] #&X%4 !mӝ[U~$ؾRz `އ$74/YHME}7hx}pYdHX17 3NR#'- 47k60) #7)GQMN?6 *C2Rzc0dqU;${ lH6['S~ xMqwM1:x:k/ 'Ů+, Z[މ(.*+" f}+,!vt sf;]V#iU ]"8& &%NS,gcr{=rhۯ0}}u^6WCb/9ha N_ rq%0.=6|:q9k4&(Mr(5FJKKt*Ae$$@I\^2Q;#d ZiZ yQ "& ͬتR3A "1}7z3%nk " DםlՆؠAM RC~Q  g T x+!a r vw6nL[~yki]kR$5$AܒgV% Q#kb $< jS7$/98?2)) $<>NHyHL<6 kӶ:NeSH.4"f P \ b zY%(#$"1Ĵ|*<>b&0/?$^wM м Q PrsADc 2Xt7 t/%/7  HHSKl C3(`p#X::jf,Xن^Cu)-6ll{ P/5ksHd/%  n *{37!<9 %'+M 10$56a$8OaFwE~ݠGޥF\rj\f$YlD{9"gVv lC=E{X\lL. o.@PSYUUG2Ae$GXTS WL ,2DKBn/R !(/1*Nޮ")H,21uNΠƎjo#F0-j R'. H3BH5 b   IM {  |BvC3 v [  Zb.~-9? T>-~K;[Q& B/A x>\ X'La$/b% t E'2&'bש5%08JD%IV+\6:z4$3sT0IEMKG+^*9PV_^H&\k@ f$*+#5  !VrјX,3s+r'!,: b fJ8V5jkYpz"t#`uF!>I7ZH*@/N>H6Ae!  3"]>TpNK L tr/3߱`XuǷ\NY"  [O O<,w. .0'"N  "7CdF:q%S%WU"M,0.%~@v( ]QH$%40ZFY:"^ {!wܢT.d I9C 5CtMjW:Tc&VKc%(a qLd  5m [Я+M ߞWr5cq;%wvAq @ńĀ]DR%a :2yUXw" >3Ӆ"',%q `ִY $um?7 6/ , A)yel1L6twP  G> ) j/vR WdJv NHvYq_hug@u 9r[ (-[` )</$ pmјco2Ro R-o/1X8uCY6(f/+$*(+&_*070A7G;5-I `Fۭ) -֛Bďf#J. +;:f=} $<z.-~/ Jhf8+ #& p,( 0}[ :Q; o vLm0D  |: u[l"}%K *bCS O/R <4 *)3~(Cwu ;+7\#H|  ~2B jxaM  $05 Ry%(2 #8~)r"Wi1B&D pN  NP ` ۽4 !r&yQUXl7j4,gJ ; *>h 3p#y~,=cH!W _1; ].ug 9,uYL)-  g* 9k=A$"9{AP-Eg 3/Qڒ[%bc;P;?C  juR>'۫ \JWܾ X5וt j= !6DHIXp@kѩ r-N0Hj''? Oh w[ F%qg.d\1 ?)!0 O a Er}  k{O|tQB/|Kkd;,N+~+s. .(<G"0 1^"z ns NCtU p,$?~+ )Ho(u.\Eި'E혿]() mm(`m f O2Uq p :0  ><)z]k9N bQm! %@~ZC]G7mI >#?G|2|M iAB%+֭Uu O#&]%0n /j !M\3_TCg j !p 64 ^*^ޱbZ܏  Q T2݊ cQ )0ed#bR)|' ^3 B'0 $p =ƣ%5:p-/ L8 !{$p&0ˈ#}d/߾`RF $Bk:W*2\j 62tm "f ;+-q"DQ (, E  B 2;`& KFeo,  Q2w\ {[U **+iyr :i&  ~ !H*N h C w OxE#i[E_R;p'tqފ%.Mm_ z- oaf!50. aQ  > [ 5_G # KoX!9 $. a*- Va8 - an5: 0:RrLrUWaQ'M/ 5a6?Bh9' CT=   D6\&H@8e!  fMF E `o=%s q<Yn' ?/pA aN<TGdHHnc{ JtU7xqI+^ `c!}f6 n i d`  s {U1." Oo^H8 NPo8l>_^RLJ lJ ! @Q+xf0 BS{~s P  Q:c>J_; Ii \fQBWeL0X^ m)lL}#z  gd-OR0?N$ dE VqG 5 w>  )[eH] f ,s ~ UP\ %6 ]hO<ieB |B[: H"391R r^p}v  z AC\$f'  } _m 6E - -+Yo e 8LEN VL: -n R5 \\}5/0L CG#o {  ~ abW5625bXu2#"WGXH00J @ g&kN6%.?jW;>E x GV'33#iF#+ Mn 9nRb31q4 [ vLu` T/#cr H c PE  FgX,qt 7  9N` ZR@uKhwfV^N_x$Z[)+1.p# ~DddizRe3%Zt c@mSz` ] (N q |B  X DZE6 '9 VYE >1dQ# 8Xf(@Jt/b 0`v34) <-Na3 mh>IE'  5i tUr5%KzZ8 Bs AcWAS ` V9Ba %( K c ,7H+c8_ 38lMxi f%$ iv 2j{/6!cxsif~ k$+ [&WD" W * }u{N Y:  CSD 0D4 }B&I  XN>p [{YG@r*q;8\o n  z'.`E# {{LV"R JpNW/vh h(,LP %?,i+ !X( a~+h- ]^Af0Q0' (wVrJ [pPܐ's6~.:NYt*"QweAM_D  \! W$T PC'VVtZg )zV\,$R TP 4m<22oU' GKP( T c 2sW Z (F&^Z1}#_|P uDW K /8<Q'p%1.%72j &s / t l+2"W#{c  bu - (+D#('01 &^"R8. Z 3I)!H' 8B5839 z00)S*b8.306pPS$x;?(&03"A%oBO=fxC-^;7""e;?Bm/T:)%XY rD{6R{ [T WGN)@?}l# q `!6!j"$&W*.-d&*(,z)n#x   2u.#1 '"*}ItO 7c':UsW  UUE|;b8NVz~{3[|C4d?T|Qjk#W^8Pٲv0v<  {!!h&)*i*.23, !*qlR<23 ߱xd^ y N* `{דՂF؆w\!$&'E%#"w i'},D):U M   DNO J5lڑ֢ز:oؼ\_r52zo0DrRTݒٺתպӛP$+-irsn % S f [S&"+"*5+5i;;4P3>C=.&#$vunbԶw[ "= 5/0(&*Z32)  "ےёKֶF;iY>$`1c8@DELBA@<6+ -+ξ^qA ұOv+G4(0+52%11.V)"[>obSּīŌdWj;؟hR %  y۞4ۄ՝ly-։~ҧ؈yc |Qj!*078G9A6"+1'l,9/' y&%Qʲܼö ų/0_ )4 5"W Q .\43c&ԕݼ{\ %/4>-?A@FD@:7+D+[Z7 q1ʆCC'j"1'7]5C536v5@,#I $sޕMǿ9]ƆV̾z!O ^ d  rM2-hV:=˝V ޮvL" >#*,2hCBLG?vAFE?M1824`..(((x#YtpԹdʷԾD׊ۭ c$C"$*n.2-)!t|}߷ρ&5ˊKOH ]#2e<76 6VF2E 5O-t+"Bs |kz'KјׇO .2$'0 6iDD=7/ )(j*pǫ(ήHɫ׷B//8 \m VTW1ٻ9ۥykN5 !.T?JIADZMMF>&?@SB>d79_@-,յ~n|$&$+7BZE?KMTL]@(3nfA#%"v"/FyMJDJMKG@q;V0~*^"k"c@*QΥ`3<ЅMR}->9GWQ7X\XUUnL;4>+Mjߏ~ڶ+xA3!(&C; d}rv"%!G*!ܑ*,o ;t'X778ANTPMZTxWZW_]2VTV[VLlH|C71!{VSU!,Tx &1v/7F.VZ[ZLdn[qyZI+::15 *UU^ +D'0 %z@MsF@CMOCT0/.X5H5g&g!U8Rŕ :&"{%?-SJac[~Z`Efi^J =;6)@(i86pόQ z7$j)&~=8v ]*F5 ]&* $6EGFLU[]dXZebAd_qXWUS:tӔl#ԩ!-B B*H;FV`kz|8dL9NމET@%'&)0:d>>2AAJF~F8(<:ʑ 欅ػŲЯG j-o;JX?f^cbg^f]KUL;F;:)?Ⱥްֳǣďʋ!8˭  D".."S!-׭!ޱݺ}t%#X%5|HbN{EHBOD[W@J@$C[JFW5`b\kŠ7v<hH*;Vks|TjYD) JާQR4)? NLFKSRO?Ec&T7I&!+AMRSW_g]dXPAMqE4A+}‡›D$∹ӷ{ݐUM .Q56 #(R  pRIWRX̠ ۳ ,,5d6; EJHc@CN!PIDU@3(ŊAQB&ס%D\{Tl:U s&8NA\i({mz[j}S6JN~†pTZ-$ǀ#kz !J1Z;UKO[B2C ߹\]0tæz"y 3CxRE^1i9v{'iO0%k'W׺O2a+59?JSYXQI,=)ivKϪүLҰԵ8@("2?N ^QiYorwltojbYD+1'>+:"1Ϙal8i ד*&]C_Ot{sjuS2z0k\x֯7ZZ]hE+&&-jq(mO;ƥ}շ2(W}e'07IeWXdq|0r^[G/:? O8ة+ͥ!<#q/7*Ov {IޯqE̦ӽJ? !%->{O]fdo@qhS8 ] ڱ'/ϵ#T)P5ANZ5c if\P?0 $2#ΐ/ȻWڌr,~<@dH $H`q|_pW{>G+ 2 ˪'kM۽"U2A HQ\et vT)iy׳['59:6u-+%u,Z]چ[]ᜥ9W fC15:k\t}viO`4*"׊͐Uڵ0Pkx |lXD.z1}ǰ>:V' %4BT_ohr}yX@6>ϳמa33Ν\"$)5BA?MDMoWYOw=$T /}wtTT:5ʿη׽xv4s&4@eHmLJE1HLN!KFCGEC>32O"r{uAONIQ% gؗ5/ Y|]{fJ0f+7V 2JbsRq[m<_DJp7I'hvq9hRDT;2?_O^eel|yhkPJ"/2^i\~H"-52:S: > C>F@0իDA( ɦ^?Ԧ9,3 | "cf p.7:l7R53:7FNPWNJ<>2N'ghhgv`3ϒA㘻@Πh/Aovp g1\zx-pdB[-MY9)(x R1Ҭ>x ت3 F&6>;(7(B#~l sسz#% w<9TZ^k:qp~rpnlcAU@L"ۣ._ӆ=@3*&/3*l(z'b)8--(#>oki Ъ!Jǻۧ[zcx\ITzV"N+0d,<#v!'S+&$. Wlge-'q󢳤I;Sqz?<a;QFTQcXSj^gpw$~}s`$YI5Z-em]ȝڣZf;ʓ[m%0! [ 8Ax +}=KzLI,OO6A-)/43+: $xn%ߞ뢐Wj׈#"7߿R _ '~* !@4#O')>+$#y43hQp!Tb)ܐ۝u݄ |_ڟZ:ځ!O]&3>EbBH>D(_n)vzjVA;'(F3帾זgM_ײ4'Y17:7"32164/) H)DF# Y ?3G'13) a>wqljͯyD4$+_782}27'AOT$VePB2$'$Vf$<ۢUTHdbn3p7D;S<AE'DGT^;fe[.WN3?2(C7c\ gFsp+*z޻hf~6OAb.a]a^,`paa ]VHS[XS(H=]/+X(TJn&njtaɌ; v@O އd=` #_1:nCE@i7.)x(K'$ ؓ!khSџ2EcQ.5;/EBQ\a^]HUwG'9C2* & IyՔ׷aԳnį ̧< %9$*,<(eT(e9tC! Y;$))+!3530K/67:zC5 ;٭p"%u^‹[0\w_H#~Nq[ϓ | 8#EC>0G $6@ g?= 9 '"Yd "%R) ,)%= )IҷľST{o&0 mL &$#!6 "b%. ,r)'E"Py E] *̲6;!ԘYHOy s&W0M2+<&%%_'&!+ 85'2B9:DB-WPR8_lVݵ2sr=ű*>e&5~FOTT[_(eZmtpzk~EwX/5c] ̡YiФ2ue﨡92E;9k5E0)%SC#( 1[:w;-b H!\Ly  J D"nТ{Ο+1&ѿڠ>u4'Uhmia"[-TNF=72-}/͑gL2ɹ W MtK : !+.,C@)Ja`P a!!"!#3*03{7v95;\<7X'2%;$HJƆøvLNG}х#7R}eqy}wedJ&h Ϋ #&ĨW;C's),-W,)>#)!!kw[QZMT|1 uk["#'C-13+ J6ۅ!Ճˋ\笪׫ ˜ӣܘ߫tl"! #(&%j ѴҥٗѿʈxͻzNPUJY ~`F; Zw:Wm /yӆԺz܃޳޷X]zx'J09]?I0VdwMa7t *_:W`& 3O3^iqUybNRsw٬3wՋ#՚ϰ{D+@H.LGC)??EINy\ib?߇؃(P3eRQ:4Chӱgɸ~Q>z+$q) #3a0)#!Q TxC3H};~ `^?f>7]d؍JW K.< ?oq<S_#_-"svX k"+-97s;7(4)53a4|8:t<9 i9%ªQIll䷾(8%GF1eT{NgծĂmB;cnּ޳"&25~.Y&! R%85KafH#4$T V-o`߼ĺr.q,ٷ?ʈ{6PODi??BHY[lgd)_U]J{D@+/&&tEYҢE'׬МQC> `)38?>:l6]22J70/*XȊȇ`]wJޞWԫNt ^ g 1 G[#+g14x2s2/-1:GT]9\V@ -ݕ!l9ЕVb͖ds0}F [5cjmouh+v :PJؔ ŽѤ2KKa g Y; !0_MVPOKE)A6+&;2ؖz6^d tUam6-`y}zrj fZ8J}7"7"Uُԩ{l&8"=-TD!ɷTҮ:Nvn&35.'luQ<"} 24 ;X +UI1d˭Ц϶ɇ}v9-1U(a餴ڡv<iȬ{λ³z K.\F0huq\5HNjㅱ˃aV"@;MN-MIITJIINZYlx1xPf@  mn% K;c,atħήYp[.65#(]v&%d.4>yJbI[ahgd7b8]WWSmJ>50]H(J˴ 2vE#ƴ!:mUw= !"~#)%5-p>VVl{r_H=8 &pڥsr=;xO M O$ K"m\sW;:*i$(X0=9xBI!B) ?TY3_bհ'lĘ׋ƺGٔdW<0Lc2xyj\Os@2&a &lŧȍS-vʞ/bNTfs(umrnj5hefqhj^li]*O=0!)wJڠ?!CIWұ߸9(BWq~uvew>>o/Ȁ _‰Xkҫ?-cx I5CDSfiY;22#9?@@.#-;]h&В w]E&fhkh]F.#&6K\lhkz[=#H H Mܓ5]ֳjmV@10?F"FDq>70)" n%+-y' Ӕپ[ٯ!Bʜ!J(-9RD IE7=1V%l1'!^).0132J0[$&0Zt9qߠ#mnmfG`\X#TPPQSPD*=93Eޥυޤ֤:)ʮGv>U,I3H9@AqM\lm h\Gz( B$ #'[*%˓΋UںƊдٿu(BAZBdTaVFM4, 0@tUn~\9< !,ϲ-)F7ۑڂq"R} N $  <)[Ix},cJ7" ~LTO&]Āȷsνԑ4 ";SQage6cc`>WI3>4^.( t>P[c3zu3B1h/dV B ~A>QW^egPif`\ ZZ[X PHA>3 *\ a0=ۀ௻w$" ^Q*6@+R]_jK|%rS3dk!05v/m칒LX 仆Χ1 8rDAER?y2wA,nKrLZ43|DSႫp?S:nbrG&JYl}pNa,Jx4# 2IAH ;,=52>/(fzz+|Z!%% j)38<:9630*(P긽MU@E@AJV 7WKYM^adinv}{rciZSH;0b&p @Cd΄z4v\p#/NHmHpb_-Oo;7mݜ{Ӫw?ѸkӀj (u3JJX]\;VMbJW5z+x [G ,{A**,˻}RbL>9wg| +%=rLP*J?w*C# M寮 0ɩL'e T"1APY ]ZR>%riTKƿظD#o o&84=CJkUcD[8ytJY[XzYQֺ8)4(4-+ i WOɽ+;HT^gnt{rM[D5"_Ci x_y@lP(ZZXLW2T;JIJ^SZcmu~|?|zdC=  wZ5al:cB*[>KUn]>` elt|}oRd3#X!'u2q=?\5=\ڙR:5{ݗ"jz &/E_uAy_@+% + 5<:*- -ʒͺʲ?(ھئ8i)3871+(?+194>?(8N'#R+X>ĉ_$Ϸ ՝صق"ct :0m?KQO Gk:.z&2"$"5 ݦ!g$:Փܳ7La8z-m=AJRTQHBBJEKf[`_Sa2oW͟`: ʨrŷ$2<_?CBF=F?3&50E\qwvhF%ۦ[2-?XRM9c%s39DR)VO=v# +'(5;4:<{꫁/&BĻW/GZ{aNZHH1x 2H?C5=-H]dI,tZʍzm 2®h Fk<%R/32//I-"]xj!j&*+ -)$9 (4ϓ̗t~ߖ[# B;#(# eQdK#p]O!c J3v'.(wXM()1   7i;,wM{TQ>n߽^Ѥޫ͆y"9]=3H"V|y<1BrHC21 MJ%E:f l PL m)*$ IC}2s8X & 9 8 }$+c  Se2_mDsi/0ۑB܊ *5:`3n-#d :!ݳ޺l׬߯C-]+O2Q &('% #>!##d{3Fw"Bn~ 1 /e_$%9N^im7j\uI<08˸1abrM1UՐ&WҨȸm_B05Oc*rz|DvdMH06ߑv{OӥZFiǮLj",a5B7/2$:A#WbmB!)e-/26;|=6'@?Urn  f+:٤v́hx .:u?;3T+% KJ!&(f.3 . b =]ض > ƺi@YN m'^ f ]_<r"x > x{`fpT n3vd^!T@RP `n{z}bC:2'$y c"bZzq-s$&3BQLTQMPG :j, cspx+9A[EL2*5léCO׽ʜj %@^sloYmfXVSJ97%tfG %145, ?݋ƀ8ŠҭY [ aI &5yC}MvMJC 7`$)YP'ɼɷҾݪSz/P>y v1A;GEu<-!Jh oD+ٵ"˦1Dͮ^];S c c& Lr+^f0u4QƐ·՞ a[ZQ3C !x# Tv `nffW3B  X2J#c H"5+5A?#9-.*H$ (+6GUbd ]QB-8ٿ2ɡ&]LսJ]Ӧn "@3zH^Up*z}{yzlZD * 8Rzc3*WsGgVø2 ˈΥ:q0qBNTVTKV?x1n , i Mљͤ*MKI  vNK N "m-לKI K|ssA)I1-ISyjk(9H #!$$"""!z^ ղx^۸{Ѣ ` &%'&_%I#mwM")/3]5 79.w "'01)>"b 6m&/|67"/w! =0]lըʷ6 ֝ %I$dW QT8@ ( V u|q9V>[ ^ eM.>#J/,y I2NI#T(C[HVve,v)!"%B%t 0 ; (h a;l _da &*++($!s` s!`*ѧԣVtc3 <$&(a$Yk$*-v.>* 8[ٞ؋G8b+ a[ n0u$v-^%/$'% W }$P؋l5Y=!"$c(+c-,(N h fi   ofcW Rk 2XM| [{y ;E_ -zE!t]"o x ez<!6  (X]p&  H W U[xo:9_ f%(^&  $Uv@izi ^[WL`  ',+%7\<ӷaT,WWVn#$!To (n<8'־$G-H)7{ B O # H w5 7q .Xsm5wK<f *Mk.c 9Er e#|XQqr:D9!l!,#" + A!{"M"?  6J<5UTn: KO$H Z9k> ! r >!S,P.WѸ)υڀx7]@ /\ e '1n9V==Y=39+l4>V C΀ԧJ gdIox=e 8#&&B#NO o 9((qi}QQ=9\06{NG_7 (, Mx~>J49OXp:f3\ =ip@5~ Ld |0s_aA*S>1I#72u5+G Dv@ ~ SO  Qpu "*1 qqTe; % m|[| $,1/3.#/,**vxv"# M] }B T } m hG:P d;%&#&StFd ByOfMB~ ` Z H U ^Ya2: Up/H]QНq٣OKDZD'_   qnDVAѵzm=VA7s  !j! JPxt: '&*+"Nyȓ1 })I92NS*  41J /^d l*L218;X;6,9`9Ig6 $΀T9=|;C0) ./*4::6/%yZG9WG Ih8bP](  6eL7 ""MWmgy@1hX7;-m{< 5~ [r / RBܫlY׊xWgt5 P_ c2! !bq`RsvQ $[+c277/ ){R/:"*4Jp8iQ -U9AEFA51# ( P#'k"Үܹ1{H-f9@B=y4( XQ5m=s]bՅ k˦$ˏ; k= "I),+4'7  '8}Y p j'-k=  }Ih<hw RR hsJ5s@ 9@ hl0E*sjJ ROQe z JW-N(,~j < Bxc 4  uIYF"tJR/IAp] s%/g -x\&]++(#S?sڛӢ5(ڮ^~zK>g) >#+,39 ><6+?_+B-q!:q %҇  83 T' r ?"$,$" ]"j<[D b] 4A@я ,ij U8v#>#% e "0E ٨׆_-TV.m_e+' &u m`0 (  r&@4^" v HG9(_rx-+)Yc7QSNs v Lk <  >tk6bھ#~%$/%>!/s< Jv$FyW X0>F"]bjrf L L MdOA `B3,d3M!0j(6>vz  ZaC&#>9 /!gR"C] 6t  ~Gsqw R&kE"k@ 1>   dn2&JoQ9HYVm [ '3GMgsաllJ ;)I)@%"%u%=" d:,ݔ6Ԍ3ۣP  $*.3440f)  Jqxm,kׇGi rus!!  lx0S |n M4PA%`j!xP> !:NfR5LZ^ zO %M~Ki0B60F <U b&%o8 {XM[ K|%WEb#@y@%&x)*'#]  V!D\fAߓJ7`x5  P Q &D9S g Ic_mn3 ;hs] F/Q ! VIwHF? \OAN(>N^qEw@ Ps%5^kN|#4z@HH U \ T J_-4I<`]6 ID * p.$(v{ A N h pl^ >& ? {'.C* ~ $ vgD LiY y"s1g&tB&" k TnB[L YD@v)ROUiWK  Z` Vd@ OM's vDY6h* `GT,mMG Z {O${"xM[FSOsX;0(e-}1 |t} I 4  @Aj&0TH_]~sC  `S0E;je f t zb__GUT =U Q J O jl0 x ~vEJ3C EU}x r i  O"aA\ 3 jP#Fz,_04`Fb 4 o 6 #YC[gy3P~hL1H LBgI Iid? # 4 wL[W =yiX!5 qWO & lMpiV| FTkj~ P |3*cpu GK| 3TJ;i:;$Ls8 C k*Oi ;t"6Qr } .S0 @ ; J7b  `/C]g V+(rifaMMn):$ O L8.BrLWbG61"Z?;$#70nmp | I RHoF [ dfw[ Hf {6t- h[pp6 ;b7X^UNfzb1 k}zu r_g +0Mg0,q # ?^Z C Q s)YX E r 'oR% u V|r=OQ[)t? K jOxQ} AT%6.7BnlJu+RLra}FP+h3o "i<,l*g:pT`4U H fI9LF|*0 LjS']  2 z <xu{@BYw|W#Vz H# vHs 5PYo O$ic  ~ Gt:+ z Zoy[t2jFw  U u r o [N[9.*@{>|@+IA^*w,R^K0 Vh(D5M /)0.z4'v.$5nTkZ0M&On?d:4bYg||6Z pc } x :c!eum{sU]LCZ(,s/9c9]@\,nhXO,KX,hX7 pe S A;{Tc?l!X!_.-~uS1l1yk&oJW~.h>2rES;pO06$ U 0D..&7WwkR]]tuc k'W=f;E  &-.Oh&<cm 1 :&s2q xwokpED&2z97k.:4J x C CJLp*Mt&VC#wp] H  _Z/>fh#\G/[cekS X L BPRHS&TD^4FH6C.A y i {_ 42H-s:6JO~CWE6 K L-%o_a 9X%d@w] v *Lpz0w+Bq'5-tx  [J' 6Jj(% 9$    aCG2?U{-,5@ t T    6\)M;2nW\`bS9q~S  y N$ A#[kianV bj /QLFxH*YuQpLY=qc BbKpOC/I>C C 2LIST@INFOICRD 2000-03-23IENGNoneofISFTSound Forge 4.0t 9^RIFFWAVEfmt "VDdatagN}fm-z\4b~. k:S_nhJG$&sOqH+^@4ozC3DI.lmn6&iNB__U [1(RP|xs 4O_R'/Q\^FEN%e L 0[M<_\#~P)g{o}APY8$UA\hO1]5SVDA  `oFbJIC(g|QsI}-kB:HSYayZ#H&: oKH.9c9rr)N>+FIs#/)2$`T>_}p Y!?<i8aSJ-+o Zt|dan fw i _i)yX h\6!WU?q$4r@40/SAC{mLAGOni6>YZ q5t7/S1Sn>&Vh. dzIpC++03$9j=1ET4L@M>0*nrfq[7 Ei"TrXZ)}bK"bl8/&6 jr(@b)cBGg%I6ypzvYh6HFGym3"$uD.wFfB*jvp! U0x7_gzfz4[ g29ab*4XY KqUUKugn_<iZ6i= =@!T+>YMJa;m9II(CFTs@ 9O\.E8 ->apx`I*-+bN J'g9_h&j2mw_ t QX /i \ ]Mj* j]2}/sNj}  %& aAaW@oL:w~1G&2!:=e"t'(KB"ff>`/ +k#l':Rt\N0EoLI(EGXI{05pAtz UF Fv(G aA#2  [: C*SKh YUZ*Q/f.:h2!-{']ICm.H LQhV8?Z G[W. 8t a cy ]9- +H dvne31z,q p] 3!S wL@/-?!%aA9Kn J  ~r=nhA F3 /F> j w eh& EdXRX#,3 =;DoF7( K] m5S*_Cx ]HY  h; J(fLC7 8l $'^ A 7bP JC ;dV K~Gd N'(\B=aKS?>y]<*Nd]PWY :ffmQ =fxXQ,%K0&)fX2n N  Qx[~6,3WrtiGFfXZ 7i%9;F_bUub7"*mJtYY !z>5 j!%*G-/342A//* 4ځ F; ^" * Jp|Gȴȹϭ= V()235e4+.I$~:/+}*"D.'4782&_e%&&LWNAB W8܈ Y0!(W+_-(N!:: ~_SV& *&ڒmђӦfhK^Dh>XsUs.b"~C]IH|Yr\D48vk >1hj#-009K?:M<]=9.'t #?ΈӱB!u'b.@3t(} 0י9Q40%/r:@=18S2&.NL!(151 ,%;n)ށ&č˃7M#I$oZk վ!g*../P,%k6j?\Y-FOg x :@D'~'ոٗڨ/=< RS(s$R5VS9i _%3j]gdCL4I| q  \'}+-158b::84J+&X ۗ S#7'( ~)/õīDg${259 ;5+Y!bvF4\ #+)!#N$7',m}{ږ SSC, DokPW#P$)/+!Q#%*@N! > F~DvگRGQ% _]2ISjA@0m0((=: {.$](/M    !$&& &*M/u201B23~1,$I )ܧi96!# c>XqۛϿ7(q,'8v>>84^, %ZgJ4m "%/T0'T  yjNE׭ڽܪ9n 5e'2eA "$- .4*6&!Cb;?f t!@YwJW  (+:[cStY2A187)v LJsv Qve !$:%/'.~53M011*o"!uV>HHlcs!)$1;9*ߊ_s^)2)%!4Θ =!5>~?:3,!jڕ`sc 8+1,-<133C(iTf$ՕӞv o \ o  k,DrBA#%@(%FqA pw Ԛ։ן,   lk}~e]`K / ;cf {i8}[D$Z a8 VX&(;!$.{-*$"n)}(!y #" e # n .#4@t3ٝ~V `C!"C"[V E("AF 8II'lkb/Kt lI  $>^Wd Kh:^߳۫QQ,/O{Hq8 JFsMxQt> lQ$jcJ`StI /\A"w#j%'(U*0)\'#, ;:X)j:<Q 6 _DE9 w(4 W~*A d^ s3<+;8RB/!x0q FW =~!:%~ndv'Evmu4 ~;]H?r,yOpTNLxac`[]  \M r Wj/ _&,\// /- + '%"~UM.`L# fi1%9 r+ !oTROv>UdS5= .@b 2|F82K1Wk (M<8lE7wg VZ9Rcj [/"1LywVyS\* 7 # `x3EGZ`HN}3v,q(N{G@ B\8_1E,~Z <"F$M&&%:%"]5  w 9$O `P)fbGLP[fk J MQ] - o>  ;iFR ?CL,?-2(<Y ,V9 ? b LM7;lr 8 . C t7m@I>i rY4[ViIE \ o / tUc_ ^ %: tW, ]W68!""j!8ng rM    KyExlle}^2Y *" Qu|*!@YVr`}T #>ok 2q?  )J  i /?3}xOSP H .h  97(H  uQ|=~L*ZiT!8 @   1 i   -=$&R  *yTP+r>T ? #d,_2u! $SoT8C,!qw $6 X3G=G% A)  [5(|T-~Af (z{>> iQ `z8^R h&8 y ;  p<&u =,Pap.}Z@, 9'$~ K| ?  B B 7d<3:@- b 3 % z ~ J ( S $ &^8?0"eW/'gW}b]   ?IEL _1-XVk g7 krB0}L_ ? 4 9Bqr=r6N#>zI jk"Wc~]vBn>>0m.W%/.=L@kv#&=4 v | o  "1Ge9 L 2P/g U  vjyz)1 Q{ 1emVWd~ >  ?  %='8O.4by6Vrg  x F>g %V  XB($;\Qg"zT=JJG@/`GV#)VkkHFcB*Qz    > l u &  ~   $ &N;1KLSwcD/-8Ljd e I i S ;ax[O8  tq23Nip[5,S_yH3*.tR/+&X%mP<A x_c5 `  w/::1nGHQ4:G ${# 4z-<kR  M 0 + K  @5pang 3z[0 n(w}.e"N{T1Wm{B#a)K{`_T 4UdBc_o0 S  Vk NCo8;OP7]nXs b>nR>0,Y\jbum3/yElD-p8J~#^2d@\G-!i2b6Zq 5L$UT0y^ nAF[$lv 9c!@dUCT8 ,&#&)+--l*u(% I!۠܃3sJ0% tC!W$L$=# T> 5ifsY>"'(c&!)? A1ٛ>pTE@(z/c n`G@y':]D&-cxQr`ݧV@4 I` [_W 3`u]U  2gyd @"09'y }(`_ D  y #U,R6u?FNMRT"S\OJAT5'+- ArѾQĀ߲w[.>jLX_ FG#C>93)YBWzWԣ@#5CN|TY^^YM@L0  Ҏg  &,)11@0) > vo+fƶɇM  )x/p35t3]-d'y!yLϘLЍەYY _p40 Yg3vQX!By ;e6F -U_K #,5=%FNPU\hcfPdWd?($$|Iiˤ`&}EX^uQ|e%NU8! zEŢV 4?DFIXHJJB2;Vɟڪc&t$пv1DT`eDqaw~~4tcL40<t{ʡ(Ֆ'6@JPsP!MeDS7_(| *o 渁w˷CpP w$-(<(o%i 5R7Џ008ދx!!} f4t<S+X L, {+]". :~FS\`1m/v%yq\;]؟n:u&1#@RxwR[9={ Kc@w )?NKOEPN*KJrI~A25jJ֠Ġh~}xo_=6P+dqyxoLaNN6T'؈ B=x9Vm |yoazQ@0ϫKqW։QuA p<(an# 'j&"0kԡij<ԥt$ݧ? JF%1z;F@Y@Q=2w&\U ֻɈ`GʻԟU#r7J[Riry:~|kBN QDžvLqJ!NWhF5#PEcNmEladVMFA8'tF>"  "yM[fnGplg^&VL9/9ߛ򂡕헦}[%_`~e/I%`ƈuόZFٌ{6HWa`Rg<*$!* ~ָğF H"#.B83٧8  2@=KS.Z_#dffa[SOF/DO':>xwjjPV9Ona ˰J$=gM[b\gMy4&`ll"!#%X.:VEH@+y:ҩʤ ߲ۧ1+"8xHV\AdWikj`M2 ϡ03޼FP϶ b;m 8= 8"e" hjʃr%?Cʣm( ,49~?[@9]0D&3  ԀɭQpJ,L:C[HLMORRUQLrF)@*8X(rGS-W4:q~iT>M*,8ؒO0BQZTIG50f!C?lЬ7V"w"{D~$,0v)J!G9*ЯK3uFTP YbWUROJ/A+.hCHv#KVy" K$g <- 2!Mۣ:217̶؊q+C!(,376<.!IQ!Ƃ%  $,U5^;>>;9`64,6772:+;5!V;IѪ῅WL&F<DP9~"u^-LP1 b1ED`SZTSC,# !KLÌ++!B az  jdߦhl5ӝRo #L_SRQzE(0vOE׳#S1=7#(tW]%T<[jo!ޟz G'E?Wgpm`bI3 SpՈ򡦣-Ÿ4R Y"&& N$]p | {2_L;A9׶˪C}bpLll!1"V1T߮prKS`Kq  e&/8@9LV_ycY 4!X琀 Nbw,\J~&_7\| DŽŐN`--|1"99*0Y |Z^ G@)k>aL?@oYq.eC%ΕtHӿ$CS_\YW[Z{ZEWnE<+"ѳh$ŃsF= x$`_xNP6:-*335P501'qExN #2uI R)J/,#7f+_ho.8&kHm !v >  .*W3:<8q+4Y֤Q*/}.&.7/+,3/4|.j% #8uYo.bMљYD%\w U N&,,#b.k n͘q?IDi( *N12))8p O QedN(N3::-x rn˝)UbQ/; @t(36]5'*R }o?'8&n;LCR$pF)V2We]YC"r7 >$N5ƾpù<͛%)y.>JMXVo}yU*Jfʒwϥ˖KdȬcnCTz ] 85Cg!b9n=ץ̳۹صb+ɬӻےM[y'2872-O( rCx<4΀_8 ft9YH%y!$'*-4w9,""I2*PBbVA4f, FZ"keΗXB$WN/uao ;IEhA5+c`7"o ~#09@=H/SxYN77Z̺<Ԑ¯|1 5 y,d6KTRI92'P]YY̶zA  X"sfTxR[tQ jזK߹rϼۡ?8O( M iV W(G*<' @ 4 + V yU n#1;?XGrIREG6 "CQnsoHx+I%իV'"q,QmmZ,J=! "!*&Ho7Loq3;@0VB GP<)'^EkXrHǟ׿W2 G7,13(=?|@ (6:7 - Uy8׶4Y1Mcz!+#WmԆbb2+ Br zrI8L n ;SJ""H?bMW `%(Z'%G"K GL'Z0;63[+ ▎by/$jxOR*{Q Iy " 96'35/%KK"4wr X'I^Y-3 SG6NܢK\Z5`sb<1NB=( K3"e#пNs s 9"WiƸĝRfؔq8N]UO@x-s` T Hށ׹4dߗ޿l"ޣڥ""iY @nRKI ? l2E<9Ȁ،FW  Q6Bd\W9xH! 2%*-e.X.6-.29|@ HN~W=[R?m!zu"6j;M3 E&'APOE^9.#g$ b#v DV؜).MqW It*Og1ҕY+I* . 0oۋ{PN"|452E1DN4xD|$0-A'1:aָdͭLݗg P &" `T|go"Ur=ϛ(ή޷ O&l)`<[R: *N\1J]-O 5%Ddk %!%]j =ҳ"6RjuV~ 1XWinoGoXr*wum=`wO]; 6؛ݕ{F ?*.Rn&"63$ # Q-2@nH=Gw`ҥ07_<˜ INp(v)1W]4޺ǣˇI7@6W"5 / u6 }(@ I80'Nw}>kc+LZ8JG6vwp*{bdBi(}8w"#O/ d\0dR,2H02L6?9O=;91!Dw߅,N .D dk q F!]  ~ $$"zm&ݧqGf$)_,,)a$1G ( k| k+ On2u '| !!K Xilv3En+i a[sQ "L'}~W{ T ]H: 12z  Jj$'L*}*&Akߖu>s%{ #&$[Aja-R+h+Yg ;u ] BnY!XlC,jS }>>&/7;8W'S 2޶tX $ T> >).M 2 7>1jStKk6`#>N Za BCU߳R /rOW9RF6OBqҖ֔"I. lw)+38q9\3g(Su$K!`y(?a@d!] j#Ps;92 ? <(D,DlLp t"'+,,*:*).(%#R!z/j*/5U1w52$sbWlf)t!:3 Xu 8',0#+ Ji9sBN {g05W0 P cJ K бD>wWAW ;$$0 nAZyGG Ki1Z R&ӻ+#Mk7t nOY{ER]s+q<%J en~;,%Cvm%8?)!V;I{ o=. t ̔ ]ʋΈ"#H/g,D >z 1Bn]O^','@ U W i I"))* _Bt3'ܷ۱ԚCnxƉ !/3359==8. wf _ݿ)Ϫ*L^'S  w"!' 2jOvxDgLyhr-~e<M H g 0{U,b+ ?Rt GvO3Z H^Xɓ׽¥U77S֤d|  h,a55-Хӑf\Q~kNK%-9^C@6-#9#!*0// Pнǫa9lfW,T[} P$%S XI:0*n : Ed <%wDͭ9ɛU8MD 6` C#DP! H/} =^аӪگ# Po@ <sTڣޅw]6! : e#'u(&l MɲȦ 1"%E_Κ   q!X+0=9*Zzڭްϗ067/3'!))5F1Q7MB>(AS$.*2-%Z`ٓqR؉8[%; 6*848~85/,( $ F%"߉_ S ^ + +7w"!hۖІVБdU@(B4}> ',-*"BS<>&AAGu5  zF'N:O L|3bsD2@LvB=[j7+G PUcLEO R B lB MoVCw 9s ?<Zwvlm"mPe?G?AT<IHwmI mm%Pa\FO)vC.  NTu 2LC 02I| !{j*)YS {PnW 1}{ M  meFs6DrSXmvq 6tGw w$ Q 6:sHVP4qu 1Q \pXc M  |LuKV%kl  =O3 .0\EX D [?QeGE{{%8~V$'@ SUh/@&,=  8r6$~d;h:v e m } TiO fz p&M)?= X R8(Z#2hw x0Bh l|>L0Hv a'1zA Vt,_jm)A9N Eq4& xT)~fH}|IFu ) ivv. vJyht^-T  >q}Xv/\3=q*( Zv #$$"]c!*{nڃtec>>m>  p!J c z0M$U  lw) nrs 7W q G>n)mD| pi  \H5 (p/!94OHQ[0i:5 {ezX# 0- B B- \k%9b!z:e~,) ) 3 2 -gN>k:K$g B)oT dl3r 1 5r٠݄=/i 8-rq t"" vC~DI + i.k,0j9$#  ZTRZ^,VLCcM=`)L  4p n V *a>DvSihZg Gl,m"G)?= c \ v  sHc ! T ZDAIa# e E #o*0kW }1<V ) o  IcG1s$ LqkE{  M U.`Ik4r8;k{ V :C , v=y4::,091kN{/fIuL5 c/^80ihU=45*O:QqZcf_ x."cbKoMq@PtCoc8z[ >]ehtI>f <Qv}aG\#kG$HH|k,BM l + g w l T 9mGI\l C ] = i ?   pT9vL>@{nQcKeF&5-U{eaw%Mo5_`Sks=N2Yj((pva7M^Is)O~oqE;)a Y.VD>_2G=O&pP-r=p bqMb J  ~ ' ` 9ubv&*4\!Q~'wiE.(bYx7q %j>KF5S\XX]~'Rb: j!`xy   Vayh>tyB"c $h.qb02g" 9O>6P^=-] DB-a((4CbZ   @ =w_ ~]!&v?{}:b[TwCg $Z>`L]h 7E).$%9=V-y/( ;aGp>< t, hr RiO6 ({k w&Om)AzfXG3Yb;yxDD6YJ%KF=o{\_@8531VM]4G] ; 0VKJeI624\):d!ui\WR{@I*%M 0 $_rqAB\"h$MApcv&=q c os8#,`bhO;TTH-+<S6cHy>W|$-eAgS I$' Kg Am"cC)::qqN?Pt$2@   G\| }k{EA:hXJu}Uvb04=f DG&TeKTq'_b\WHZKFQdo+i6u?e yL+I*`=6.n %&X2ERU)C4F]Rxld7:=%cq2h,'*b. AB1O?^bo5ZP80]v~}&dLPdU+9lNMeS"\L.HAeI YCj`0s6`!uCqA`-fP9~+p)wY4$lS kUYs|Fzun=dR-3qfkjM*rrG:h<3jLPF>XRy\KY!/,w7 ?/0A2HXKa14RwS!2~|4s&iwMnWcQM2pl'aT9Z>;'N ;Lj^`-sgsBR;F,h4>Q&Em"`ghg=;HzDCU;a'=)w7xcd |KTWBiGuJu)z2zte6l [^3j QHTp\0,88<#-#gSH> <JJ{v"IGW 1;0t3}Vtg:> G#8sm~L}d?m}HeYNf>acZ#hApvuK =W/ a#z eP I?$ !jbn;%u"86:n=S`uA]Y$kucH P[Z_$.g$2`\Q/iI:aK-UeI:}N<6$ 9m#cKqi=% \+j\fYhg+:~'Hxg j]RmEX6a&Y8:SG?Uf ~`x?.cdB/.K='"fHBCE}k&X~F6 bC gB{-L ^{K)c w-- :ql0i?%<\HRR CS1].Jw+dv}7.:h~ZQ#a~ "8H{?R950n`+ASa2ru Sf o#>&#$m = b4eUxGeV6`8 & '$:!1 &  1/b4 # b3W4 #$#p!)1!ݴZT d@"+$# #] z- )JS87 Hv 4 uAKs ih)EK 4O)y G]g     bu /V i ~ g!I%')*?,."//-+(M$[siv)޶پդF?F+  &*1@7<=S<70Z& }*s,gݫ'߫D !7:g!" "*< Dmfߕ}C#,3&8;B;72,s& 6 ѵ ε2֞+0% 'x.24!2,v&op \Msa`[mt,6Lc[ 5  G;Hwe"~@d+ ?Z,l?Ms @9 m   y 3 E$(+--010-5)$'Iؠ˼ངٺZHGߞS/>IOUZd]bgjh,^JB2 w»b7)ߋe x'k+F,Q.-225"883) e^ ՛ЙFR#6!+328&851-&( VB܊ʾFβ9B${ e,!N,5=BF2IGIGDb;. Od4{9Dzßȕ@,sO85rtzUP\G#?Gw*; O  GEh߂էكߜN} V))nXbgY$YFp |>#-+1=7J:\=@*A?;1Ho lHVh8z X9JUH[\Z` hq{zwx^v9^Mȱ[CCyyʑ>M!P18;4[2K4-;FIRWVC* 5̈́.ۇAbmNv1;=8D*v a [y̧:k^8 _Y+:XGOxOG8() %c: Z!SSƊE 1 ; $ P gߡRzGH odd7KC&ݍܶܔ*2S fE mz m_QB5WI@!)V4\;E>>(>gY8*  [|uބ؆^Qwn0 dd9/q"UdJ ] C-b"~6JB@Or :;@ l  % *-A/0@2D290(:Н=ofϸÏԤyeܫD6'L39+~s' N oKؐ ϫYa؍p#V4#U64I_@pp/<S/>( rU W7ۨ,| UtP *u, { G#(-2541M)[!(f:M>Ư%y;b{$E0U9@IbS Z^]ZVQI=*_pBېٝPZ.񨋶JUO: 0\(3 =A?8)R= n=lGKP݊%ݽ0l  ` () .aT"(T&,&"!%&^#  v|Vu  % $.R}#rg".ƭ˵`V> #*a01-o"Q5]uPXޤ`W -i#()+*%<~LczBjo^b !@)q1c9\@zFJ MMF8E%_!֝9K1ӶڤKJ/J]).8DRb&tmM) ,ߒΔX԰# '@>]ynN0A+ >՘O֖ܬ\I N |8%~)% /- [ [ *N w (+-g7b Zf , ;z$"xAXxRQy"##.#L#Z#""![ n ER'5;b&K046I9'8I3A,o%y' sЇ(dОնפ)c46->?K>RjR LC82:1^243)3ٻǸsIf'$41 9<`;n7J2),'%E$V" qF:{ 1޴\ !!(,/P132X0*<#hO-  ];ϸҡ:6τLW# uW#%C%##"n"  4 s42׋6.p݈ܮ:ڬMp h   I<g:w>+ A (nڰi_߫w1֋>cW#(*+g,-/2\7< @>7T*o m Hg7q-" [vKRq)uH&"%M&&'*w-*27673)ma6K{9tSu- k-jL j%/,c3?:>>Z9/!y;fͤʌ  C m u=0/ :ah ]=}YDOQ2~mHf S= mX S 9.*cO|ZB ;Y8>h$ %xCU7& TSyeػqԗ՜ۭe@  l"&{)+i+B% (Ev)*ٴ@4 t p;#*0D31,0%k y {W*Q+dA%+MnKHb]"'D*(%""$J)(--?(9x.mR ̘ϯ!ژmq~  % -!"O\kWm  uOd<  R+ u81->[4 dC 2 ^ r  c ; g h9yo{N g ]ڴN[&# `A"'d+Q+e' jw ~ zhbaBQ  3 sk| OcQ:;f o }  "+v eg1 +2E n7LM !#}9/ڻ3 n gV"&$q pj36V57ߜގpu & x>r1O>74 AvOSG uSGC1[ek#2 z*?}C$ _H@M߽٭=ש Euw Z, "#!*LpC=, 7HqFB } Z9vrNy' v -" Q{W"&( $Zܷ R A $ {D'[A +o{o` $ {o=3>e>nGPs@ r* gb$1u5x9kXY P&/ |6o7-KZ1DYu -^A!]i" Ux ; 9l D]iVA1>fJ?d  |q2 s_I  +X[ekd ~")*.0R0,{&*T:a[ttnzB&!&PA8s}q ]"Q`'c &Wm$ U  ~'U5 HJZP:nw){6 *h ,l1=/>MϪ u~U7 `Se (o0 7 ;; 93*C=2$KN; wv'.34=3.8*#9g'"4 S?;SX UV  .f;']B x " g X H `Vkk;dq1M[ ; N4MorX8s+Mz  0_DT'wlK Is. h c @6W FP  }  6E > - P-mDNM g2'_ <6u\,qTuJO X]+ZB K tfy L yC.  K  T_%N` i$<eV /5yX,aP;BoUWHk:> x -GDsVWb7(4{z7 S m =$EKU0U/7q7NFDRW |6 b@'gOG 1 p`;*mdlUMvk=,." { ^& &5?a\U>j?  Tvyڦ%"#'L /a k 4Kvc%2+71(V4 ݈FMj 2v4,5 U+Z09S901"U^4B-  Ul  %($<$ q eV5uu AfcfD)vd wz C ( > }_YaoOW=* Y} !EzU~q5h^O| Z w"zv_1;Tg+$  X-Z P 2 N (A:?C*D>C5+ +Wpǵw*/ sئ { %X5MTL ;&_c{, E _skBM܈ )<4C0=.S qBz ,ir$--=-o&g p 4?sk:+]` f x1 ] : <a 4(l'w NBLa}x|% wIVlUPh1'k.d:NdB<8n SNLA Pm j D k E  8cV ‡0X;g4 tݵ_ XxZ E$4P,z}hI!] c ;U~3sސml.52%;Nu}.  X1!~ X$@U$Ab qL OWb_<c XB 1#'#&jWAdfpG7 v5V ~d`3gU#h4j#JB&r o$ n yr ;FLɐ?&#~ BP - |"*+# -0@˝܅l y! E WXj)-4::=/ߙ1= D * WP4DO~jkj$ @06;3I&Spl=FHRq<V#-. & M&>a$S Q a  sL |F* ")_ڑJo "-y44/%ܠw2m$2 (wp3n my ~K}*A@P@NL?F(rWcs؋Po !PAߩ5o/3/o:9w/^PC!>܊A*o ?;~ ]Ay6+Pjܢv: W'( iLTKj I E)Y l* X] m$x{2 & \?CEOq b& j_&pPaX H Dq~T:a# m BC " `NH9#e.+ /I}/ ` l O}glH} I 9* 5 oڦ_pY') = /g >0 - /V MH " h)ŷ0ؒ$$S  A?$14*/yTɷsҿݗ ; BRC Op%/~0() ޤ[@m e P #S.d"`|J6$2#e J 9 g  v \9+< LO [ a UVb/} 5 9I/3B@]:[e` x:GHx dWEGc  =fe?fkzh~;@=jR??N6  G 2a ?To? ; NާȔ{ 73  4IbI$7)(">݄ΊƮxј=a0Uf K>Y)9#M3<;,.u.hA۞+c T <!,3~3b.#(4 f ss -JF|VisL8(X)! k}h v \ I1.a*7[#Bz VF y K g%  Bl` X ,sb ,JI?1, 'd 3&  csMgv  < 5miC> 6,;:L;.*ot$ n4}h]:J mԣm  aU!k   =Yq @ Q4ؚ )TT4+0>M8S ii U) ZKYE{lC4-K FsE{ ! x H=v|Y<6t S)r uj[* e]]<\M *E EOcGe5Il2/+z^~:6 #LTi~Xy/6\ 4OlY{ W'-%Pk Wa[8|Vh)[Ub d   9:Y KeJr@ZX &G = C B# ;& c yPXp2  M }"A=a Kf Cf&{:Fi8 jjls h ]q9 o|tZ}a'QSmg~ e  e ZY;M%@j\z^ x}  oC=g r K T hX!&4^ )] #[_\   , lJD{94 "-!rX  .W MiqQ0%Y:S79"wRw B!| 6 Um)%CF, "B*  nvDE  Q+$ He89[ )z0 /" DX62Ajm5 OtsfI Z H VWm^$p|XW]!x5,vfW@1: [ZlEXAHSbp$pye`x NIc7pmn7M?u)] ji7 l#U|~yA?-Y #  FD  $r?   -7n RF_THXd!  | m)wZ8uTL5<v =?Rd@ R ; NXX=gi OCzj{ itM;Dx.a Mt yy%g\\Ai$pQ H 1 SM|ba? 3- (]f%uSszxQ -mKpmBm-=mDcM'q@6$ZAy}<,ds}( f#*X$-  o R$WiN-^ZD+vOT6 #?|>$}7kZ%I :Q IHZQ&p0zis`W( |D$+t{! k=Lf:iS 2 F8@J@ogJWkL1f % e/_6[E3SNYg 0  74 !~5, / ~dHc-~kRi."0Kb:?2 S ) Cu%h NbzrW-fuH}t>v9>^3DNZ0NYV\/Y EsIauLMd FzAN 3Yg\-Y bWknEh~ v:19j T9-nVI/;6,+1/^y3{>V6kCOgH]aIb1QMl~`9!s!*z*?2  ]H{`Ibh9wNNSJ ~ ;7 W~R2Y+eL4@_ Ge]k J/L'41:. 8W  lBa(rXZ_78e\ynhL Xolztj0fZb( m7'Knw VNoxTr A =d uu)tQLM=U0{]7_$_V)q}U@p5dwwn|d] 5 '0 2 u 'Sk ;h - A)Bt c ~-7{tsa(< >&  s x 8B.r8J5fS"e,|"h}C 1> MU)b 27P$YP~<U01Sq5rNV;Bh#h*^~:Fo &(<8 Sug.IZKgZqe.'C#7\@ eU LPh3IsJZKfZ[{;?9Yww'wf:( l aB@ `x;JMm!Az 91nV4$^BsFH 5{BV n  6wi^o>Qt$ Ez YXS1WEy)+Q7 00W=z{9TJc !5)'<) %bRK~1o x AVpeDT/d* :_Xc 8 p y*P[::g+_ R~L R2 "AAKBkYj  syJVh j '#5),,  2q  7/fzOi,y>L = 8a :U=krYt 7dQhUY( > lVyolB-mG[&s]5OZ!3j-6OXK |7Zj>+~,QvLD 2 *a PuW rlP)fdmOKW$Iq24TqIM{[dt3UD|3?T` O\UBOEO8 2;<<7%x x~YoaD^m Hq^a?VUnf\i9!,'_&{Vm%& 0Epp7-4~E9s{i>[hrH~)=ut(q&O i4dqp9.N'O 5O[NcDK[ft~><cs@mx"r.=#~P i6s2uNAcsa=nWHhepv 4[scwh[/PRk51 rd'+V 9L< l_+_:A[L3 Jw_PxM? g /[*1 j(F-dJ\lgb9)?Y q,yu Cg`#V260 kt,A~}\w]c4h 1A@,(Yi{ S[:{)Xf {4> P _TU 3: #u 0h"N& bU RO( jFJ^^vFmB{=6Sf5_{$a[1 5364?E$OGFH?hrY3b}NQ )Om|89Yny]^<'`sBB4m li)94R~y f'm~e+Xi6;OxCY(,8xCi[PJc k^sFnxMF6^pY'BXRW scfl&-i$E.`~m(!Dq% zv/VAB TJ#E&a%;f*X}:_aL7KX p] 9TWe-Tm%#(56pg )w*oBIcQl QvF,ypoz A 31Ti}+WGyT/gt<tGUhCA3>ouI/'R($^}2%>H~N.kON8 Mr^a+ncD5.7Lp&DnkZ0;4l mNf gZo_ gWM7X9 (slR AIil OAe1 OVj1rv|{Y-4y$&yvvF.dte2q#! #< wx sh9$8qbBnGtB^+ixd=XtTIzr:~&ir|'vcPr4LW}K  2sj &7m% .Q Zm'x9rG&O:ZJ@fI516vT&$rM4p{@GTK'D;m<:XEs+M; ]lw##peKL -kv=c1{Grk Fv6I("}YYt\U?l(4?))T2=CR |sX'^Ys+u*\|hq |&P7N3 ^s 4\b7'3 ?LX)gu\lFxQ9nR CDk sBMTjWiRo"V0FXu#SJA ?IG8lB1=*p,D- 435ip%>T/6]" !QL.bUt;F$70^_X`y9XohNVjCR*9< '+j|v4G Ei(Z1>s*s,$$6| p54j5@Cq!q>8pr1"6n:Q7da1#ML80[Lo$q9T'wQtl Je 7|ZaVzC1Rf"%"?[LMGL^>d MbNyCW/$|(];ZXklpGX>6ua\T\$Q'Q%Y2(X\E~nxoq@lMhRczYH:?I@'bCEalS%%ZR5p.9~LF{gY(1{!)6(7OJ$nTs3^Y|B=kMIRuj}'QJIu<OD"8n/\QjN >ybB'o #s/{Ir[\LIST@INFOICRD 2000-03-24IENGNoneofISFTSound Forge 4.0S//============================================================================= // PoltergeistEffect. // just a modified version of the shieldbelt made to be temporary for each // client machine. //============================================================================= class PoltergeistEffect expands UT_ShieldBeltEffect; m [nRIFFWAVEfmt "VDdata:..BnNf}v}vfkpw{h]m|   3O3OwqKLB?0 2..MbdpkwqQ.(/20YT=0'6WPNJ`mX^eG521Q[J%!ENP]vfOZ]QSR[Y:YzpS)-4,8C1tU`2 *V\<"Z84)IT~M)zE-Ld1 =Ihf1QD?:O>]eymf\KjdjD$>ZVodSC?)>whPcF/C$|k=\Zc6Qnd&"<(R[MGgB-TO0jNlrS5CLR|h4Gd$+*e-DRHS d 6LEpcc&"x RE!3rahAsz JfpDt{DzOyqV$BEv1#:Y!0k;~Fh@tWw3h: 4 Y;F,;u2,"rk(p: -4odKWAEfFBa sm0+nt$2".`&Vxxt j5PX i7(=iBH$FGZa/P ; I ( l * 6 <  L R  /   8-mK H6!Q#"j"""^#%$#"!!12 9 ES%%Y![I `gg R *70Pgx % MQ d;j:)5]Wa$Az]KDMRJ]7v!~i[<.WYFl^`'lq4K:$A3N+0];^"&6 X -?w2$)\-.~.U,*e))-,/=220n+" My!#CB0Y o !>-SA 0 p :W* & PD `K+(#}-9G (q6[P%1 7 orr{L k0 o( kkjw/)$4Zj ay S  D? (20Erp8N+Dk_^ *RGG+bt[H.]\{QR`rR"F>8H + lh|%(*}+-.J0/-,.Z122/+k'k# pYDf"F$q'()=/&[ 1 e-S/#i lP9 &()#!\F 1x!,O\#FԯԱBXN]f @9(( 7 y[w ;rn. )OA &G@Tdvoag.Q!)*4m*ޕޥ. t^۔{ rVrkCw x{%a#)/353~/F(8" #("+L( \we x["0*#5wrOfn+k=r}&3e1! @p6v hrH f]!i >BK2o+~31 - @ ~mv\w20tvָШnPS^O'gۣL D޻ہߺ4~ }0I}>,ֵї)l !J> L3K7kj E  x ! ]#*.0T/*#>ks x,n7=d=&5'  ?;l 8/ JC_\+H5nRs /   Vx /~1 $J"zJQO  "<" `$ 8@d{zK! iDt dTb#%%%%%B'),047>8O4* g5<Qvqzsx r } I S} L F g  `[x_},'&9 Y l  MN J {N,n1KK;ZF  }d50<7jL:G%F?F (,z%Cjj!Dn6"I Iu&"$R%&(*+H+3+,j/`3q6M62,,#& /`E"B fz:M3V]!" I4R|l Cblnm/a,fIR~k$ P I ~  - V  q +4o&-:]\ 4^^Or&\+< 4DJA|gTa.( |o"8$*h " E \%),-,++,D.0_221.'h z=AA> 8z - ,N?o dHRQ y > k sV BF u *  z"U   MCBx+\X .y^R~jG)}sn 4zFvL*E6~j?W ezPoH+nvB {GR$(+,q--- /"/d.B.-7-v,)9$a!  e8^2c EcL2KQ!"##!6 E w0q; \t)xOSG$In DY 78<g N  V )Eb J9]|݇Ku^Wa4!b9g"N%7"-M"? N,5 >c]!:'B,w/y0u051S221)0-[*&'~" T<$ WK) :Ed nC"#$'('$1 pQ2*Mwq Q484ޅ]r$ Kpq&T:$ Eu loxiJ#5 EXBe:]$uJP464u6'bz/[kEY4 J  U "'>-1e5{86:6:i85f4(1*"  (ؒ܅ ]f =Hp K!t·݆6?O}  P*sy; H ,!g(s Je5!_freR=X"/o!S  4 G [zY {#UW+/ &=a>5CD,C5 v$),. 1{47::9|7K6x4330*#r2 l.bXݤeԱ)29=: 4+o!j rD(w*XrU I Jv w˛ʢ4y0: nRt^x| x([3g?|;$\=9IIU[Se"+)I|!2jC F  )]nE^? #+133B20/0307:95.(U"X{H)N 806& ^޳e"h)`.r. +%h l) o2HDI>^۰؈ ݎPvt  +$ $lWr3|Us/  N< N1Zs,E1Tr^V3q-R7O#n Lwp1ymf~yn;;$: 4p"$'F+/3~652.)%!]P>N Gi P 6R"]Nfg ^q!""] @ `t |aX ul` 'e=3dNXHxiZF=]jeL ke!P܇-=koRS=5CEEa%dqS<*/nK& OCC[gi 7u{ch#')(*Q)M(*l/o463.)'%#/A :\NI T*W 5 pY  (9*4 OT3 s7 uT\TI%.ZTf Y  di6^:Lݴ1ڎ8Q.)ugSnZ ,(~ewM(#1I9>Hv=J(vJ^ >'g@f ;#&*/37J:J962-)y%q ~(un] *  GQZQiI ]   k i hF+ oo~f ]ZZ   , )rU (2Y=UHP^UVSLC69;/,&yz 'Jjc y4j :6io~1vpv$A'$ (e   F M8sg:Y [ '(SxpW528DyL$S@%6oD*s&^S64 fa mTc~at* ZE&TN ]w^1*@45( hqE[~ , F]Bh4m( 4kK5;sQ 7 [/05 |hi2Km5HP4;!7 BbyV!G E{cU^٠ޛK?4hksFQ_0cv2 $m':HcDl|LL1I$b %u"(a-3M:? BCEHKN}KD<3,&!naL6Xp=f?C`dIG $|=E}M d .u"D@VZ3w=Uz[9 3 v  s\ Z@^o%od6$XpQ'HP?> H { x G {.U wWm .`&=-#(++b+k*r)=)\*,-0=6^=B)DNA:U3o.,b,+)% /n"kg N_ {W P{WhTy  B -@s2p   wrIy2EM\JwvPeaf${]bZ/AޛC4@ g7q Cd  y$#LIYK-x2FH -[zbo+2(>- $%*046}72)qK] x"4Q fl 0Z's<UYDV? KZ_oB"bPqZ>T'AxS%?pPV[`cVfu9]cjKM,mYh84f 9 9 & 6 K R .8c/   I-ZHA^2H 6>Va!|~Y } ad C sN_L $ * n ,9 6 nh/t6k,# tT"SP]"v#W-Gl#cVI@;5b$7(["-&!P.NGZ?jgw?::b}7% ( >Ii o  RB5# G "rRV1)e>c3  d @BD9W`*  ]CY2 `@ )W D WFzoR n' @y    "D9Oq j e CE?P" )Wj\$Kj3%RMSrKoC {jQoW3K!m<dOs  * Q\>%  m_U|6jX ";(x 7C  =gT x OV  % 2 >y #D9Ym~)\F ,!xUGO(| 2 a q Q5HzjLA Rldt' ]'JarjHO5#J_,tZdnX|S$ x^uc%b+2aqw rCXMs^ yN[ {owQ!&& i  'p c&N 9<x`$p 0 ?{9Gmje p A?  R}r;0t =>.i6_lZ{#OM q"{H$es>v1L3WbH}X<JMn^:kLIb1t< P.yO>0T~'Dkh gqHdJ YB G J$y) $v9 UMqAWNu -%/i!d 47 k dF W$  p `H h 8 %(i)]xsjLuC q c*x7&*2d)X'z YXoV_:)vx*K8&20zmiRq,.U /bylq]$ lgxI d` ba}YX t  )O5C%''(x_ J)4CR i }s pt,qlV` v rTX&HDm b va] c}  FeM /qBZ5]qd v  ` &w/t>\    }P R # .8@hh_ Am8^q h ZG<(S]<4>6QBm0M~.Ww1'!Wi= j<6g .jK}<'Y,F0KKbTrc.]=:1v-pZg G,?}{b~D Q [ @ 8 +[ "  * jwf0 '( h^ l < %K4!: f <KOYyg R}X0=LQ%&geE ]  / K $s~#mS; '  Uri6M6tl%io~ C.Z$Fy~J@.Z [M`o Niu4R#',.G0/.,'" 7 >w  8g } BR*(Oo-v $  Ng o& L aU ' ;g <!fzW'a_Fsq["4dpA^m$(=9Ho',0"s*%Y|b,b`RUv"g c9g[_j}.PZM1 Z(@E4 imq N{ $)M.39;U;,:98v5. ` ++# ShDNW?'  6cNr V<D/ N} '9Mzgt;9fz3s,L)cA aE: JQ `\0  xx 'SG.߽ގVl%(9a6zl)"og}#y.klxm5 %E.5 v<5cg.4&Y:F\ ^ JHpo87*_tEy`^- Z7OkOi۩ߏe nh$6D;]ݨ|TN/XxdLtsh|Y6W#/0 V sje$.)V*_2<@IDI`OOIC@?@@?74(,|>"45' 1 k  x(dYyT %f$# 0 5>c  [*u3f]T*7fC=se 2QsAh~7 }LAC2y[~^bCW1m0,E2?sޥ"iٟ\1F[fPXr[;g* N-1-,U7@]BA >946d738=9-r '24,F W (&&, ]d8 t0qnkV$J{ p zS   ,of9Z Ro6  :1 } s6}B5 i6#,A BOL kd AN3KUvf&%|UJ}!4,u5:ctaA!Q^WQ"aCؙڄؐޟ܏߉}c$"ܸmwX 5- 2OqiBp( c%))+G-+05x96x9=O;"658W98598AFeAa:-:82,H3:86(66S2|.q-,(?&I&#sLfE { T XjyPc1opev&e:LlnA]P$g>/ x8&% 1 U `  \ vV= n N l 5  8JT3_Z) NoTAMLoߛ3ޭVU|j(m`J59`҉Ӫԋ֘2n KT3h9cL:EK4 @ SR #%<$=$'*+-.H/1101o3 2G001+47n<=;;9_646U76F88754=1k.&.?,(^&&$ !4.@e F ,c 'Fe fz[\S F}Q4 w / <} _TQ. { ,  { # ) # 6;iy.+{3OMFhh݂bӖ($cy:Ȉ΅KѽiΙ1pҦdg |CӅَۏ^ݮ[kyh(>3v&n|Yf3N 9lV !u$&(?*,/F2=45265N54s3f4r6O8:=@0>:X7r544s5O56'64C0\,?)_&1$"G" !y>_13pB:BA v % p /EGRzO\&U}>6dr4oF Q d:k0v y M-%cTa+Hݡۖ ׏ 2ՕӅэ3Ϗb3 ͹~ /ϓD!νϨWҧն@LڼE mpX?W=USX +7!"#%(j,/123a46Y66789k:::;>AaB:A???@AA~A@>6;w61.*.(8&$D##G" @w$ G ( 79GX/kW,Te,<:oVQ; & C j & D ]  # 2 o   J rBB*N~޷]'ۀױMҖ AYX4;ĀRƢJʎiU&Q̣rΑa,zD#הך}Aݝߥ\ANLzy[    0#',/25:@FGIpIE@;6320$15;@ZA?/<:8E9;5>\?>y;c7B3m0/01201|-9( vS zZ@YJrHQ=NPMoo|ON#2 a~ I n W 3| / kf#AfN-jM>88MgIۤڕFҘ1U?_zΠ(0V̷̻}DOR̘͹X"_ֺ4@)5Jp4y Y\ Hk #%$##$E'+022H2110135j6652.R+)i+.15>9U:99976O6635c4321.i,**(&I$! ;"-% Xd9^9Z`n rPMIQ jy(B~ 'kE jg,jA:X (+Aj;pG0JG,rb_0޲ۻچ#LoeVuΣ(ΛАhה %(.7?j=-dnqYf;Wv.xx&Wnv]$s+-,*,/d2_6:'<;89}9;=C=,<=x~zx 0R:jN3j g$I@}(rh8(irI`[t5cߪGn8keܳda3V2QT8sk7u*MK#S] ['!}%E*/?00011036P88|:95333u358;6313321b/}-,-- .9-,+'%B#n" D(O jD f t p F58#c7 y{,DMYQh >q_Oe$9W K0Mh+3ji#Zhi'$S@91.>S${a)_Cٓ7s'?h'Y rEQs Kf%T~!&+-,*x))+.0236630--18D?8DD;,c"&2<=5x)!'\($ 95i A M[<+PE6N5>Hvrv%O (J@qJ)]?HvD) WhC"@?Tg>`"OOY0s|*&:_J7r&i'c!\R3Z4e$t1 3P(O &)+Y1!555465/:=}=<7<7,S ; %6AC5:& i"--%q,   IN-3,Kd0 Hq ' %^UJb&B>5v@y~|D,tB}a!^3]nR:2Pv8U݄e;_ߺ(I( rGWUyr&8(e, * &=7!$H$"" ""%'9$!$<*719CFBn90 *%n%)/r2*.Q$8 h +=/D*`* r5<>wF Cqbu8 #*(=)%da uV #<-243z.u*(}'%$B#^q$_%+.k-(! #W m )"tWLj=k6}5(Cf;\hAx#(k_2 G+$z+3;@nBAK?w;6<1+'& E $/r53)!pxNGN l L [ @WыY׷,Ń<g%.ً4,˕ϻIܿM`wX<  ph_ w X a"- R = *; >K]d`4HaB9[Yl21|8@WgN_bGxS\C8&S uGJ-ws49KIIQ(~[`ZwK@Q[@ٺ׸>NpI7$h.1#~c#6[E-o7X:lu4 { jKfMZ!&+X17<1AA-?:s50+Q'-#! /!*/2/|( VS +g D9Yoku1y8s/* .#n7 ~? 7 A LA0  N  f0n1z/&ضڪu߱ۼ&n)USأ׮5֒?Ӟ՝f,SfO%7`{L'Ai*$eR&li{I  s"O(0]9BHqLHLJ^HD?:62E,%]#%-6?FMPyNF=4,]&! #%&'**&& L)d\ s"YbWUx?GA$VB~u>3 6 = a6 A h j Yjr(.PjJ5MDh;_uJJeNC7HIjE(Xjߘ<߰eueRW߶; A's,o-,b*) (-'Z$C UD&-/?-&OCf[xKE T ?"   + M*[; zET{e#%#Fsm V_X X9%|hc_.0AG?ܳغԚְPۊ$ݶٿ۵ۙ}ަ~Im_ 5 L.TgO 7@1"*0?57751+[& DdKq !+0~1L.&'.i0 @  8 K L7Bُ?^@=30|*Y &^: /!"i###x!+ \ T[t,^no&$8#vT_\v$]YhCH 6# N,j >1%#( 0]7<>`??9}1)!, (} "*o032/*H&Qe  R h ~ F?Qߙ7i8IJ *TJ0Bi>C~ y\C$XQnFDMZ8 . &0WI0^1v$rEW % +k06=CECD?@92,&! 0 $K,.-,9*'g$@ k t ]Z } PZRYh) )Jfl T  \ߊުZ}NW a 1{.E7usQi~`"-X}#?"9ߒn,M.Q nS ,w_" ,K0.'( !`!)6 EPVaWS`MEF?6* xo C -7?A=5+!Dz$B&s,n qq  EW8_T I/;: jkNPn57!, NpV @7ݣ|BrCJv (!ԥ688i6\3/(z  z ^Kc#*(!,/034k56a776(5)7;x@CA[80'Z %,$&$o>KRIC ^#V) A R [ ' (d"")z-NN^oY,OMa{O4؁i\ٖ݃'O1bOޱDWmRJ:VNHf.)N[l!%)[+,,i*'"$ nQpV: E eHj&4z}.gz eu] [-_ ]5_h X h Uqxz WY<uHHD M]IJ'= CiZ S|LF([ڤڝ :G@Q57܀Eݻ: m7k&~kJYA> Ja2Y"O(_. 478X73,!| +^ nrt#')\)'% fj= RX,w. `Bs _ Q  LceB!<-~ P) a *>^OUKw. |VgޤD0x.'XQ=6+&ݿaY.6ZJ 0 ov# a d ge" <@B7^"s1}}y JQX[k{ Rv)0x*.`/Zm#MR~JfEm_ K0Yh|:}M n3[XlL%Q2#  (}Y,c4{!!E"G!.\:}_ ? lj  ]g  +@,vAx &3q %6fmiH"TWv}6s h ]MoZ;":hjv9JhYTGX_#UUl2d vJ2S y; Ct&um  J ,8,Tf= BYx\ H hR) l r,lEe T H DH+K\E|XZ Z3* U b5 - 3k( ^5($8JbL:oM/!RVArX)0JnxN(i {s- =C)pi * U _ S  O f I } -$M53Zybbb3q#r jNs.sAc!+Z $ V z ; D Cq0SZ@&)*Zy'cOt\k\%{ei Y1_(aDsGK!yyw E >  SHVa -.z ;kQ  f|QQbD x!;nV _nn&9*]4n /23*0P< \ N;p'u+P uZis :4# Wo  ! P"St v/ J  Jg9 W&! .H m)] W24J k Q  1GwCQS 7 X :4,w _J 0  kka1 " 1V^ /^ m[  ] c   }MH% FR}"!k %X * D# # g } B;[WO >  7 qZP t  =^ L A  J H "e N# l     -*G v % S^ 0 2o(0{> 2 C03  Q&8h|M H %/ ,$z;) .  w^?gAN 5_  q X {d QxPT thGY Ns/nQ  ]@W \OWp j@J+= zT 6H<T,F }o J / 8;q4Ndc&j~9t[Ul E  mR8j,s=6C`O B uygqf: q f }@ - ~  il p qi` O : Jm 5 o $ Mr> 5=$< = g  ' ur(W  ] `5 o `  EC  1 %_6&38 I p ^YO!ha,|,|f)*[AU IPCMC" }  n""1QSB  '+h \ q \es ,  6o 3 Z`>$_/ vtE1V JAhyaIb~~D}GS.G2/ H1C4R3";O+)Zډߔ rr ! 6#(c iOR%|A'E;1e8 kD  2c ;< | r H !K!k!"?hbG i xlO v\p=kC AY &q pT(zޭ7#SXx@va|HgFz26˷sDܙ޾ޣہ֧U-YQS>k֡Kbn-0,K%1y-W2~$  , %x r % G*o[ &y> = f(t1 Aj ul:tA)R<"h tN .2o2  2 & +'.0349C0MQRfSSxVO&0|4l(d1P*ڿ H({Kk}5}+tp-u?v1k#UJ<2M9@4(oҊ^¼aܵvYX ~1 dR, 8:2)%0%_%!< Nj(n 5B `vj e & I,?BM[66ߵ0sӚעݡJ6* Xt~E9"[r?oyGlZ P ! c")0458<@TDWGJNS;XY?1ȁQCW~שKM8'OtjNe7-14}̐¯JˏۡA۝w \' ~"$@9LQDLE+C>n=<6&EZ|G{P8^.> 6$p)w*t$om4 l {z<" #Iɧєrcb O2x""[ ^' "0%~[%,)cֈڹm\< 1dvl!/&+1=5447^:=?PDI`QA ٶհӯr^P 1>ų7!P o }^hK2&$8ʅy<627ԏɹIeήL 4$7]<$?CGM}X[#RKF@8 2.0T'%oʅɖmۙ+=@ۅ<t-"'+.C-D$-KBxS {}0^~pKRoYVm'fcU$2l@E3D?*;p4*nIikߺ|ȭ’ Čg˘ ܫ2/v!'*+,,,-- .8-$*3+;,2)L$!"o(-e16:1;5'֞mV"֯ﷲ ¹[R*]JkpmBN, Τ;<Ycx ϲsiFE^VC-+Oi(yxeiaREK>9=<7)?dҽ̘{,ѳBH N,7==7',!!x-130-% <NTJ%˻(Ÿ#~S3DMTZZySH<.&"AqcOc2ؾe(4M>FzIHGD?;D8O50V, (6%nY))T6;94/,5 ':ȋ͖8 *rDe~B}y,uu z\`0x 4З۩[w󲆯{%+ +MpmrLi=820/Q5)~e͖-:<&ј%h%R7B=o*& S}6 '74>::=?:~)jOZwj͹ *uLdX/߁*@DK RVVM|;,p%wmҽ)(X"ͳWiˢHk e. JALO`QSzR+GU, /J:@ɺǽ+Gh (4==:+c\"G[|&2c!)$pǓѝQ]T+ u6&$g!P"Aj)1;5kѸI޸)÷'!K]guxy}|y]oU7 Vk%w1;Y:@9ōP"H*P+%kMz"h-;L\hcR'B? ?8/$#;ķ!H!HbutRX9"$  5(WsHlM' Ж| Kܶ"0?LxXc^`Alfקw|il{&i,k97ii'-<,dŜĻJ @-~>-},^َҨ|D)%>Rm z¸ȰmuN~ lkB3tG>N i XKe$#2^99z7Y52.* x a\5Cψ]k1^IZk,sjKJ i 5aD'gE'dvcA_f b"bΗխ:Ҍb+$24-e*ޓ̲x[*zu$'cl!*?1I89+ ܱK8ݺc$*+5Jmw%ӕY~%t1#>7N)i&cZբbD [ .  z؜ܖNC$_˧N  Yj'} L \x)Oާo^)۽e\ %[3B?LY]pJ}~kI!PP2g1@JC8<${fը\/aeTI5%!#a/ϻJ!-$7*$ ٲ0IB靊vÎl&1!r,Y W'H*G7CF<+rW2t}!-QlNŢiϔ "є@.LJIa^h!`N8,^z<"&! ᾊ =7-|4T2*,na;@b!`/!775.S_ą43˶0((9HYls!txy$v su|}vz]3utĹރ7eE D9*!V-+LLJt[{D:(0bAyʥu ەxrJȣ T塀֩&d'](+%> ! A'^8>C!E>V.1<̓crY0A#IJ[ӦP.y7:H98,,JMαٮݸe- @C3A~6!y`> ZG{;N$4?>Y1`fx<ܨL[= @1W/84*s  /6:=?F,H<" VL4$pjRn+:9AfHELH5se4េ'jW3,EUMfps[d Fe# 0/ĽĄֿH lrzqbQ3o ܛTᠠU(L O )I2 8;5;:<6F)74*Ӊ w" j 4VQ[(\2A3Sh4{iL0D bۿ' w1ۈ×k.Jau~+xeM3'º օ3$K_YZP?J&h›`*q 0RhgpgQ6¼`,f;):W?z;0Ry{#|çk_#9LU1TJt;; %,/1E/( 7GJ #(LFL+!4g"%F#!!#&% hX B|F݇zd?xr !)0;2\.G)#  O(Zrh@ ZE''"#"!um#KG j  A8si5PrRw}h`W9 *M mO@JyQ 9iRc +;!D#""! k0'!Mo{?wB *=9{ tM;C[L %b7EeF;.z"rc<%' 7 h~7eV=Ja7 y ?i Vv T(| `q|h  j\ H!rsvy8 FeHv'\U/5s h'j[ \2F'Zanh+  \${L&-W24%41+" =eJV Xtp+NTǸԡ %+.-' \} +8 <.9/mcTRܒȬlwb?k ܩѾ9Ďļʂן$ dMkɸz (F 4ڕCԲYqz}fx(#2d9>HCFE@3!$yE} )(X P:iJ4q y#'*.T,|">Z  33h"&+6,#/ A=W & `Py?׿><3W,i-$)p..;$2AB #2:<83'%:ٖ"؀ Ce*L6?C@4# ۝d({Ѥݫucrصʕa#E3#- 561 ),p%WN91OՂ$޶>'p   D_ {fc#rRT )/U!"1o(}.13(.#[gH ]~8<+j@g%'>*-36.9?hHJ-JB5%S9df W u ;| \I )i13g."'(0e Q%-0$.' Tލؤ׊,(5<:0["G^|L/ٸ|) ؿ*vY##)?x  _HD  ry١/Ө&+x$: N/9 *EwTRZb< - K{2E Q (1=SL0XTWK:-*!"_( +#Ylޕ+/.n g,krz"'v))'&%%$W!ATD .!:^;0 Z7t rUL<Q}ܨ}w S""C, !ooԺ'SP >%-10*!J ;._j_ߡ@BQow ,-tDSS $Y2ܴypldniҤu2 ^w V&{q 3&si r@y'n18&;h:X975S41G.(X5 U><  U\ *2s[ASe!#"&Oe _6 s=gV[Pf 8MFk/m 648| ] :U"p$#)6( j ]t  k~?m!ݷf:\G"w G/>2,U6W%l7dܑl8*{ ,a%L+/XE%RQvyw9f)o ns 3 U~QL;? .Ov$(*)% C!=p ^o Tk%ZsHhK3 <$),g*1$[ $$  C>-(  'gl\y'v04q!,   I<~Klijs-$ h-  0 ;SU:isjhՄkQmtAS$ >|=  ,'ko;Ln ecGX&ndkq;;<-11?@EQ8 5#'-*(#e#)'*/4 [ݞ9ƙȜWes~p6b_[S.Cm vO d | z/ sB l%tk30"1rb)i%r ml==. L8p9nNʥVϯk_ i2   171XE D) ۍ.t 1.b} ?FWE s  W r;Nm\ u; Xp($X$"~=b c7N}O y8_Nz]- <<~" )p+G,#b ( m "Vr`]ޱ'QZkkvq B A1,C V Z6|8W1*J[n;WO9tfWV:*Gd!;>d@׌ٖݵj`%`x mC. M+0{y6 b *_m=y h"u%7%c!+ ~ "fI =C  \+zVJD !XG2"$$! C`?  pFA,VH6 s "0-~) c S$}8"WS($ O $8=P ]v/   /\J!Aq1<<,~x7hloH X 3$n;pZV7hm5 pߕރߗicDxj[ '}qQXXz&s5V9D =! DSW 3ZpX {5U  X3 T7=u/;%B [ x!!'H n$#pE:? ]3-N҄i =kC w@IXuRMdq* QJ`k  GZ8##&'y%6" Ho eK1xc983Nb@"$O#!+r ,d&\+k/ݔ >FT &  Y38 ] "W,mdMQ3  `  "XA ! 6!9!0%E ;Ʃ'<8\ ;_ܢ`Ar4 `A8b&#(%*$F U.>UC87gng ]R?Y&,M I$('& = 0 0 r .4Wމ"gbH n g Gp{ & +Vw^*}.82.Y6Fw "Brg{aKd gy bl Pu  F>-ax"A :[j{MSl r $ ]0 x+ b x+lZ aAU+- (P"!" V$5u7Mw .DEd2ʀH/9 "a.H3e1*"Z h):# /(+9 k7Qbr   [ z 'RjBSjxI!)4ndU424 3_u Jd . % #; + :!Y9RW\\; k,n| j eI ##7#"!!!P  ~ -}x TI> R* sM `_niAO 2 zߡM8 ]Z%5Od4P7d=m sD` ; Bc RC |R,ۉT. 9Lȭjp3hp 7)8!o# r/LiފMOW?aC k &M &W(]% 9.@ "?"1] hV[ 7R: 3 ~ n k Q -7$ H H &F z1;/;q  AM~Q_e t,G_F |kSF3%8v)Tw{ 2   `$zlg Z%>z9 ` i^j$TvbmhX y20f$` oJK#s"e rFE*E=Rlr \ ^ fA H/K3m m:)vEr34)$ {r@z  { 3 u _  ul</dVX_~eag;DQ_+U  : MY5 yX:(%WxhJ?q:HyFUL);anf@8i)=GFL6^JQ : j ) @ =3F5[eP> e`NH<3AN mhXDnlHH! C + &8f1qq6x)$x0sg E / R go`V}HVcs^I)+P54 g  fx5 U d|1( X""hDs5xoNxf'Os/7jZ 467`8-^HWc`/P=%MT5}(^j3]<7+V~.j_cz&[oi Fit > K  ]* ~0L9e !  P%('$2$&% Fk-= x 5b_Nk H\XBIrB~ Li%QkIvZ!A< M9do"L>"9;7s!I K3 F,7'?]8* Y  NtjTQy2!6"\##0$o%'Z(d('k&$#~"$(+-\-+p*)R)&(;'s''3)S*)(&#!<T?z  9 6]wkFq=)8JR%e {ixd5(*HQ={ |vICD-^]<?C t&_D}?(MFozPg X  g Q Z<B]XW !o":#Z$_&*,-.0K3(5K5569,<=; 73.1Q0)126 =B>FD>5.*) +0.284KOkTUYTB# 1 &T:N^aZg@f_ L$8:7?8ݩ*   q:9#!Y2  } HKJ>Qq  CC:([IՔ{DpH? {4I  b&A*/WQ hWR';U ݾ^ZF'ısKź+t:ű}|Hƞnjň1kä'{˼ͣӫgְځݯ<|d/)R I? $&['(A*3,-L/0O235m79.+!:IAMNQ|THVW;VGQ2 ,F);3A4i!h 8  W \ ߁κGۋa6 ˍG^~ݜSފ_l8&H ?D8 oVOx] SW9S 5ϳpN^қ S;H@Pz _eOp 7#U&.*y.2o69y:: :::{<74h8BFNSMTxTxTUJVlWVH7;(." 6 kfu3 1 B H gLS&8ܘйw(Ԭ}V}׭zӽٯU|w0}T.  8DzR %"((.00.3*o$]N 5l<D&Yty][uяzη͉̹ʴȱCD{ߺebz⼉ –0x[͹kҹ @>]ٵrD=  _ Y3xk "# %&+()(+-H1859;PA:?8l419B*NRTUVCQISI2FZ@f<:9:9?8l5,13,*./2I17+l#,, xHFh6.$e8~|rַ &^,--(.@-+'"' 2T" cD D oߢ?9ն$_ӳ'CϼΛhqȘH˵goǨƆ _ljغ0Bv i b A q 1!%*."38?(F8JpKYKK%L3LLJBD:k2*b${ :.6[ > fP>iuQͯ͵b!]cD}(Q . x }!#&('$1"w  f 9Odk"n=V4|OӣŞⶪa<@ʸ €OdD^@ j= "&*/49U;;=@DF7GG6HHJbO!T9VXZhUJ>,4*"#%nZ5!! L h!3 p j}wʮГzӂط@ M  OOgWT=T$ S $h#4("*--/0343%1-*,&FJ`<`JG{blk}®Vd9.$ Ŗtʝ͏БҨp7,cbV  S Qh &,048=tABCEGI^KWLLLMIRC:/9%Yf @mx O j ] Y)J -g]a)O=̭2ϰzlVm[Q chSN1WT_eD /$%[&J'%%y%%g'%"wA P]U:$h@Fޮ/d֫ӮcM rı˳Ӹ)êԝ[/$rmE J !"#$T%x&'()+,x.0B3v7=/BFSH IeH?5* o@ ]9kg{[lEv2U˴B9s}+ڦHGa5 ]  u2 . "%&\'%&!'(**'$""(!d ZW V nUEmZVqtLՑ3g!mx;Dd $-C &k*l-./0 0!/o..._//0259:srx(:*2A"3 4[ j 3 _ a>'](,Rfnݔ#aqq󷶳w©Ƕ@Өڌ*SQ5wߊэq*MxiS "+4(~5FG*qVlt{uДcɸҭ=;F\ W݇W..K»%,Ėč5ܭۙzVIj [1 ;$#&u)*+,/e6=qDI&M}NMMOSW\`d`h9a%TB,C_>k} PaC\8n;yhݪ{oTU l8)?16N;k@?;6@0,,-.'-y*%g:ON^ [x| O rAC2QM *l}XR7_~>$UWӳdאP," *j% Q5!'M,-/4;{D*OX^bbbeecb~aNaO`3bW?Z/G#>)Qg r^I R I   & /62]! 5 L`^:I)>uLZWu[W*TPNC;>=^9>-]ޓy1% $U$#\$d(G2 ?DYC7%!7I|S35j !4AaF G*A6P,U &, kJؽ#,ͩW & %!)'v0oLVd! f s+E[X5f`id\^kZI[^^[U N:H EBRAXA/@@j=Bf=-Nu#=EPOWq`=0c $#ҌDߍF) F"*-5CIGBC?i9 V<. J4Ze4(ۯ'۽\[Y o \Q5. M%B4k/:k%g! xC^En.[;B%Unp UC73 l*;6::p962.S,q,,`.01*3BȁP;Mb.()]j|&5068/PTܸÖؼIάo#(y++9M\ejdeXSIR:"gM ֿߛC>$('5%",V('͟; s&-n26672$\s(ķ™ܜ1 )"Wp> Pnm~(v: H!d Y ^uX ϊ  &.849;:53-!; |)TKd m}e '0}ie9iڏ1D+S78s53/**D#GxA&z+., p7]p߀l3 phӗ ۟MϣKz { T)48* }7pի,#MT9YvT ; E)/70/.(fT׹eƶN1IU ok5 %#% #  : LnT769{ (27!71/)vN U%0=HG6.  6=uGEb1HZ=[?H+y p$}01_ /2O2>)ϖT񤑩E;ؔqD&F6CPE#=0[g؝jט  "S$z%+:N^kep7iXp@$>ӕ'V4+!)"1670Y! ("ZgŎPAEw % } #aQlCҚ P~,Yqn'.231a.&-' lGFh "-8AbJT;Y_ab_6 ߸;) Xߵ 8 'Q/(c{C k%z'%F!7O8VTŀ7[7_.n8)>4@=Q80&Gk ">!DfwȼC xIE\ F( * bD?`w9#(*M1M7?EJPSUW\|O+ !I Wm-25֝AĚMfhR ˤ~.$E$ n  b ?RM S.>[J:RhUTQMMIOPkO^I:A8F3,&ů"o\}*43/0*S B,<nhH Q !.3EhONKE1l ¡ǂ̾ע +9g@@9~,{B4$L rڙ!p'$ L?{Ϥm͡Z!ʺ]  # R q Qݷ;69c\dbU^!e"F!)p0)\e[!"B#"y IRͨɝ+Ԧ%]CD^ &sYG4 ?G d ',-*K&!(1ЀՔ׶ڄ,!p/3+f5߃y˔(;o_ b( 2kSc`PN 2;ʨŲo!$\kZg^(068/ + (1<,GIMH=jTa {TB=LA   !y)& &--'+( (m fa evw>Gd,ЄDZd-m>xPХEq8Qo|m#8iߓقӃ{FX!>*18>A?BR@r<:v:=CGTMP,UT!6 *, n["z$5",T$_ hO7ҕ n E$(+***o&Z_\ ~7P r!  +M*5  F -" t'/Z53)izp qde8'CAVMLJ JqyHߠ Rڦ=ӣO=oHԋ.$h= d>Ui- kS 1H  S"#h$&$%} lNcPO !$e'+y/4!8A;AHN RU2L(\XPZ\   %}*( <9S%~)) )"R I\#)+"u lrgy&*T$ &',+:'#Yt}AJ o+--=/253/'IX/W  [= < s{(| ]|Cj`J^S"#!U @IlA8 IJeZxߨbj?d`T+`mf0k 8! %'()+~2{<8DFtHH~Eh?71-4,+U-.e$$Y E xMU8Ev ` '492+-'!"W9= ogG 8'd4i8BtjXnv%5 Tp&-00+4$0?6dGs "CpT^Ֆ,dM8ʘʛ?ЪӒװV ~ | .R{w݊ۨat \}b 7 Wu .ΥѯݥVN!(/49902V(b mL e'{/4 8[,*Q5DOO>,!&"'%O*ߙ LO}2z"RLP( Broh[3!#; Ut 8\c i##" gZ1 &kg&v` w  X ), c T | /: %B eG hR ZtoE݋g2jaԮځM +M\n1 Q۱|I{ Yvsxjm9Vwa+F CB|"$&')*<&!$   !t)#28<?"=~8B3.,++)&" Y \ 3v!(/:355d3M/)$ Owe+N^SA:1r!Ch( >:yD(  K n 7D,ޗF܆ߕS=m7  =;_Ti=tYLo?nR0d-[lnI6"hܠ}+k=hps:,,n 'fR > ~ n\v= -uCz!m * i F_ ##S+P7AHrKG;.0#1!"3"!_"0/Y4-5 "# 6*,~H\uYx7b[9^|Pzyx `P Lz{8q9?FNU@vQl5ns#QqtsM ^.6@6; >DJC!hpuȸȧ<@ˈˮ`̸ӓ?S/-ҭҶЧЅ} $P d$׺A\xr<ٗ߮w #$1x:;J;81,-f2457:?NFgK_P Ii3$fD xW~$ }ZY ۪ PH> 8 0k8 sne]Ca%NxVhWڿ؜zC~֘?" QY,3U/0x |>Z{8&|80+DHֿѱ?u6\.c޷@,hc)C[<;<9N[ӑҸԁӘ %ԩ/߁io P UH!##4'3--368:n977;j@CB==9"Er Y A']d,R&c 6E L J:  e N޳کٖnx}ԋ qsxD^\Pi $&&&'A*2+Q,P.023W43/,y+ )rhey}uisR;InIWs% _h|T?kӉ֕پҁԧݭ46) y)nK :^XV tj C&/i5164P3~22w468W8Z9 .֝5q&x01_bV h>8 a !$v&'$ om{}  6I""wS=L < |D53j\P4q, q*^)'N7X l؋KX00y~@`30Df.VEڮۇkL9 |Cn7iaHD.pUb8OFd6 Y&m.3<`CpFDjB@@@@@?=;,wmF2`@R'x  Y0Bq7(-aJ x }pp#h:zy !$-)Kv$#V=a *=045[4d,(Z*-k.' +ybB]cx H" - K9]6{Y cyn<_` I ";K-EM>. *"i"DMB0ֻӚ:MaK%߼ߞ؞|dމۊ>x"̅Uԍ߁71/lL{l65خc6޽M!<0:y8) ?l &(B,04669=?BtEF4E&C@=8"6 H/$RiWOmB ` b7BF*=2) &29731.-,u*'C&$# { y  1U_r7aU { % * N * b AQ~JAs"* $,uV8_$HNn=څFӅRҕ&ӳKަ/ߢ7۵*ֲy1T׭׭vtڠb.H|3"c|U߄'||s^Fo$k WRJ#%$S$$y%"%v##c$&( +,|-E..-% "7A=,,  5 n| 7  G +!583X'B?J+ WKkX>P<7 k B2gk5d8i p ?U9 d *I /0& E mt& H^/hsح׳ס؆QF XD Lا9Z*ˬ̧=ow%ѽҞԒՅ%֥/HѽΓ͎͒)Ӎk:ށ޹mWkh| 1 RD 61Eq3ic5 #'-l1 468^;e=^>C@CrGJxNRTRNK$Gl@7L0*'&%p&F(+",i+N(! j&d_ !+" qtZ GzQx1/TO` [ ? - 30><-N hi m "G"Q c nHDCU` Wz1,z˪ɶJžŷčJ7T ZĖħOȑ@pʽtˑ ҁԅ3d>F͈Ѣԡ\؋ۓx|pr#P G T@k '31%:>`>91,**b(f''=)+.,113w7P? GKMLKKfKLPTZ4__YN@!7A/(#!!-#[%%$=#@#6$\$S!n"JU /':&Cw x\_YTm.Ozr0;F  TGK=`C>R2d aSrM'b n'i?̬Dz ʐ̿Y)4U (S҅(̉2ؓ%όΎzO](!:uy]ez 29"&[+-/M26+9e:9D86k41<.+)( *-F16Q5 /+ )'&R%#Y!r]<_o @ZVAG&\v~>r gX^,2SM$G%(t ! %7M H b > n^9 > gB"=  i 7G^`z$dWw$ka"<@- ҁљѥQ]ƴֹJxΊʹJxڵN$8,ۧޭ1[ݒg,QYJ_T'C%M GZ`Wp'-/0g34^530+((+4023329/,***,/13O69X5q~-/po+z|4o׌͛ЄO ^ėsͿN?³&aY3ɧдJ'~+yKm2(n="5x:* & "q$0&'((o')-t//613M7;?oA.BBBDOG;KNOPRVZ[GVQ4LF@;51.+'%$F#|" c% |2 )oxD a;0h<^@|=Q V9i&LMgrJLC_<|LzmS 9 ? Cocy i IC:_ՇΒ0ۿ;̖3ɵaѩOʐȸ:gaʾյKj'lrJl#t )V \4V#-&')-00//&012459:M7?43_3Z57M657:=>AEGGFEGJeKID?:3-P+)&"L;  * |  3*i=]8Wjx@ Mu KDcp2ZZ@i|;l% = c!$'*^+~++*@* *^*y*)'r" jn7z2yL/j1ߤ׼ҧ7ށl0[׆;ۭ|5t6ՓmѴ^˧ǜv§ö Ȣw F|Ϛs"JC!)fJ=Tvo' n w  JJQA!z#\&R&!$Q"F"/$']*,+4++l-/2589:<'>@CEPGHwHFB=994.B* '$z$x$# !+]' ! @  a k),-g2 ZF7 ^T/Nx6D.W / '"> >|P x S } d y ~ %    #E~)1Ji(3bչaʀɭ3̓tŋiż]¿9~6bMTϚ/ҏ<:ىsnٓڰ4[GNn 35P}K .]i+G$f% #' **Z++,,J.O/10b0//.+?7 3>-?D=* oC! {SO)K  [0[ۥBq=a\kh u[I68 B#!0c!#(,:02131.,>+ )R%D.0p<2n@xG;?(ݍݏܽڲK˂ Ɍ2I8ѡx:E)4ӢѝН 9*یpԫ<@| gHoQ+B\ r ub'z&5'2$%%%&(*++D,,,<+4+ &.//P1,\?k)3-.  _to_h'çÿѝTVrԖ[n G9 #i$}#!c'\3 Ty4,,3,41R,# [(r Y.8!=<7.r$N  6 R0*02F4/2'N S- IDe קPХ1LJ,Y*&CqʒrQԌibæķxtdT\Xγʊ3ˢu߉o82;JiU 5gi L{ pT#+%2k675f1-*(()7,%/o3u9<@>=1| [.556:=@~jk ".1f+!xM '$%;ƪC\H}B' K-s*ivS!L*-d*l$4 >ok2o&I,K+r'%#X .o)9130*4"k\7#.4=5/'<,  9;i4R֝D}6CTXR]ԣkD/wʾƽyxŷܴjs9΂@DLO N+#!$ [F!%*0V6%z9je6yOh F9ʟRPʷk_ klQ6 $QrpF E& U%4}>C?+EZmڰe~ X&u8cB? 1/U{1&181% # L1Xs G S#!f? M5ؼp;]V@x< G2Yo#lٙǣʮnfj߂{4P4 b 7K\dcG'S/1H2B30+$%.c7 ?D/C5]&)63b59?G I)+ '15664,3j3;4Q.YiX8 o(~=(I4 ? z)ߟ~ #:" у " aXXdbf 1e c5ҩ SyG77A{{ x>ݻf*Ӽt^|OpO*C)R)kd_ln/H / x n Iv>9!<&k+/.359;<8.f$ c"29:\@8D=MJ/FE)4>80M)",!. >FJKyJE@:6 4-1v.}, >KU&XbY_WKSOUJ}$zpO o)>MN>Qgee.7(" l=t #ͥO`# j$4B6:'cS1b6U^"0Z2.-&"|a 8NVP[J=JEEg5+`O!$c?iݏ˥gtb+H.VwʆAۈ߃@hUQGĖxܛ|ܬFd+ηӾ}F[o^˩L?š֣ r  9-iY)_Y*}5T<L2a#˱Xyi J̔׭eF&$"eMrQЍ߼4qY8GzOsP% ( %  ~ Jw%B&Oqf8! #L&*Y-k149;3- 1DO{OTC|.dZ U h݇ nU`%d$M g_ NsP-9:};`1&K!`W )G ."%->32,#: +,k f? Ճ $pxؒӊH͕sּF=[W1.+c`+GLB2;! 2KML$,u0e01358;%>;'Hd:*!ܴ#Usoj#v%yTie}{o0P3 mpO6 3C  8[]B#. " SB[2qwX7&ypG{܋߉ KpF`UjeE)~>q 5 ,)1H80:y7<3/i,P*?)*.-07d4#I  2?jBABbDGKOqT;Q@) )/,$5c *vz 7 vop-քԢ Kr CWS0  ) es1 1F`eAH YjMRݸz]܅ F[ǀF^Ĭ"G~(1O9do7ej/2,,aW#)/5<>P?@5CqEtGG/GLEmCB@.@K@B@7,v)29:9:= A^GMT|WP9 %[ Lw 1w[MWsa* kdO%z5tLاD1 <'9f"(-!)77%T i , S  S xpC9tD2?AVbOӻ @Fyaȿܼ,[¯Zʂ5ݢW݁Spoܓ~!  '*,./_.X-+)X'"&&')& $0<AKCQE=GHLPOSV'UM@V8v2.*$)L Q 4 W ( &*$ [("R%&"ya&l&rD!Mv>%b\[p$v)-/'d . /69cY4]RuNS_FzCy_E%Y_9JI޿ܽ5cڬ.FUؠ׊ڗR3BEz5 N Q y &!$%%" c p(,0..0 2359??20_!? c>I )?C 68. >m.\ P Z Z ,59U82*f$7cP @qL@V@_ry΢/zb೹@3(צ'[8 n3OZO[w Kw ,8AFqGD>D7p/) '&').4;BE2FDDwFIM(QSWZ^ba\sULoC=6/&$o =s{WMJm'Fbo 9Ԓο^~$0s?`uUDY$jbQ{m 7/)$"0%+E5=7BADIMNIB9./(+(+(0Q/)K!x ?f2LV7nn 1hsPM2k 5.aP!H~h&1K_O$!h֑Dڝ߷zsܔؑҌ^3RsO&´¯Yņɼ7+Gھpr[u0/ U  \c '--5,+,3-!/2+4/>,~0<>JxNRUWOVK4*)G.L9=GQXK^b8ecWB82.*&v j\*2 O'G f nN.k1^Oڑ޳d)Ha} V . ?a@`u:$  XhU3Ը ȊdDhɇUq:ӏЎzqzuGqLdNJA9 \ Tz(f~#@*069<<>?V@hABDE(IJKYJHGGFDGA;n3( )/] Yz`Y "%&&'%:#$3"U8Zk[Lҵ~0MM~$+Nv4Q~{`h1"mUq  c( _F]YS:6Pzgf EFJOXݿ 7"&za~'.Bs1exQ /ޭ@% E{!i (g m&L [Z eY3 ! ! !"# e>H{$+R164b1q,'8$B!^.wBz:<  ! x,2ip Q };pDv*<{ ?m}`` GZ V'lbf\ kO  #  ]R>FvJ"C,+ l spc48q|.* ?wt=M7L L!i  w`\ #hG h"\ >1 Uv+k UF > ) # R5dVqAZ~  ty|ZV^sx L +\ xfH [ x )'Zbq }|M %#r\ 2wGIn{D`6W,z3C!m*G G3 UWu!&lTE<#IT "!{o :  * Qt}7[mjV3nZR8 GL  )0 3 < M O ( _ YJ@Y2TxhHhc-0 Qpq,Nn"r} fSLigbT^xB<d Q*^`nR!xQ) N!"!$%&('9$*j|R m  m  L *"S j aU' ol*0q'-T7tqeJ <t ZhQ!rR^uDn/LRo^qHeVH3@(N0: x 5 $ @ yw{ F $6w9= Y cnFeECf;BupO$o2[ L J q @H"qV'3,f /6W,S;!6xW6Rv_#G+BS/_f#< e > AN!!D``*(?}$`82 "[%$'((('^%"E0 B=GZWq<AEuLR$ 4~Ddldy*~ QQhL%SkRHk.E~A,n z- +<*ifbL =3ODT (S ~%LW}i\(fS  qq V YC*xUk ; Z~F|#^vVQS \ax#U} ,q" cl .Yl_7Kg`(H G].-#l ?;br33 E A4"g !#!L.Y #%&&&$t"1>s4 Vt ~~K,:?uPr r/1lyw8_{v0vL%!l q `'D !bQ*Jm17oc`0/ *"L \5<] \ U I "e |+x0vyG/ 4$th~X ' M  *v1eK?cc*"c`)Q/xIy5r,XEvZu x'.zM aje%]FK.QPz=.I0 E) ;B  P  Y 5SJF~)FPbF $i`TXZE T r PQn| pQ}(0:#8]wiCJm;wmyJ3c*N-2L-b#k}v T P.6. t #  e F  c| ] / M ?N_ )uHF ;0DosAK k(h*=0qbC,::^ `(N(A`5pNar}6mi,rg  " b @ 2 } 6/  j3!\.$(,/f.)""~( GvzD g /RY4~}2A?#dG6` ^R6DUVZTP 5`Q{ T" x hm$  :6 ou/ s.O 1C}L ~l/xL!}Ru'L1p[v/M)>e=>iSbP$(WaF{).nO# ax|Ko`A ,E"$vZI>rj 8WlRV_c[- 0})v >oS  ue \5%6_ .h{ [ x D  m{T3 w{: WAu!. F )b=/ #6{[\z|Wp1QwS62dyTfXB $D  7sB !L2,Nn59+(W!h/]yBzTaDk Z%>&١Ex! 3=^4j8 ZxMݢݫz $ p^?7>-{ 8  rl,*aEE7 sNqS" H(#"<(zL qY% g> Q d[!d$) ' "2!d )FP B K!4 (+,F%&2,0eC4>&*  V'.T  Bf1'z':e#R#U#JHQC "+3.&h YC.% `$ ti$  )/. ".r'wo'gOC#Q;p13 OC)(-(") "R![!*)%4"Mz@3"Z'$Y!'("O$1'FD/u#^+V450*-$a i )-61Q '*W G 1,F>"G r .!T03#%t \{5W&$*Cq ]~ ' .A-5w'_+O( '#6D 3 5X#x&8 ,5&qUfL"('F0 E(0'Tz`,:+L%|b *B#HJE6p],h%R5$^ -F!<'"  eY U :6 !> Pz!X$'%f Td.W$  x . #%$l&#'q9:>51+ z"U!Io f{ H I { n s #.'} r | C  u d'd] 7*z $  Y%z6Qg%  OK.Hn=PFsAߴvT"dy۰'j(:CT L?$X۠wtLlLȈz)Ѷف[ه.TަU]L[*g~޸GڮgG:ptCD   55gl$|}"vy8_ !}'1 |  C !"ZzW<#+@0 24443$2-0-x*(+x031-()(.*q*&>_(@_!$',1>43/W+)z((('B(+18s< ;5D0-,)Z%#w%h&&&##'*$*($(?))(#aq#((n+-15{8;=5;62 12468L86689s;_>P?7><;9f62o/-.15J8;@,EG_HeFB`?*==A>b@A(Aw?3=`;::9K9764210E0Z/J.-H/134N2Y.I+)(&R%&#!!"b$'/)H)6(>&#("e!  Zj^ D $ 9 %+!B-e2#%>Ye!"\ $/e| 1#9 (83}4*dC% !368:9a2,$(o&/4S, (Jta uapݥ . 2 3 ;G}&4BbGsIbG`A 7F,! ]!y kw*?=xt bzK{J !')*)(&"fuO"0PL߃JsK|r t#?!'$y6$&,B f  m P "&(('Y)*,-S/114{н|Xփٗiݰv*# ,IRWs\_ `a\]OECEHIGDx->z B $8Mj K =)=N\e^%RMLHG<62#:2icǰCԽj=NU~^ $a&*)H#e~!'1?bLJG7=+B]uΖU7#ߧ&SW# E ,1*2, ''^iVT5ߏ ߺ"tg VsdQ Q  }A wRC~ X "$&((_-+=+.^5!:(k XڨH~?&2VZ5_z_^^[\OVkND.DFFuD? ,S1KM,Z 64xP l&#=MW@ZXYM?p:763/.DܒmvԤjR7M)SEJ;<+K  9B5"@ vKhKB۴Vkq!UGA +w&#V !c %g"Aʇּ96 0wl@Z X#&/P-3"  e M,( z c,#!#-5*QT~VQ%OX_ubW_[nY]Oeoc\gWPsE;K.N)'`, uׅYLJ۾G*##8'GRftjmZIStS'Js8.0-,).#jĬkkp}Z(|8 Ug^E<>.3o/ S5<,-V; K&\? v| /l5)&c.. r`cc8!fNk' Κ;)!!f)01./44=81h) =& Mg%270&K1'#0;DJGS{-Q={R8H_kTl@d@[WY&VSRL[KGi=/ExH8(1&“@&C|3UfkTi`NRE?V0($$!P#$^w(ڴ _ QrC 'j?ac W5MD>80=.-x1445,d@ߦ,@3A9XM~!W #-%  _ %#k #pۿH󼴻 QF*˪ѺMj^uoҐ Z T>XSsݱcvJūp;Sԭu  51qh d )3B@FNK*3([}Ug+8HNUXKXX[_TcN]D5,*Z-B" fi$ {n?ʏɴ$F( kP-ZQvzq\cQLNxMIHO[NUBA( m·9}R^ޞwA3!3IwJ8%GAI R'5NH]iqf?[fLs:'_ -[a ݁tTAZ ,9ABDCA? <9"8Y5K0)!6  B `W7Uݬ;0 +C39@>"A B A>=;#:72+#`C=YoGQN'4@HJQV []\[+@7j:$Z'Z.EKQMNN.QKV6]bfcQF9(P%@  {Hu:NRx~ 3xZsmYD6//,'"E+&6U/Hڊ‹ G orDv5er5?+3. R \$7vRcKZhC82$ a%nC<ֶrhF?nc #I&QF kE WG2 0a/ԴݚLO4 9e)Z֍бʽhj?.2f o=pP] ѽ̼Tpu#{(V-14D8g;>[A@3KYdىx˖>\AC8TghfXE4*&"s#*kihԙS@ߞՅϏ  +,\@ZS\ZF'/ 4j@赟L#uέ.mʿ\ğApieؤ?̇*Ŧ+,Zb]zh՞  Wa "eȎȚl7݆W Gx$')-13W)!vZp׫lnݻb&+*{.27;>AEGI MrF8)Y5C;Os0 &|Rn{d}}tufGWKECD??46= 7 #FH$z`6VˁhlBB*=RPZ[A_aTi?s,U \Ü žɻΆƋ.K0LHR6H}HFc: F"+ 45'? gҎ@UX.JB*}2 ? V _ PXӝV !&(P*++,i+,S)No&ɆO~ωȡr K'*\/M27?GNVZ]\UiNJQM-KbLH1JA@ģap  >fs,sne^Y]^@aWaQ,!tnG)s#E#հM$A ,N{ec9KB=a=2=;5$ߒGAfǎʫ̦{fS9׹Θ,=tN aN3 A59#G lUIјߐԍö"T`}ѹ+Lԥ3j)\.?(@!3!]N6!۟U|d2.;FoJEFQ0W2̂iQ#1 57I8 <0DNM?@7UAEJO\Ydy~|S# #*:%P r* `) iG'AFb4ddditSa49|!=$@*# 0J.eثdHtr) !6P`aSfDT>^?DoJFPnL1x3ȭȐĿj.ȓC< Ǥ ),m++1-G*?"X TsR?gT ,J#= >y *#=4)@wJNQ}O^;Vt۳ׂفN,9JH?:t:=g3C] !36HXm^jsm8H4y1/) IHє[l=y$ 3a7:"u-8-BJP WVM=B0eZ@¨v!غYـ<X$d1efeV>%#8Pj{~{ oa;QIG?Y:.:T;8W|o.fGH)0"'Y}ȮcdҤAYͳͩ $b-9o>:#3X+o#)%0<>8+. Zm km5˟|Cȇv͢ǙmNJ5Քؿٴ;9{޼~tM9x `6Mdi۶)\ܩ}χ:R 5Er-7!!- 8 "#!gM & u_{#~ߌ}i`e!$&).5JYM,F E>^;8$E<51+ftMo 2g>IYGYtFu' f|7Ϗūƪi6A' PgJ=̧~L%(y)&'+ . AA-0w :)=ė \ɠҲQpy8$ƎBYVHLd* 7vBPG?80S__ټͰ.0mZUFH cd\0ǭe*%m**%E wI_%4ޟ͚ٵձyҾ}"OP- fmK LTt7PHFF") 1l7:AG>HKFEFCb9*%!Sք:+:ۈ˕U9JTѾ u(ݐʺ{RU؟l2/z26R51!+BC,s= \"e#FƩÜɴD¶B'5122/)$J N m 5d/",R.0{d)47y<ZCfDA\9,* |' ..4'ڡͅ;*ɱaε̷Bn  jV ÝȽ`)O<{KT~TrL[@1"Vd҃>ް!"ag.,SkB'*-6D E9M(J&6@A=3&fP@h}}i;<&+~)"S% Pi k>&. -%Sr ̐[BL$&/+"xR +ҼuЄaD %'+$\`% Ɯ"nx?-d>EfF%?,2!=7+2   E /c ڊG ")$ ;׽&d}8IGsVEۥ k̀~;Nٯں9ެ O Bk` 6  @YDXy6i O5#*B15488c520R/\-.)r#|4HP D!;"[t g"%&&h7tPf:Yeo |8p lwWS mw |_` #f=͙z? ' *.,*)(`$D! "'3+ .R(  B*seH'w-e> JT#(A*+$rƊƶϔ]ڵw^l%&%%L')I+-/D1448w::755a43620+SDA.#{ 'C(12320~,1*+*((}&, M   hLnݏrxbmv31 w")(x% !Ic~9n 9Y Wvtda  - R  u I  \Z1'1 SXh? >b Rf '//" 6  ^ >hR()$ 7L:>U &*y# Q[x WW[)ޅVxVx Y K r޶wAݥcUSAp2  lB[q BxTn=e-|[u/ބ<&4w  V +| w?Z x|ӻԤڐaViH7 uX^Q} 5eJ? m Ev 6w |HW  Is&I, ++A-.&v:NnمVE:֗P7)s|F #*.*-)])J-*n  21Tf -9f'@ 9 JL  I Y9l\.F4"ہۋJS@ W/ SB8R'FRp/mE 0fm5 p y2 I*G6 A~0c|R ET% J-Uo?-Rmco&ۏ&V~iJ"*)1 Lؔ> *dgFƵ;76 a}@j. &B HvyW<5c* rak %*.2368876K3-'(:&&'@*-.h02Z1+!5 0_H[B F'Yo L`hlg s%+-.,&o ~4!AU$?4mt3 E8 %R(k& \} +. ROa { x~4 z4Z9tai6dTu'(kJi:Jۀ*Y1J6`\NcPR  SU2:-?9tPD }ިn.  % J vbGM$)= 7 iy | s--rCq*x @X 0/vm}o vnsY3Uj&PSs| X&t4 .  $ !,6mmZ c;W  < ZK uRRQ9kAULt<"~ 50K  w 6 $xBv) 9V4?_%),;^iJ}\+)*" |*#+Vm?1S uQ@ bf  R t Hu_gx9 U o6L1v x r 7~T5J W > {yW9l0'zqOK^m9T PDe H{!XVEVRC2?,E_cw zs;_tQP-ig:~`g4@,hA;XxJ, 7 ` *!|$3&'&$1lT1zwilvpJc-Y5PRD :!%(*+(!^B @dC2S Yz( $ #wE 4 + y b#WvPx Hv }Yu "\Wxw z3"?&K\6+x PoDs;vV/3]:4DVhu^m6Cj6*[dVU+,P'K]]5Bprwu R; T"uiT O : RM< {g M m0 v"]s uEk "N  w:b/ <  D X o '"0GEilaZa ge S5@ ( x2(Z N ~Mu,r)s>)g  @ *io=<(eDec)CWnFDt t;  L> ,cj1BMb M2DQ" 8 W  R2.QOg;x e6B7#~t 7 &nH`c6>/K48 ; %PDfoZ C9myz$K+QX<d S F.  = vD3 'z9JA z / #\"7%A)uoU")o:^^|ZV(as ;*C M5 q^q. &Mw8eDiCyMg[  S 2 Xw]t #cCYU]t 8Kp;0F#%$^} s%A"2ܶL Y6DP b?$kux/2FMj=L ELCM  ;]kfZv%0   :vP}ywHhP5B/  5 A /hhRw| _6yv^4c){I@[W\ f{ݡt %5!}\n WA'AyUkudx14dQ E P f m)@)pf %!{f0vP=k&  8 a+(7c C4 6 OE* oZEd8`r l3P`  - s}'M`ye>J ]n-s&)Dv'q; \aUOR "@%u u . F >2)IWT mU*&||Mv6 # d ! M '{K t?z8lql`[nX+_(Iu"AAV5!=uZQ:7$L':35};;[!^pQq' 5 2 0 u M 1 ! % :`tqUS; c12< 1z  i3W'Jn f>B)~*=e$d;pY 1KAU>?C#%c0Yi s G S 8 *Q] ifENf"EsN^01z>r )l) sr7;NEo-~*bMZ\:?=t!<   7 xVJK0AUs5|iF>>*&!. "CN=#'/7\VVPH  3KI!$>3C&#*%"",'CO8 4y=~0 EZXNKF]" = U  mwC>  W}? 8iq  'ZN6z{L) b-*6 $FZZDX6. yjݬRqO`8sS2qޓwO*^AS1eWI%!* s([))&.41o 1}xv 07t'RsGG/zl84!UX7(V?MzNitm:y!Y:g~(m9b YpuiC?]A;h[0:Z-l HR `  U w % > { k Va}#aS~Z4nmPTSg9QrEZ!a.66"#&%j& 'U*!C&$!{ r & *$"y$L$! $'# G')$! $$!$V &J,0+y%"_&'&:'*r,`'O%).H,'u$%&&$#D#]':*C'#"D!t M @!"$$ NF!"Z!g % !w*, J!FASV@! ` R f .h}.hGQ7}q &*XU.  $W4#t YiI3Rd| at46zJ*XK hAsCh wE3@aqcJxe/ZYMW6 eSQS7 i$Q;0 V W  I[~< M ZqN D{!   U ! {B w h ) j@O  HM  9 4g 7 / j ` 3 jJOC G smh tVN@O4r$ GknA';#ogLQ/:z\3|QG,4X'w8>hp;^sBSi^+RcdV=qiw~Kd":cWl+\1l/~Da|.`l#iM.  +! =*:__FDe (t "9,!}h{"}Dfuf!sZ\kh26x"%Cs%j$=*}.|= r$K5 8R1nu <lN3'QvMXK u,,A:LZj]`2u< ^KeNWFCTrcy%;7A bkGw#<)AsXoha ySw5a'I] +Btw*"&}'g&$K%)K,}*W'&)^.1),"M EP2/ :;"=$ E CE][\D1  NVgTz0F^VJ[ *3f_,O$zcWbSucYcTrN[ 48xzLfoMu5'800 W &"b#+*q0M7<1C7KOVPRL2C9/"+bոֆ&"?;iq#2 :4,!6iڨۘތf/%o2#'%#u C޼ڰ:*el )8% 3A׀YYqMf+fvҜҎӌ' @'um ׅO zqC܅ڻؔB1bJ[>Gqv&8qoq]\yA< Bi c&*/5CjC;/"RrdŎSӠ,F #+0/*  qߥ<$0;۽|  xmWvۍӬ̧}PԵ,E˭y ;1VBgnk_RK/ Uޛn]Ĕ}t>4e+ BCRZZhUOHh3׃Ƀ[BPhq) 4860$E &A˫0Kl%,.* ߋ຃T7$g g%,\1?2.^')|ߔ\}/*?OXaKhmopn8l0_3=00Atn ++HcxqGx6ԿÎpķ ےAbzvX(5 jj҃K֊&ϯ& ?jkG cǗQŻ,Qn~qY):s^!Τ߹ը r80T{g)stGm^ND4%ι=Qv,b>GI2D-:V+{z$fˁ!2ʗۣs F/_782%.xtڿǛcj ڸ4$S/;8N>?q<4) 23FTX HBim{ShL&qܓâN?"aZ@}gHX Ըg,+Upy~uweM,6󬮏z: %Ee1x}~w_jiW;OM{o-7TKhmqhU[H/<ՏbDɎ .>IAN*Hj8!Gs]l0ѽ#+1234p7S;:/$J kda"|M"&%/;IZiroEQMѣrջ#@ϪW֟3}MjEQ%jy>ǝ qcE԰6 /8QonXF5 B˻_{1k_pVr4g Jl$<1Ufeou*ti)ZB"+X΃x 9!!C_r}}wl+S4$ԺTܕ>)!CeS\.\T~G +$Ə:|ѦO,p36#3*mt9]뤧7ƵiF9J+;69843>/'= Go#1A%Q0\cgdrSo6PFdtḲOů_%A%Dbi}Z*fy*;ϑN º`SAenWH9iżfA`һ ECzs^8 ǝ!85\_"YKequ vvsfVE$'[زȆ JVljzbGR.0ҡM3 h(H]ege[2C'$ "^xI: m,<|C~Bk>)7)r4MS𱝴bhJp*7EDOWWhN@2S%! Be &-C7FFY"jixuK(wwȺ͠+LiJdim9+Ř߆;LgyhP*ٶ*B6w^9 loYLM^ UH+[(Mo~syp`I 4>!Pݡ)`=Nc_kK(a!ّfwax6P-__.U5L?C+E_?`ӟG0&}&2>A.9|&P%ƲvʿխE3=?5>~?2?h8N)G` p'c$.W5LJr!dCfҴ+kKLnxa74[ϭ$KkzjW;d2'+ԗ҃'h< dkrfUb1?N>R 7MZ\UE2Ҿ9@& 4+8P@;B?}6k&<캶xmn܈*-;.A1@G9>/ C3@37Ҽ@Lڙd6Wu|sPI1+&#V T}* ):fm , J 7!#s',-4>;DGIB*:!jEگot"FH,^72/'czú\uήܑR}!!=?dʝұՒ0}z 2pw=֣`Td 2{  p ^X _ɹ>f̰]ONT '2+<>^>@=%8*}ӮBЂ~)"/p9A"GKHD@R:G3( c[e3/"!-:UDWif1igbY T=9"ŚW#mi?@e'ݎ_' 5 cE,ۑޡ?-"6@ >/C mI3XU &|aq }LIYJܽ9_ܛQ!_&d*[.36!4)RUϒΓb16r#-33_/q*&"5ܴ=5e8eMKW(YVQI|A9U/ Q60ذ؟Zߣz1F)%36v614.!(W'??ɿѪ.V z(./,$[ є31Snа G T}RBڙ#Ӧ'Է۴}. O 7 p@Z[gt8Tfb51 8 p ` W,q-:F Dt g]}w 4F4e۾֥ؒi֐m ))/R46H5X52%ӿ ̇$ ((/*2/x+$L mS߼פЮĆoթ4p*>^J MFNJD>6|+ T3cj؄p [w%4=|@6BR@;4,:!yTר;4  N+4:;7/%v 9P.kւ}B!+!2bzg޷Mb%s1 atkcv vu>Bk t h }~j K~ '-{0."SvI6 i.nhh8%+17; >0?Q>4 7{!wE7Ym'0e3/2.k'Xv Y]ؑwlt#c'+>FGD?1:2E&cng3ΒTex )J5:7 2*#>&=v").7>B'D=2$hN =|q1h>Y܁mF  }ic߀ۉ<`L4Y QM$Z݂='ITb[ ! > d !~'())J:(- )1466;>n@ @4!pWQӆ2 Ny(v2d850,!  ujه\, +;4'A ӌXHX 9c%(2)'$ bz3'M: [  v)U5t} Hg:a 7 9 lwj>!##:Mf׵0%ނC "'.00G/10x-$Uqݠ%g,wR6r)2890p!3RKURkoUCxDό@ x"8,2453,xl͗8׸e$'I$4y;μʓā ߃ C$*.0.%W hؘ٤'> A>!4" UD]OcINI++ f& P 'ۧ:c-5 = Dd ?2=3 3L &4BwKJY=#p 9JB6DvA+AjƶHq,jelw u'$- j߬[")'6ika/d%-.F*\#K # %ehKԤ"39V5*;A=^HKn|[ x к:*ȉזYN~Pr{iҡpf7Wf)l /~7uE!j$,(6?GUMNK)GAC:#&2"(?{RZVWG0+tP2 M0V64%D Т_&Q30[::$00! [֝_$!z u X71@@o2~> AopݏrS+H  ĊyH0_z h}IԮs-S5 -nhܖ '-#ڼb`) s/]{T#+W4=d+ j{|'5ܨ؜D ! "}ѽ>\qw ޯܱ Wk6FVKn5  @yA H?-E>LpRuQLG@:3 9+дX >KJ B#S a  Y 05(!h{>=-6,]L \%d } ]Wu#0*~%Nl $467),*%a8]%14+5$G.+7!*( 7GN{?%=HH{:(߯̍,7 [ S֯fe!xm97я8 .fL܂faS s !$N} s&,.37 73 /_,G-1Smjo͐gqvSN`^+9&+)$!%(+/3{7>A<,98֨%CJL;Ԏq@ !YrG#,(v;3'++a!.1w[^y4 q 0$4(q'r*'B* 9E)U*Z d:3{ %9/a2 +$،L|X\V2  Iz1ۘͧϠ]w O4:0]w7[ڙݛg  k r)26 8Z:x<<8+w{eڮqޔ.bGN{L5 m ".&G'q-cQ? "*9$wsW"i0(:dn/bq4%.)7 g .u0E _:̄I=o;m$%jX\c` J7  l Nn~RثϚτi+, 0xO^^[J< I RHx;Mc \NtW yk />FF>(1 <h&= N!9JH"801DB- v F$N9ݶ2Q=4qߍ   W !'1!j 6#-,r n!m Oj'4> ]@\jf N T! r?)E+__\  $[FS&| Es c 6QyPVQX0(}?LC68OU]Jg X-I4~}\/ t -s"*t/0)-&  +&` >PQV _0|iA Hs~g ,] b dU.L ] -}$K*D 5  v3Z+21E*mkMd42ަݏpOdDL2NlTbw#5t-rv#U$ 7YK8T X<~ ^F`,#'!r-u SAJ2="#*LrxV1X #:<#7#(P&^d &n'"Q z}"F%5' t 7 KL ?QVh]9~/h s,7JlkodU#6V6Hs)B EL ^<)ގ&+v1A2L8;W{ЁJa ' (=2[3h_g:VP CN,  S9*G h D>#"BI+(.%du 6 (,6o8.<%6 _ oG Tt p Vp&^h'GYKlE  v&A~?x ,Ddv^ 6= g2r> w#0h7POo'@ 48 Ve$ K U4k~em 98so ? G0 >&2~dvMb *L ]& Eya < 0Q ]UsT"!J=*e M {a4*  I R'y/,l&T 1**s  )H@h eX! *g,, -k-*#~@KTYAU<9 Z Fa 4gVLuKC Jm ,I vN߈C<Y@  { * W k &D. S P6tT #y  }^&pb)[4 A a r~{ k ~m% Wy XdT"806742,&6 (#2)F-`041## j "+/Q&<_wB" "x~ y!+% l " C@ caQY4v $5?);8 6W qX54n1z 7 h>c+4oT8?9^H0${rG {4w%N'/L2,=Tk:. ,368E:=m?;2$0zB3@C26qqB x$:3;e#(P$ 4) ` ~ 2l7&Y u1-ݗ_:A-jZ(xY.ja9DWB +r8 G8+Q*T7{+\P^6jeDA?  W3 =~$V-P$(9& i 6#O*a/2P3%3v2.p$ b.! &~% +X' W("&( #p|HiYQ?H \u  >sO?.E,4M5$s.q[ G+YBBM,ϓ"3l>T<1 F|eݲ" 7"5AFm? - ɤPӼM pQ3,sV%&"Z |e_;dPb:uOށ6*C3mRt=N#Wn*L};hYf8iؚ4 SJ04 =EhV+>T| 1!)0p6u9=?s@ACFLB9ο޸QS !&ALE8 ۽?$4JHW^_aa{P qtk|>U_WM8R|iYrf&w8BE`; AYŧV /EFORC.C%˯Րޭ!T5JW`da;˚íV[1M@_gRL# \cwʆn}#!0+']vz˥¨: &.* }V| _&~0'457P:55(4[ M-wW#%%!kGD `[?\/C߿T9Uf *3ƌ˞OO07\LD25١0 _]O,"!%&$0"N!1?#GUN?ST P4^ }i$6BJBDJ"*(:7&9PteMs_mBw)/^AM-DPK/,-C;ַ&~.+w ю-Gq Iw#8/A/(r;CN'>,)&#5%7\|  Xu^vJ] U 0| 6, O/a'fYsfM q ,KqRbj HYT |w #kipIt A#@+1J9@DHL QRgS7XűY&vn&YEDZBj2ݩG,. p d ,5RksWq,)I}V|U4YpFֽ|6j?, v)77:72(_M +)^pstGؿukVoA,H!l{!')\%v |}iF $Ј4|uK >5+xzaKOlA56  1s68yV-#'9'8&%>)M.3Q9 BIXQnSE~1"61~FBŶ'u6K[tsSTE+g`.E/I 9,i~nްѴߴm r25t"F4^b1g{w~5BE?J.b`q  0 lZ~!ǀEipHHPF $%!< 1YykL׃Wߋ(He]YՃ ~ 5 S l "L )N X  !-Dr \O  5 ")68D2IGHJJLJH̽Ė O$$Lh =-Ux2},b.R0N#R5?!Dp*/ߟZD/ب # Q!-, 0-m"u$("uqCt(}j!Cݦ 4ss ) 6]j@ U n0FŔ5Q gyLl _}gy}  M,{]l qGrhQ__EIvS< ^?(/7XB LgOKH`EA@@?M3IčmԄ(-TRgە&qIH-[#JwK>c'R:C3Գ֌1#Oc 30h@!&)f6I&o&EM #.,0)+ҧB0K@Fc Ffsߣ4j$T&g   _.C+ [ /ӶaҶb{3ޱXot ]y3j!ښT7Xu}5F3oj-*uMX\  (,U293BB?2>@ELUUQZE3LÆfE '="`6365`{U+ 09;Y+ ϶ėY  ؒ P+Q p" $ R 4)E u%% #*o%jbW~$;,.r]+ z$V&B"G1 `@LDfLˋf1J՚0<;ji(T4B5n9؎ۆ߰tD TWj0lK:Ku%f@X*")v058AJzPUZ]``^]UQ<ɉ'& =ҏ1[=2iq (;5[nsqMTN1.LL0L 6H 6!&<;s[}2PݓKp FzD& Ig r3n)TK ?6}fE6KG]vwD ޚ)٦ސEpf#-mتkaEB12()/!% [{6. "m(-3;DDK5STK9G045=68=N<)? ,v};|.AK%4= ?8+%\* [";5>Ov &"أڇ߈J@SDihBL /L-\5d5A0(L oj&2890'e)s4+55/! -2%)( Bا 3)$  vc *11/&G u$*(, 2n0Z5#} cT ZrW( v *jAq<R(X)ۭӣу{9oD4`)0߬s07;Ez~ܙھYW'Pt|: U7  "($08*d*_A0KO,J3"l0pQq|1_#- .!mi~Q#]%5Y ;E%<,h} k%O*'X;iw : ( fxW  w h Ok D"Lxuhpo;D@i>9;>!dgSiy P?P#;[$e! 0:).X A%x43/\ i -3" $PwQ1}޻ G&'_1 ,$//"a S ',qUFN eE  x @ KwcnR0$ s IT}_Jh+2ah A;D~ ;439r.4 a^Ytnzv  cZ"j{ؼ Q@ s , %1!+(9ր1Yj(&s2w)dY q4 Cm\4 +Z*((j _  |bR+1pMcZ5$o j 8O" ,Dm!@y; (l b  za D  Q| m &  Y TI \ > n$ 2 d y>  -w%(Z&+9 >Z+.%DY۩!DY XKN7bS N  N $2LJ9ke!8n!X10 f & a-u8  o8$=- / Z W R`o iUI)ZݡCb onk $P\@>+ zA^y\# 7y)׵*S0 #|J -) y cA * Vz[2'5/S"-BB|!t {o׿= p -O?&45 *[ cnw "W!$Q; `K{[_KPa U P 8n d ~ ^ } rqh^1 )UjO_` ^01)^!n' 'Qf ~i Ō?[*$3B) N  C R;A t    2 X5%C:}n09N18qFj mtJ A .0 w Gy E\dӳЎTܘQYqTh_{DKN8 XB,^ = .)xi_#, \))akA(,/t#9M ~ 2'@n8):7NB6.t o%o|ju &u H x 1Ge0= ^ _Gn z }dDTRyE0N[3 ;TAiqWw߸׼)#8@Anq FD.V iC_ Che@:|'(M٘l ^tQg (+5,=)1 0# Otڛ'ڻ  ` pk]!+U+<'t [ guߠTmG _ "hpY #Ƕ> 4LhWO?1W,"K,],rWV0F(o:S _>:0x W LQ2dw@~&#)*hX߫[( "?ukZQ  \TgA9Oz^ x()50 44 G5s-އU6sOw$${p!r8m$*O"Yt W ہ .\4#Z 1-3&)>Q& xii"= K:o^eR<|#  E.2U> r[TيDg,qI !  a 8z?F`~AX y " 0 , A4Q)-3&M'^Ъr4$Gz8>9 -L A?h$%5) @ Jԁ%<-7 )/*Ov۬m 1 },- tCls\^aڇa"q0 b&#$'5ZѠ:h"^hd ̹x^!א7߬[Te/E~{1Eo5KNe3Yh=C~]F.  L& @8V.} q7B&V<`9wQ.bI%0y{1_70,e7D05tm3)jL#{;s P5#T,'.-k=j%*" ޫ?H J"%25 R Ei,P1 J`v 9;~y@ B0 xj  @qAjLBl >^# ?DR) % >j&W+4 x k/BNe$b=nCs<-,%R!`FO#)Z kdu,*k &T)G%-\!QZFpvcf% b l!{ބ|-- 2&i: #yi=$!U%.)%bs|MP * ~t lӾ?Syndք?|Cf\%Wj4U)$G#"8 1< 1v DVs4_lt O!GB/o׃\O^Tqy8lL`i ~$ k*F'd7$ q (A2& @OWey  H C 9 @gJr!}AxT#+;RU#"|.OBoXnr C .PG3&@h"}6a*(<0DL+$  6 [glކWm'X# L$ D^K nX49y'd 4Af|[L A 5,&e5 ^x . |H4'3NzKk X y+ 'M|+-B,XQ}gR1Rd5+:? YU+ iDa&Yv T*KT&K"+d hD#W  e r ( w!j8 ` ?C( Kּ;Ab4;6 $%qM'[(r kZ a*j9?L1u ZR "!--e,,(a9(Sr;6} }n555bW&cM B&Y''C& O^Bl~h  !. ykW c3{)`4q 'pC_h $hF&_%lM Y1nSQ9 & }{6 > 2zO 6C>  ! wV; m**\y&--+_f*3>.dA z 0 iB (^s~ ^' d\S} `Pi7c/}AJ. K.   @(7l93:<.EC Uw: i h'2 2C4/ 9  5&hJ (o <A B+=/np_ل7iK+~1V.ڡ'=ϓ@ \~N3(eRT Egq*. @h. "jB%!%FRdNSءFgOp~ $%TQ1 0;AEs "w,_'d%U{ Ɵ](}FkZ<ۗ7zho&0sW+\h^  Y+D:9f)=E@>lAWE,>:V#Sd=n^l$.%&S&KMO2A, C"_^~X $7:,=7m*& 9 nF $1(#dkԻ![<,e&vy{)o< S:.-!"~ S*ܢaL iepҙ܊k\e#> =ڡ۫DWAOX8zbL^ sBAx%']ُ8Iib,982q(*7';D.74eEMQ:!1N+.86&wEG³y)A/+%&+"@ '-(xo W8s?&=2:@93U2Q* Z{K9 "&@ ҝ6Cj "#.039;4 "sIvX50h7r5#;ݍ"ŵ͓t7ɶ܊KPbc2jQ8Ui F_|KGzAR(7֯X.e" v 5.EB SO!h!)/AVZnF%AG?5//.+ a R ׾0 EfGm-62&(dLOP#T"}3xsr%3-:C9~+#Q= ->  :!ѩ9j[۶k$0F)"z&$xN}LJNt bPrJ'Տf6GN :l@^ݑ: g!EjMJ2[BO 5-%D%{UC}[03$F*:(2LTIA*JCV>? C$A 5ivƻ{-81@h7519'E otz +" N[Os5 D1:%H91m)#O M  @o[{ͳs!,Y/140* g_<$ߘjKWX(۔1R۴rڭބy,;A܈ځHbSg b IxI{cN_ a%{+(@XLQi: 14Au(E. )$ Db=PXEl zpݲv}ԉvz  o5266-D"Mko j@ TL,$\ٶZdMߦ =ks;"]u5  M:hJ83 8 r #53 1ZR<_HIl>S8R#Y>=JC1 R8bC;z;^T& 0>:p/:9 ^w\g3x& >  hS+R!O$4*$_%Lj  g @r  ,kr_Wa###9a/ajp\fbQ OXU ޢojC5tݵxQ'ߥ>D| ldh$z=Y{Wvf~c.3cfJ  6Vk@#9@DCCKUHE?E"I?"7(?:K(t Uk|%!N'R/n+,|64($xlaw c;BW"*v,!YhVu: u8$riM?J6`]4f_ 2EGaE'\6K6,5 {!4=Y #Z2jG62NOG~ig$mhyd/   #s,(38D KOH<;G)FB<4(t %3'˟Ҷ׵Pb +N+'l*)#)f3q.cnx\ fx:qe 6-O= vV !' >.p<l2{|=y;C@~)0fy:v߸|;5$=}["C+;t+=t a>2_#$ )9392;H"K2JCfA &/<0A r MW&76#*/,+&-X-757:R85kV\F<\:+ dqb p$ etFq'(t g b w z h3.r  $">NTH~TG3 H 8CJ,/B  )vJO 6B }U T u(~O1{ZM f&E--f)&$ $G r 75!I/M[aX F YjP{M: K r INV8i?GeG A !!!;**G#1%^AWۙ'*5)XL.r p! )}Q@U l~I1}YT(A`Z_o$L 8v+ p~p9"=?R6".zO2t/g'xKN2;9 0~ .|\$Oz oOE/J #K$8&(%$#L"[%$1)&P&֛` |{ K:-Z &Y ?> e n 6.2)g$G@XasQ=B J&'GG |7?)3n y3eY}[l*uI{)Y%2]R&xC~vR g / J \"[  {;=% , 4m=jN+ 7   ;AT-6Mc1 7d + -io< $BZ eaS2[ 93 IFV15Pz=01YHChI1mO*}77lQ{"IeKp d@ TLUsk_q 0vy уAzLsM Z Z@oQD+&d & M3D iP{lJp]NTjNpX . HRWF7 M 2@cg&%f14y9(oz_mFMv` =KzOi6[v7  : @ kt 7m#2 J֓!J BDVIL%< GEmX8 O 0w=3^8)VXg bfnL> _   7Kc- 1^-y4k[HLow6-#%'DU/\8J}]Uo2j.c,~  W \!%u"(,FQ. {*HU \Yw 5{_2J xd4 S >w6 l Y  F +*88In/"  B z j pLWD F_=X  bE a 7{G4gg_)` ? aGQ f )u; %& '.!G"pB , Z}6TLP(   \-6{ ,Hh{2v3<g!\PeTq $~X\##([^pGu(|3[;*=i=`(Jz;@2{d!VR@o(Oo+TG ;H[;D@%'a'T("{<j }:3?6/ oU%)1*5 8|::BEMA=7 3 4 . _ Yjbpn# xJPH=7[k5`? zlJ  ? \1 6n z^ ]rx~-, Xa8oeK,^OMryb4!c7R\w,HOXWa۴ݐ5ۍMբ+ ZJ*%L: / I,16:z::D:93- ިԥǂ72ȇԲ2 +4@bNVORQ\Ychf|^XI4~{   m>|T(94d)8  m$hxst'_p="!.8d\d QH@e +QMfw\< |FK<u"s%&o&%5&G'L),2X8?fHLMMPQVR86/!W.yc )U /S?&MZW^=ccK]TtJCkA={;:1& *}ZQ(޺ٸֽ2dD8feYL _  R c  W-!Vўץ:Sƕ}m-R<$M ftv!Y#3 ;b#+Z./236<>BIND"iY֜|,yOJA0Jar{|}{^6b S̑,ŊBLqztc~͢;&Mv/<M =^,;HKMdPMB6-+' `ٞ1έA9قcOЕɿ.}wAM1j dk1!"a uNh, þcWrըB ž¤N dLQmhW HU=ؓJoS{ *14N92AGMNNGQI%"ʩN۩RGMזcLC*ChRe|txZ=2nݬnE0(5*Ƒ?$aO0Q (+2.2b.+!  ^+95"t(?_& Y9x /  }$*6   +f~ ×4S¥C8ԾҼϛϼ Ok  +up.pAWahܰr  9b'*2>HNRJU[RlMDHzCg> #z<@CDb뫗gk` #J4Hpf~k NF)R"1!+ե4ߣ6UA "Y! % z` y#$HE, +PUKckʤ u-ۤ-u|H/r +B޻py:;2ڳ Ƚ̀b {"  Mki"i мw/9בߏ} I> ~ n } ,:dEiHFXA;E7`859I* gĞ׫n۶mkP5JdysV3@ f*:u9ϡR_ tQ&$Y#  u!r6 d'aMŽ_G؞N¡TU!D->IG;(0'R!?S % !d-.Q2t̗!JdO0 E _:"$1Eў`Ψlǹ£N"v:;o ?/& a oc a-T#*$1/.,/r9BmEKUuO&O0y4X㣐 N7uKeEszA}zhF!жӠԜ1KFͧ; J 4bJ$*)Z/58 4/o--+%$?!9%RݬM–^~cl¾yM,F>O_ji^UI;m,! d SPǶGcɯOz̷f -8@Ax>=9s.$')*+G$fG$܇P1|Z3V!oR r)F1791*o"a?2Ays#Q&>ϥ(ҔG)ӽ~VU&2DQ\d omcn]S$8#ZH!1̡~رJdaٟٷ%D;M\]eir6xkGTF<1R&Ңr!0ЫI!C <"C/Z:=?<~7753/*K! &^KҿˆŔ@= J<%7$b"%%$%O%Y߇הjAd -;jH OW*`yeffiiQeK/H 7ᔃD <"7BL^vhCz 4DB뒙z&~ /7AM^grsOvsmbL1" Z= ҤǵCyzD{–Z1H7 B!\1C\V?jw} ~pG^PGw>P.%(6cD+Ԧv!򜤚0#&p9FRP'W1VLT5P LEBx9,IIzX;U8Z᭟;ʻQ­Dž!?f(1:<=1>AA >n3&X۵)ϥ!][x$2iD=S\biprmqyomtg<`z?Ww;ׇ5f޿"v6!L=Ti|%tW9L-ñ;9fP> ,I< HNUanx}[|ptiOw9+,~+4)0_a>%ޜ ̜̗#}?m/@ARaozurcSH @3! {ԥ#LBl95_q% :ISUUR*N/IC=8+~ːԯNfأIձ( o9C$0F:/@DwHmFA>591#UQ=ѷK&= I.>M([CeHjSl0ocs8t rm]'lC5^9юɟ~D=?FOeyoMN,\)*ο,;INZ:mxz{}|7trb*I3%%Dz,h֗󝡡H:ǽ )+)>/Z [8cͫƞnIe1oz16 !1^=FJ#L0LINE@9/"dFݓezAɧΗ8,o>Pd^gUos1srAs}qjfD ) #iˏ6ЄU~ԅ#964NvR\ovrY9b6c(͂l6wפ/!3>BPbur~{hNe5#qةcvM*N#9L]+o]~~mYA,I\$i׵צ!ȣWˤ¤بTP֏R O/EvZQgosx/ytj_UL=).ЗǛ Kh"oν@R23BsKVPeRGR7SPMJaB|7\( 6 T4yWВF?f +?`RFcco{w{zvpkhfeP "ɎnJƝ/@PYedm |eB)R♧ǃ~  7!g2DSNcuiL47$)YJ|^X+ [-~JbXpyZzj)R8$~ϫ·OVsg!,z~3ɔ)Reˮ\<W!6.K]ktvRsmdYsM?y-sXѶרElĴ>g$~ ,/>P>_ ltwfpebWAG19f, L] ᷅x3ʎޢªb #E:M\gklxkeXH=+ vK%М8"3CT`lVuyxhT(D0"&ĕq"KHy6{t (>vVm|o_QI8DN†e+Ǩ},;JYfus\^E1z Sf֓Vr=wD`T ~(BYuqOt]E'%bf˕b^z Y;|Rf!xxPpeSA"0Q}jm`: ߄=:F>5/=EZpOueVG26 ;@[gwoM5=|VbĊ˃?a,yv5'7'#8-EndEjbL5$S"v U}6.4]ʞ,H9,$ 7N gw~7~ uk`-WOF%;5*? ,G;9.t6Uj5svt\ZD-w֫A 봤#r"h*?1 ; ITBYY\^VK9F ( U$ ɛ]tچsA5HTZ`ly!~ v'h]aXH<5(-%) .>!G߻J{Q8! Ebj6tL[ 1ɺoZ(7=SXm*x`jPD1NmgRГM%ja@d,DE[rA{QuPi\SK0B8c&C߽ B"L}Ӌֶ ؔ/J \figh?m4cPN6|%Y.. + ĢҷT n6&08E@5@;{89n2&I,ٿlҪʰ MBq+5;>&@AAD2D~=,9Q:5<B7GnB;63-$)XИLD !E{\F4 |ó~ֶ.Ԥ7k< ^9byccN:a_Zp &)z9lMUe@rf`W_tcmjbWD) pʅθ,EX(.4 @HKT^~dk_}2jQI9ԩ؉zt.7SmvkQ4~up>̈Y/Ȁ ԋÓh4 .*v9|FQNV)_Ade^TI:* ޝ C [?kRIZI#+449<> CgH@MOFPARS[_;Y\L?1*& S&C>w򣸭ĈaTF](#^S_;Est IT!ip|&\~lձ=]`XITafUmN{~^:YѨiڥ|4O\@x{:rmbHoCںҼ"c'+ITanhqFu|{p_P"@#+IN/; ֒NY] />dG4JL\ONQQMYEq12=B3nw}y5,]:y}2#Iҷ A35CC'BF7SaueA]WR,M H<# rܵ28œ4M %@V\bPfgfd^P>v*K .=ئο ١Vt̸td:C'swF*"jڮC#ɃX׎Z7%%>f_qS:}% -5Ş q﷡|+{2C'SaznvPulbdWMJWJSD:(E'̸qQirhuW%7DHGB<;7-! cy 8m? cҜP|N>Aχfܨy]) >!*\//.0G5733,)%!C#&(,;(uMD\\>ջ |ܶop<"Uww6meT_]Q5 Q *) F0gr.+a cyql{]4u)Ģ'Ӆ<TХS <2CXz!`JG-MgT- Q!?ER(ʉ6Wj-( (HitqF9-YؗĔY¼AΪW2g *%9K0Zgnt]r/nmgdX?: Į–m̝ĞZ H(eV) t! %S"?.J+ y ݳ${g zl & Ink`tsOߎ9 Dd_H@".5;<=FNNOvX]XF,E~ʎ9iX=.!Cq&-<>)YG N5(FTf|-g>MnB?ĘD ,XGfX3`b1_L5)&+B8IU]fHseB6!ܰ򛔀gM -C4R:YV[IXK7-  6X  D`  G 'ZN#P* T',U39<:2C$+ =Ŵ޿< . *l-1(MY"+4fH[ ktbre"K+y ;ͧمȁd逎T {.;2HR]`@Q,$$ ^0=@JNDJ_OK9$Fp NTgVmX(F!/9ZBIWKcHA&5=&6   A@eוƸUH8'Q G38_623&83'P{ `Y#>xԙ8(΢ϩ26b[ -"[( /(PNTܞm-μ[T@K-]4 U::,7;833;EF=/K"# WzNZ<+cwF> m  /FXXcxg"e~`]_4f2j_ WnRD.lb)x%2:?FQ_fd\RF>BlJ VcabZcM9ŶnmM -JZaekptYiV>F<7:B>>6?-?Y;.I0-)58y90.uEDȈgйڠ4$~8UM@aqx{|5&~{xt|od(S2>n&P׽`Mud,[H(a]s#{zt~{xeIKr, i^ElLjkSO@#l;rO]foqW#:Z5(k ՂqƮ"ܧ i*8CMWbikic[NI> *)Y񥋟Ü@*,o򰌾Ѝk&2=:=A*GIXG@M5t(>ڣ8׵nٷ?Ȫ7[hX"-048=?@f;1&#' hTC !vP y$9\2F5@@ f?E#NT^UPnIg@34j%\זfPʶ۹Umo ZE"](o.3{69:7<1*~$!9t sk ΨѭjoΨֻ4KZR\]ZWRJGL8) 7qvŚOBPs`yl 641FP;RQRQ>TT6M:n#]fعn7UqʅutŸCə38Εv:&"6HSWYWdR"H9m$Z CYbPOiTp~?y<i(E%-76:<: 7/&7~rZ͒)(:/f WB&-(,$tO[H:xa ^׫.l jpK,{;ACsDFKLQOJIE[@;f5(~}=#I۾x6>5T? /l42^27A1MY*_*_ZS@JE>.!E ſӯ(m9ùԄgY$2(H+/0", &X"9"#$3%% &&}&V#d'1\@Fyʭ,ǥՄB&5 AJOwQ[PnK@6o,#l R!c%LֱHﭯ\el-DwQ6X^}bdcXF~2eW Ҵ̰Z?țşg'sޫ`}#Βվ!\2>GQURI9*"? 1D5vI:ՈΣɅp٨5B#'*/575.%>u9Lj4w } O)@/0.^*#?׈O 2.&,(;&[2`BeED>?4( >Z.R$< ow U"'*,0w342+M pfܿ0gb*_ $.& #Jr' SY|@ >n!*ZŽ˪ב-D!u 2S`,?(1ݾ m{Pyi m%>.N eQQycT 0 }F|AYR5 }   "4!F(l1#896. $ 9ߊD3lߺ)p*#qaBut*'/3e2-)(T$uM Uٻfǝg j Mo - UpW*z|obS$$Z -9 @df,.%lxRk U "f#p UK 2W.7Y'|6>'6sRe% C o|qt+"C7Vuaj KxK0e܂Tѱ)ߙ{s'Dr\,"$~$\" b"'++*%"~#yxVtR]ϐõ<ʧٶREX"#&2)I,>-m-L,)'Z)N+18[;S8 2*!o1p0d_ɗ! .50("nX/ U!!: "&)'! =(76-B Z e g&F ]0-X٢@P> >gI g1W>ҺӋԈC g߄u R8 P F;(i0"D=V L!#$ v3fp"ϪllJԒZ*S#$$$%(%$#!- q+M 㼣.ѹXq 0k (,8.0I6(=@=7r1*!Xx^Ŷ(-y$t t9%%-28>bGOU>SuKrA6/*T7"--ܣ΃Ÿ˷1kf|]S'o-j14m8;);x5,"&R8rA2ʘ|ߎNB,3}4  l w6?"Fm8Jb"p n71 {PB0+XP-!"" @ d9:n+S"OM( JN(  RG5d6a>  j  M  MrSoF% ~Zn> ;\<1t*wS#C %.A-2I1nm 4Jr3e a? ! a ,??t\Y_  en,o_gLDxW\^rXF  x7$ Q/Q]$^CS p-*.~d E@x9(r Yc $~ k   8%ks^ E%%$#W"b;hE[3=|?aD)=4WP pK""#K&&X! Y*4Pc1=uq")$!>N }mيn۷q+IV [Rj6 r24;\:n X|r ,qU8[ I@\La o/.<" %c&k&$s " bpu!Aj;P .$T' #&4)9*)U'$#("X+ڭڋT G z U  ;  k$ Ks+eއ5J # # M  ;c3=LGw!}fFKfAs!$F(*'4"FWn vPn#a_*Uu ? ] E9 U%8Ec-eV] >^- &UD G -DPL + 2(zX WE: z $#O( _oG?3kۿI b *  % {oT z8EYr; cg  v 91Rt F-_t bWZ d' i ,/}8.9N >w`gj!.JuLl%S$9 P+wL1T1D h3, O  o w l  @g= tUU  L_@6D& aA Sv;\)|.:y(G)*PKpZJw/ ye@Cff{A,OT=8ugqw^I z J MmWfb((huXOk!~wB%A4[dF~kyVE_M?Y>MFVj qzC>cZ'pn t '`r : Hi%T3X`[ P  X.S l,nq|5^  DT 33_s{uwL2$(*'h}5ES.+=(D;H}P)^m6AGm).m !   30K+~Nmq&@ &  t.Fe_mwOy5I [RvU o IM*\T})Q3:|BS  i I E / 5RHbD~C_ #4I R2/xt05BjXcXp4>  2  oJ3K6u )XWkPz@bFuXGG 2&|+3h]WXs x**YnO1`ysHj0r=_" <  o^iYZAdz}%?:A}sf wds-`,t;b :|/`|$|5zFQIIc^4%A\KfC 4 Xqw:sp]#67b7?7])^v}V5b#L9{GPef'1KM|y'M_C(WI. \xl$F_qe]:  e^j L I Wu$<3 S^QQ5y4\|lmCl}n!  a {a4x:x_Ty3%`cQpqZXp|aj(9qf?(*<IXI<$W@2,:x7,u`z U vm ec  r%1_8N?/ XN] s Y U3 C lH Z 3Yz q6@`;h&g D G!r,y$0Q_ 67\,] XV& &sLIST@INFOICRD 2000-03-23IENGNoneofISFTSound Forge 4.0cue dataLIST<adtlltxtxrgn lablRecord Take 001``` ^d^^^l^Z^j^Y^T^q^^U^Y^G^gSv^W^QSG^V^o^p`'^fW[TG^WVr^nba^pTE^S^VUpTF^n^]X[^(^`ViUu`l^DT@YTB^KTTYq^hUr^mT^m^cURXPXB^Z^IY&^ITpTHywTAYVrVtVsX)^X^JXGYoXFYF^e^sY+Y*SUYKTuYAV\^kTvTAXSXjYM^oSLS~TCb]YUITEYHUuTyTxXsT_TtXE`c`}`{b\~VHYeTEYX^X^y^_`xXzXJYa`PYb O QQ$l&YNGEuF Su$$f`uwf Fzj_Rzf`z|N nz0$H{zNCj^ Q e^j] l/dyj\ ]J jEwj[ E{N RwN _i lwT ywO EN Qzi ^wd k~lwN Eo Rt_I nwP{v{ IjW V3Tc m wjV CjY Pw ]MjjX xjZ E@ Rv ^ hjN y| FwSua|wqD jaKz| Y1 f4 r9 E Kyf Wv cjU p d }J I~f V lc. q< ~: KH XL e8 rx@ OL; Z7 gN s~g @zL~^ Zc f@ r9~j` Lx YwR ezrL@|x PwS \K ijb u1BxjQ4_}n~R|wQ J i W |c rr DA p OzM \zk ik v{M B2$aNC oya {S H|v Uzq a tmyg|@ Jv VC b6Io"}xG u V|jH{RRMJ_}Qi+z te !PY{i*^d}ZB K[\#MRw GI#a.Pm~\k+{Gh BPN#b!\S }h JKVh d A6p%)f5uOk4@Duk4KDjk4~yOjFP M#+]/Hk4Jw#k4gAk4DIhXLlS x)E@ n04Fazw @ &!M } n {wN ` EAgRk4^yxn Wywdw[ o"R&xf t& &.@&}_n&j M.|Z.@[.B\.z].~^.[Public] Object=(Name=Poltergeist.PoltergeistMut,Class=Class,MetaClass=Engine.Mutator,Description="Poltergeist, Roaming pickup attracts projectiles to unwitting owner.") Object=(Name=Poltergeist.PoltergeistUMenuModMenuItem,Class=Class, MetaClass=UMenu.UMenuModMenuItem)Poltergeist by Serpentine Widgets This mutator alters gameplay by adding a "target" to the game. The player/bot who is the target has the goal of surviving for the allotted length of time. If he survives, he will be awarded bonus frags. However, to make things more interesting: 1- The "target player" attracts projectiles. IOW Any projectiles within a specified distance and with a line of sight to the target will be pulled in toward that player. 2- The target glows bright blue and is surrounded by a bright blue shell to make him more visible. 3- The target is given 100 extra health points (up to a max of 200) when he becomes the target. If he survives, his health will be dropped to 100 if it is still over 100. ----- Several options are availble for how the server chooses who will become the next target: 1- Totally Random. Like it says, it just picks a random player. 2- Weighted Random. The more frags you have, the more likely you are to be picked. If you have 40% of the frags out of all the frags everyone has, you will be 40% likely to be picked. 3- Killer Becomes Target. If the target survives or suicides, he will become the target again until killed by another player. 4- Poltergeist. A flying entity zips around the level searching for someone to fly into. Whomever is hit becomes the target. Warning: this mode is only supported for single-player or botmatch games, as the network code for the flying entity is not yet perfected. Do not run a server with this mode. ----- Installation: Double-click on the Umod file. Follow instructions. ----- There are several additional parameters that can be changed: SurvivalBonus - The number of frags a player gets for surviving. Stay Target Time - The amount of time a player must survive to collect the bonus. AttractRadius - How close a projectile must be to the target before it is affected. The larger this number is, the more performance it will cost. 1500 (approx 125 feet) is the default. AttractStrength - How hard the target pulls on projectiles. Note that projectiles are pulled based on their default speed, and a terminal velocity is applied, so cranking up this number will not affect the speed of the projectiles, only the angle at which they curve. Voice Announcements - These turn on/off the voice messages for events. Other Targeted and Other Destroyed can get very obnoxious in a game with a lot of action, so they are off by default. Rotate Projectiles - This is a realism feature. If this is turned on, rockets and redeemer warheads will look more realistic when they are affected by the target because they will actually be made to face the direction they are moving. It is recommended that you leave this turned off unless you are playing single-player on a fast machine. If you are running a server, everyone on the server will be slowed down by this... ----- Legal stuff: Enjoy it, do not profit from it. This includes shovelware.System\Manifest.iniSystem\Manifest.intUSystem\Poltergeist.urSystem\Poltergeist.intSystem\Poltergeist.txt ~