*D@>gLн* r>None xMinigames xConsoleCoreSystem GetColor RenderMeBroadcastData RemoveButtonClientPlaySound CreateButtonSwapInverseClicked DestroySelfRotate LoudSoundWAV UnClickEventsetinitialblocks BeginState RegisterHitTicking AddTickIconResetBeginAddTickButton GameOvermakesmokepuffValidateRotation TickGameRenderGamePost AttemptMove BeginGameDrawScoreboardAdjustDifficulty HighScore minigametick PressedEvent Initialize TickActors SplitDataSpawnInitialButtons HostGameSendLevelBonus setgridvarsConsoleCommandClearTickListGetMatchingClientGetCanvasCoordsGenerateTargetGetMatchingSClient MoonTargetClientIsDenyedRemoveTickMember TimeTargetClientIsAccepted MarioTarget AmmoTarget HealthTargetSendLinesBonus GameStartCollideCoords InternalTimeRenderGamePreAwaitingForGameSendHostRequestGotData aNoteTargetClearAllOccupantsPlayRifleSoundit RemoveIcon Blockvars TickTimeRemoveInitialButtonsAddOccupiedSquaresColorCreateEndgameButtonsEndGame PostLoadKillinitialButtons CreatePieceModEngineCheckHighScores ProcessInputGetRGBCreateInitialbuttonsClearPiecelistClientLeaveServerTetrisCompletedLineCheckForLinesDestroyAllButtons NormalTargetClientsInGame ClosegameGotClientJoinRequest LeftSPieceHostGameQuestion RT_Right RightSPiece NoteTargetShootingGallery SongButtonLPiece2LPiece TetrisPiece TetrisOCBExitGameQuestionStartGameQuestionEndGameQuestionDifficultyAreaGalleryTarget SquarePieceStraightPieceTetrisObjects TetrisEndQ TetrisStartQ xSmokePuffxMiniGameRecordsYCompXCompRT_Top RT_LowerRT_LeftQuery MouseYOffset MouseXOffset MouseIcon TetrisBlockMouseDrawscale bRenderMouseDestroyAllIcons PreCloseServerGameWaiting CreateSlider ClientDet PostSpawn PlusPiece ServerDetHostGameQuestion2 ChangeMusic LoadxGame InitClient AdjustValueValidatePress DestroyedTimerUSizeVSizePaletteClientInstantFlash MaxColorMipZeroUClampVBitsUBitsVClampClientMessage DrawIcon bNoSmoothTempStyleFFireSetPosABCDYXVjitSRG ReturnValueZScale ScriptText SmallFont LargeFont DrawColorBigFontMedFont Difficulty LevelInfoPlayerReplicationInfoMusicCanvasFontLevelActorPawn PlayerPawnBitmapSAClientCount Palette17 MyPlayer WetTexture IceTexture FireTextureSoundTextureErrorClassPackage SpawnLocI_Boots TextBufferObjectEnum FunctionStateVectorStruct UnrealShareUnrealI StrPropertyStructPropertyClassPropertyObjectPropertyFloatProperty BoolProperty IntProperty I_RIFLEAmmo RifleShotExpl04sp1_A00 SmokeGraynewrednewgoldBelt_fx I_Health WhiteFont Crosshair6 NewSpeedex IconSkullGeneralNewSongLoc ShieldBeltPOther bReleasedLines ChkUncheckedPercentbLeftRow BackgroundIconsButton MouseCursorUWindowRifleClipYClipXActionScore RotationPRI ActionNumKeyXLYL TimeSeconds PlayerNameTargetKeyNumDeltaSongM xMiniGame SliderAreaxConsoleButton SetTickTimeInitialLoadupTime MouseStyle xConsoleGUIxConsoleActorOnceClickButton BasicButton MyConsole CanvasClipX CanvasClipY ButtonCountMXMY bStuckMouse LoadedGame bPressable bStickMouse TickList TickIndexXCATicks ErrorCodexVeloNewXNewY bIsPressed bLeftClickedbReleasedClickGUIXGUIY NoteBlock bDrawValueMaxXMaxY PauseOPEN MarioIcon xConsoleIcon OldMusic dkc2mineSkyCityDecoTrimCeiling B4MldngB sAwning1Runes2mural2dSkyBoxRplxfxcloudGalrBKG xEndGamexHit2xHit1xHit3 LastFire AmmoLeftTargetSpawnIndexTargetSpawnIndex2Row2 GroupTargetsGroupTargets2NewGroupPauseNewGroupPause2 bGameOver GameEndTime bGameStart bNetGame TimeLeft FinalScore Question Question2StartupSlider SpawnVeloDifStrVelobrowtwoSongasongBSongc MovePiece CompBonus RotPieceDifficultyLevel CurrentPiece PieceList PieceIndex CoordLength GridRoot bOccupiedCoordStartQuestionReplayQuestion ExitQuestionSBSCxcoordycoord RandomPiecetRandomAddToLocationDesiredLocationUpdate DesiredX DesiredYFallenNumlinesclearedatonceXCYC MiniGameDontShootFood NewSprite aLocation ButtonNameAncient Aceilin1BlockRelativeCoordsBlocksRotType MyCoords blockcount BlockColor bStationaryDesiredLocationbX bClockwisebUndidRotationOneShot AmbAncient tilehit3 darkshield brainwavextreme pinkpinkflareZw mandarinalfafxLion3 bLeftClick NetMatchCodeData MatchCodeNetCode HostQuestion bIsServerClients ClientLines ClientLevels NumClients ServerData ClientState OtherPlayers ServerAdmin OtherLines OtherLevels NumOtherPLS ClientDataDb AdminScores bIsClient bReliableIndex ClientInGame bHostIsOut BytePropertyStatNBK\Du cCHkkkkkk/kkkk/ / kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkxxxxxxxxxxxxx//xx//xxxxxx4%xx//xxx4%xx///xxxxxkkkk4%k4%k4%k4%kkkk/ /EYA//EYAx///xxxxxx///xx///W}xx///xx///xx///W}xx4%xxxxxxxxxxxxxxxxxxx4%///W}W}W}W}W}W}W}W}/ EYA/ W}//////// HS HS//// HS HS//// HS HS////////Q^///YP=Ps*ƺvLUݢ UݢUݢUݢUݢUݢ BBĄUݢ xxKTXP'XgCNdp)dF UݢUݢUݢxxxxxxxxxi 4dM@Jl@||ln:@i&Y+Bzo329)Uݢ UݢxxxxxxxxxmV_[\ \pmf`{?NAn]@uP4J~D*ƂxxxxxxxxxUݢ Uݢ XtahM**ƂxxUݢ Uݢ m}7Nnik*ƄUݢ Uݢ xxFI:O *ƄUݢ Uݢ xxvF9 Pv*ƄUݢ Uݢ xxxx }R;S!|n*ƄUݢ Uݢ xxl@[|Te V߫!*) UݢxxxxxxxxxTp|G^  Q@Ac  [rZ]EerbܠwQa/ fRIFF^WAVEfmt "VDdata:q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *                 ddddddddddd ddddddddddd ddddddddddd ddddddddddd ddddddddddd ddddddddddd dddddddddddd ddddddddddd ddddddddddd ddddddddddd dddddddddddd ddddddddddd ddddddddddd ddddddddddd ddddddddddd ddddddddddd ddddddddddd U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q q * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *                       dddddddd ddddddddd dddddddd dddddddd dddddddd dddddddd ddddddddd dddddddd ddddddddd dddddddd dddddddd dddddddd dddddddd ddddddddd dddddddd ddddddddd dddddddd ddddddddd dddddddd dddddddd dddddddd dddddddd U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U                                                                                                                                                                                       99 99999999 99999999 99999999 999999999 99999999 999999999 99999999 99999999 99999999 99999999 99999999 99999999 999999999 99999999 999999999 99999999 99999999 99999999 99999999 999999999 99999999 999999999 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd*****************************************************************************************************************************************************************************************qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;                       SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu.......................................................................................................................................................................................```````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYqNsAv Sq{@D7Ch wO <.{| khR {h 4hh@ o}EW!lWyBv^Uݢ UݢmoEBp@^@^; K@-;;?;?,?,;?@?; ;aSTART_x;2?, _?,?, x?,; aSTART; 5_bj@C[gpExJ"Q^)UݢUݢUݢxxxxxxxxxMDŽUݢUݢUݢxxxxxxxxxFYUݢUݢUݢxxxxxxxxxb6UݢUݢUݢxxxxxxxxxpUݢUݢUݢxxxxxxxxxf"UݢUݢUݢxxxxxxxxxw;UݢUݢUݢxxxxxxxxxfZUݢUݢUݢxxxxxxxxxOM_~UݢUݢUݢxxxxxxxxxO9wUݢUݢUݢxxxxxxxxx"vUݢUݢUݢxxxxxxxxx:Y3UݢUݢUݢxxxxxxxxxݝUݢUݢUݢxxxxxxxxxo \UݢUݢUݢxxxxxxxxx DUݢUݢUݢxxxxxxxxxy߿UݢUݢUݢxxxxxxxxx{~UݢUݢUݢxxxxxxxxxGUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxx\UݢUݢUݢxxxxxxxxx\oUݢUݢUݢxxxxxxxxxI>UݢUݢUݢxxxxxxxxxzUݢUݢUݢxxxxxxxxx<`9SUݢUݢUݢxxxxxxxxxTUݢUݢUݢxxxxxxxxxRB!UݢUݢUݢxxxxxxxxxE#UݢUݢUݢxxxxxxxxx:szUݢUݢUݢxxxxxxxxxlUݢUݢUݢxxxxxxxxxڄUݢUݢUݢxxxxxxxxx>UݢUݢUݢxxxxxxxxx:,UݢUݢUݢxxxxxxxxxVNdUݢUݢUݢxxxxxxxxxاUݢUݢUݢxxxxxxxxx?@UݢUݢUݢxxxxxxxxxVNdUݢUݢUݢxxxxxxxxx!XCUݢUݢUݢxxxxxxxxxcUݢUݢUݢxxxxxxxxx\vlUݢUݢUݢxxxxxxxxxXñUݢUݢUݢxxxxxxxxxbƄUݢUݢUݢxxxxxxxxx]hۄUݢUݢUݢxxxxxxxxxjfk}UݢUݢUݢxxxxxxxxx4<UݢUݢUݢxxxxxxxxxxĸ.UݢUݢUݢxxxxxxxxx0UݢUݢUݢxxxxxxxxxi0xUݢUݢUݢxxxxxxxxxe)UݢUݢUݢxxxxxxxxxt%UݢUݢUݢxxxxxxxxxe)UݢUݢUݢxxxxxxxxxhUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxxVໄUݢUݢUݢxxxxxxxxx`9UݢUݢUݢxxxxxxxxxVໄUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxxEUݢUݢUݢxxxxxxxxx@'UݢUݢUݢxxxxxxxxxl0UݢUݢUݢxxxxxxxxxs}UݢUݢUݢxxxxxxxxxJ6UݢUݢUݢxxxxxxxxx&UݢUݢUݢxxxxxxxxx-8EUݢUݢUݢxxxxxxxxx YUݢUݢUݢxxxxxxxxxrUݢUݢUݢxxxxxxxxxJE<UݢUݢUݢxxxxxxxxxlUݢUݢUݢxxxxxxxxx;UݢUݢUݢxxxxxxxxx mUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxx^UݢUݢUݢxxxxxxxxxǰ̄UݢUݢUݢxxxxxxxxx~^?qUݢUݢUݢxxxxxxxxxǰ̄UݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxxńUݢUݢUݢxxxxxxxxxG%UݢUݢUݢxxxxxxxxxܮ-fUݢUݢUݢxxxxxxxxxOXUݢUݢUݢxxxxxxxxx~UݢUݢUݢxxxxxxxxxk?UݢUݢUݢxxxxxxxxx~yUݢUݢUݢxxxxxxxxx wUݢUݢUݢxxxxxxxxxaNaUݢUݢUݢxxxxxxxxxÉbUݢUݢUݢxxxxxxxxxoDUݢUݢUݢxxxxxxxxxnʄUݢUݢUݢxxxxxxxxx4!UݢUݢUݢxxxxxxxxx-UݢUݢUݢxxxxxxxxx9UݢUݢUݢxxxxxxxxxb]fUݢUݢUݢxxxxxxxxx:zUݢUݢUݢxxxxxxxxxR`sUݢUݢUݢxxxxxxxxx9ϟUݢUݢUݢxxxxxxxxxPGUݢUݢUݢxxxxxxxxxuqUݢUݢUݢxxxxxxxxx1UݢUݢUݢxxxxxxxxx356'UݢUݢUݢxxxxxxxxxV.j'UݢUݢUݢxxxxxxxxxB/ߟUݢUݢUݢxxxxxxxxx=#UݢUݢUݢxxxxxxxxxj ބUݢUݢUݢxxxxxxxxx˄UݢUݢUݢxxxxxxxxxgPUݢUݢUݢxxxxxxxxx=qUݢUݢUݢxxxxxxxxx~+oUݢUݢUݢxxxxxxxxxU-$UݢUݢUݢxxxxxxxxx9wUݢUݢUݢxxxxxxxxx4&UݢUݢUݢxxxxxxxxx0Y UݢUݢUݢxxxxxxxxxdUݢUݢUݢxxxxxxxxxdUݢUݢUݢxxxxxxxxx3n҄UݢUݢUݢxxxxxxxxxCzUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxx^vUݢUݢUݢxxxxxxxxxFC[UݢUݢUݢxxxxxxxxx5!UݢUݢUݢxxxxxxxxxc6OUݢUݢUݢxxxxxxxxxkmoUݢUݢUݢxxxxxxxxxmOUݢUݢUݢxxxxxxxxxi0UݢUݢUݢxxxxxxxxx+UݢUݢUݢxxxxxxxxx3oUݢUݢUݢxxxxxxxxxFUݢUݢUݢxxxxxxxxxWyUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxx,ƄUݢUݢUݢxxxxxxxxxKMUݢUݢUݢxxxxxxxxxF}UݢUݢUݢxxxxxxxxx UݢUݢUݢxxxxxxxxxj؄UݢUݢUݢxxxxxxxxxF}UݢUݢUݢxxxxxxxxx a6UݢUݢUݢxxxxxxxxx8!UݢUݢUݢxxxxxxxxxHpUݢUݢUݢxxxxxxxxx UݢUݢUݢxxxxxxxxx,BAUݢUݢUݢxxxxxxxxx6FUݢUݢUݢxxxxxxxxx%:MUݢUݢUݢxxxxxxxxxŠׄUݢUݢUݢxxxxxxxxxh/vUݢUݢUݢxxxxxxxxxD UݢUݢUݢxxxxxxxxxR-UݢUݢUݢxxxxxxxxx"UݢUݢUݢxxxxxxxxx*7ńUݢUݢUݢxxxxxxxxx{Ip/UݢUݢUݢxxxxxxxxxlUݢUݢUݢxxxxxxxxx4LڄUݢUݢUݢxxxxxxxxx UݢUݢUݢxxxxxxxxxܤ?UݢUݢUݢxxxxxxxxxQ}V$UݢUݢUݢxxxxxxxxx UݢUݢUݢxxxxxxxxx&UݢUݢUݢxxxxxxxxxYUݢUݢUݢxxxxxxxxxQaUݢUݢUݢxxxxxxxxxۨUݢUݢUݢxxxxxxxxxh*UݢUݢUݢxxxxxxxxx3UݢUݢUݢxxxxxxxxxFYUݢUݢUݢxxxxxxxxxyd UݢUݢUݢxxxxxxxxx9KlUݢUݢUݢxxxxxxxxxUݢUݢUݢxxxxxxxxxbkUݢUݢUݢxxxxxxxxxh`IUݢUݢUݢxxxxxxxxx/΄///xxxxxxxxx.///xxxxxxxxxu c///xxxxxxxxxUH@~V^_O$YUݢxxxxxxxxxzUݢxxxxxxxxx<`9SUݢxxxxxxxxxTUݢxxxxxxxxxRB!UݢxxxxxxxxxE#Uݢxxxxxxxxx:szUݢxxxxxxxxxlUݢxxxxxxxxxڄUݢxxxxxxxxx>Uݢxxxxxxxxx:,UݢxxxxxxxxxVNdUݢxxxxxxxxxاUݢxxxxxxxxx?@UݢxxxxxxxxxVNdUݢxxxxxxxxx!XCUݢxxxxxxxxxcUݢxxxxxxxxx\vlUݢxxxxxxxxxXñUݢxxxxxxxxxbƄUݢxxxxxxxxx]hۄUݢxxxxxxxxxjfk}Uݢxxxxxxxxx4<Uݢxxxxxxxxxxĸ.Uݢxxxxxxxxx0Uݢxxxxxxxxxi0xUݢxxxxxxxxxe)Uݢxxxxxxxxxt%Uݢxxxxxxxxxe)UݢxxxxxxxxxhUݢxxxxxxxxxUݢxxxxxxxxxVໄUݢxxxxxxxxx`9UݢxxxxxxxxxVໄUݢxxxxxxxxxUݢxxxxxxxxxEUݢxxxxxxxxx@'Uݢxxxxxxxxxl0Uݢxxxxxxxxxs}UݢxxxxxxxxxJ6Uݢxxxxxxxxx&Uݢxxxxxxxxx-8EUݢxxxxxxxxx YUݢxxxxxxxxxrUݢxxxxxxxxxJE<UݢxxxxxxxxxlUݢxxxxxxxxx;Uݢxxxxxxxxx mUݢxxxxxxxxxUݢxxxxxxxxx^Uݢxxxxxxxxxǰ̄Uݢxxxxxxxxx~^?qUݢxxxxxxxxxǰ̄UݢxxxxxxxxxUݢxxxxxxxxxńUݢxxxxxxxxxG%Uݢxxxxxxxxxܮ-fUݢxxxxxxxxxOXUݢxxxxxxxxx~Uݢxxxxxxxxxk?Uݢxxxxxxxxx~yUݢxxxxxxxxx wUݢxxxxxxxxxaNaUݢxxxxxxxxxÉbUݢxxxxxxxxxoDUݢxxxxxxxxxnʄUݢxxxxxxxxx4!Uݢxxxxxxxxx-Uݢxxxxxxxxx9Uݢxxxxxxxxxb]fUݢxxxxxxxxx:zUݢxxxxxxxxxR`sUݢxxxxxxxxx9ϟUݢxxxxxxxxxPGUݢxxxxxxxxxuqUݢxxxxxxxxx1Uݢxxxxxxxxx356'UݢxxxxxxxxxV.j'UݢxxxxxxxxxB/ߟUݢxxxxxxxxx=#Uݢxxxxxxxxxj ބUݢxxxxxxxxx˄UݢxxxxxxxxxgPUݢxxxxxxxxx=qUݢxxxxxxxxx~+oUݢxxxxxxxxxU-$Uݢxxxxxxxxx9wUݢxxxxxxxxx4&Uݢxxxxxxxxx0Y UݢxxxxxxxxxdUݢxxxxxxxxxdUݢxxxxxxxxx3n҄UݢxxxxxxxxxCzUݢxxxxxxxxxUݢxxxxxxxxx^vUݢxxxxxxxxxFC[Uݢxxxxxxxxx5!Uݢxxxxxxxxxc6OUݢxxxxxxxxxkmoUݢxxxxxxxxxmOUݢxxxxxxxxxi0Uݢxxxxxxxxx+Uݢxxxxxxxxx3oUݢxxxxxxxxxFUݢxxxxxxxxxWyUݢxxxxxxxxxUݢxxxxxxxxx,ƄUݢxxxxxxxxxKMUݢxxxxxxxxxF}Uݢxxxxxxxxx Uݢxxxxxxxxxj؄UݢxxxxxxxxxF}Uݢxxxxxxxxx a6Uݢxxxxxxxxx8!UݢxxxxxxxxxHpUݢxxxxxxxxx Uݢxxxxxxxxx,BAUݢxxxxxxxxx6FUݢxxxxxxxxx%:MUݢxxxxxxxxxŠׄUݢxxxxxxxxxh/vUݢxxxxxxxxxD UݢxxxxxxxxxR-Uݢxxxxxxxxx"Uݢxxxxxxxxx*7ńUݢxxxxxxxxx{Ip/UݢxxxxxxxxxlUݢxxxxxxxxx4LڄUݢxxxxxxxxx Uݢxxxxxxxxxܤ?UݢxxxxxxxxxQ}V$Uݢxxxxxxxxx Uݢxxxxxxxxx&UݢxxxxxxxxxYUݢxxxxxxxxxQaUݢxxxxxxxxxۨUݢxxxxxxxxxh*Uݢxxxxxxxxx3UݢxxxxxxxxxFYUݢxxxxxxxxxyd Uݢxxxxxxxxx9KlUݢxxxxxxxxxUݢxxxxxxxxxbkUݢxxxxxxxxxh`IUݢxxxxxxxxx/΄/xxxxxxxxx./xxxxxxxxxu c/xxxxxxxxx|^0RIFF WAVEfmt DXdata I> ,@->>?>?,?,>?@?> >aPLAY AGAINmJ>2?, m?,?, J?,>aPLAY AGAIN> VO9{@BJ@a,- k@\ RIFFT_WAVEfmt DXdata0_  /J@KTlNmulti-tune-dungeon#toneless/2000 a.d.strikes against nerdsA$@with another coooooolA@@tune... greetings to: crash!,dr.d/dcd,dtp/a@storm&meegosh&nugget&911/the movement, @scrcharger&fix/2ka.d.all 2000 a.d. membaz!jhl/trsi, spock/trsi,the man/x-men and thelast but not least:waremonger/quartex. 'ya feel something  hurting ya all the time - ya cant see it ya cant hide - the  wounds of love are extremely hard to tie - there is no  everlasting love.' contact me for anyreason under:tonelesslaajavuorenkuja 3h8801620 vantaafinland[tl$]'93 productionsM.K./P@7 70 7P 7 \p7  7 7\ 7 \7  70 7\ 70Pp7  P7 7P0 7P P@Y Y 0 YP Y \pY  YPY\ Y YP Y0\Y  Y0 pY\ Y \Y 0pY P@j\ j0 jP j \pj  jPj\ j jP j0\j  j0Ppj\ j jP0j P@I  I0 IP I \pI  I I\ I \I  I0 I\ I0\pG  G pG\0pG /P@7 70 7P 7 \p7  7 7\ 7 \7  70 7\ 70Pp7  P7 7P0 7P P@Y Y 0 YP Y \pY  YPY\ Y YP Y0\Y  Y0 pY\ Y \Y 0pY P@j\ j0 jP j \pj  jxPj\ j jxP j0x\j  j0Ppjx\ j jP0j P@I  I0 IP I \pI  I I\ I \I  I0 I\ I0\pG  G pG\0pG /hP@7 @P707hP P7@P p7 P7P7 7P P7 7 0 7P P70p7  7P P707  hP@YP Y0 YhP @PY pY  Y@PPY Y  PYP Y0 YP PY0pY  YP PY0pY  hP@jP @Pj0jhP Pj@P pj PjPj jP Pj Pj 0jP PjP0pj jP Pj0j  P@IP I0 IP I PpI  PIIP IP PI I 0 IP PI0PpG  @GP PpGP0pG {wrnje`\WRMHC>94.)$ Ŀo ) #7:0 5501-&&"#      콯þ0MDA>:50* 3KSV9Ʀ$5!k2  =pZBO5L"tvz΀_"j.)؇A9ue`s[V8Yʹ(:ij(sgr*>.@6'CQݫW]iiluj n*̧+ 7`@ <0 :@ 8@ 6@ 40 2@ 0@ .@ ,0 *@ (@ &@ $j0: "j@ j@ `@ 0 @ @ @ 0 @ @ @ 0 @ @ @ 0: @ Z@ P@0@ @@0 @@@ 0@@ @Z0:Z@j@`@0@@@0@ @  : @ : j| `  :jjj`  :ZP  :ZZj`     :   Pŀpŀ ŀ \Z   r`ŀŀ ŀ\  ŀ Pŀ ŀŀ Z \ s `ŀp ŀ ŀ    \.sPŀ.pŀ ŀ \Z  `ŀŀ ŀ\   ŀ Pŀ ŀŀ Z \  `ŀ ŀŀ \s Pp  Z p  :`s/ p p   P:p  Z  Sp p`p:   PSp  Z  :`    P: p pZ   p`p:  p : j:`: :Xp@p sjpj@j:p@`rr:r :X  pp:pZpPp: :p: ZZ@j:@` : :   s  j:t`: :X jj@j:@`: pp:pXp p:ZpP: :: ZZ@j:@` : :       ZO @0@@@0@@@0@֐@@0:@@@0@@@0@ @ @ 0 @ @ @ $0 (@j@: @0@@@0@@֐@0@@@0@@@0@:@@0@@@0@@@0@jO @0@@@0@@@0@֐@@0:@@@0@@@0@ @ @ 0 @ @ @ $0 (@j@: @0@@@0@@֐@0@@@0@  @: @  @ 0  Z    ֐  :֐          :  $ ( j  ֐    :  ֐  ֐   :   j    ֐  :        ֐   :  $ ( j>  < : 8 ,6 4 2  0 . ,  * (,&:  $ "        ,             :       Zp  Ѐ  | spp z   Ѐ   p   p $ ( jp  p p z z  z       jp  Ѐ  z   s   Ѐ   z    s  $ (jt zs           Zp  \  ŀ   \     $\ (.j  \ \\ \ h  Zp  \  s  ŀ   | h s        \     $  ( .j\z \                 Zz  jz  Zŀz   l@p@ 0 @  @ @ 0  @ @ @  0p@ @  @| 0p@  @ @| 0 \p@ @ @\| 0\p@@p@ 0 @| @p@ .0\ @| @p@\ 0 @ | @\  @ 0  @\  @ @  0\  @ @  @\  0 @  @\  @ 0  @ @ @ 0@@@0@@0@0 \@p@ 0 @  @ @ 0  @ @ @  0p@ @  @| 0p@  @ @| 0 \p@ @ @\| 0\p@@p@ 0 @| @pl@ .0\ @| @hp@\ 0 @ h @\  @ 0 h @\  @ @ h 0\  @ @ h @\  0 @ h \  @ 0 h   @h 0@@ @ 0 @0 lp        p  \ | p  | \p  \| \pp  | \pl . | s0  \ 0       \    \p        p  \ | p  | \p  \| \pp  | \pl . | hs0  \ 0       \     ++:C*D0K%W?9C!F."*¹Ž /"%R2F]ElXrjqcmcfo\[uai[WJ1O<9+ ذű $ +--9:1O*Q?[H_Ae]Xg`fn^wVplZw^We`WVJMBF):+" ȳ *8&3BE9_=^DdTh^dahuglhZjMhQaWKUIBK8<234 * !          ʺ˺õƽĽ   /'<3(0+2+%.4/0)*(0-.%$"&-"'!. .! )*!$*)4+=-79(?7;9=4 5&E#3Z! EC1CB1U4YUW`&LgN`,]U7DIPF+3?<%&7?FPP<  $&&07=C4!&3=C3!&0%γĺȽ!&/5 ##+0ؾ #&/7<=)!& &-3   #&$# #+07#&+  %+09=DF  #).&0:7#&34 #&0*$+00#+-п &% # &  ؿη $+08<(&5=C4#&0=F-Ǧ&+3 %# $+092ήο !&07<(%+08?2 !&07-  $)07Ĺ !& &.3)%)ĺ&.3:2  !#+0(&09?FC-&-ؾ  !&05/#&00 #쫯%)$+08?C-%#+07/&+/  ##ί! !&/5DKPC(즇ξ!& +34+ !) && ؿº&+ !+0 ##ɸ#)08=D<#0+غ!&.3=*!+4# #$*0:??⵹ !&/5/$+08/ !&&07=DIPP(쫠̷!&+3:?FPA&-39/+- ε&+3:?FPSR< ! δ %+3:?7&082 ۽&+09A7#+#+Ϋ&.5:7 $+07( ɿ&.38( +  %*#!&05-!&+( !& #%%   $+0 !&/5/ο &-39?/#.)⦂ش #+0:?FLPA/7CI<%   ؼǮؼ&/5?*#%й#&/5+ +5<(&4       ! %.'%.%1-կ%-39>9$%11!   !* Ļ  %,19=CHC! ڴ !!$*06:C9!%4=>   %-1!  % !' %*10 %,18=C=+  "'!  %*1-!-0 з  %& $+1&   %,1& ڼ%*.7=BC- '&̱%' !*39=9$*+!'  %*.!%'ڴ  %-& $  !'  %*-%,18=C4%.94  %.49@=!%1& %,.ڻ !!'., %,  !%.+ %*18=CHLP9   ! %+$$-3'к  %%     $*.79!   в $*.6:BHLRW[W!%,29?>'$.:@4&.- ǰ $! %12 $ $*$     !%-*%+17=@*!     "*.4-*    $*.79   %,0 $  "(.*%.69!  ¼Ǽ%*18=CH4'.=D>$ $*.6=CHL9+3>(   $*.7=C9  %*! %*$ %*   ڴ %*1! %$%,!д ! %+18?C&  %*.4ʽ %*.7=BHL>07BIN9 $*.4$.6&     $ ! %-28=CC0* Ⱦ !%.6:=*!,7& ,4:CF=-& ڶθ$*.8=C>*-8@+!.8@DC& $*18=CHLL4-8DLPL-%Ƹ !'.7=@!*.7=BHL4*ɻ  %* !%.4& "*.&о  %.!%-39& %,$*-    %.39>+ !'    !%* "+28=CH<& þ 䶲 !'.7:BHLQUL4=JPUN&*39?C&ƽ   %.49@FLPUO!%.6:?CH=$ ¯ʽ  %,39@DLPUWC4=HC ߴ "(.7=B4!!"-(%.49@0Ǽ Ǥ  $   %.3&%-390ƽ "'.4:BFL<!  ¯!%-39>FLР %&  %-!! !%.$  %,18=CC+д !'.4:BHLO9-8DL9+3?FLPL1."*.6!%-39=DLPUL".-$.499Ϊ  %-39- .7=DLL>+3?9!  Ъǜ$*.'199! !-39>DL>*+䴖  !%.0 *37!%-1ڜǸƷ "*.6:BFLE& $$ !! ̢ ! "¼ "%!*1-%.4:>0 ڲ $*.8-'!% '.4&  !%+ %.4:@FLPUQ98DLTWU+ ɯ !*.7=CHNUVC0,+'.!ڗ  !*.6:BHLL4(%31Ǘ̼ !%.4:@4 %.4:-$.-佷  $(*  %! "+&ڸ%,1*!    "   »% %.4(%18=CF4Ǥ %*!!*.%.0%.7:-$,лڻ %*.7=CHLPUC4=LPL4*Зĵ߽!*17=BL@((%18=C9$%2(ڵν $*.0$",39>CH0$%+& η½%+33$ !&$*-   "*'%*170 %  $ %,17=B@ λ ""'%-39=4  !!'.7-$д!*.49@F=$    %  %-39>FLPTW][L=HL0д $*.6 *29=4!'- !% '.7=BHLPUL4%34   '.6:@FLPU[^V7*ü )+  ##!+=KSagngggb[UG90*&))&!° +8?GKPPKF?7(ɿ &+0&  #+9FPX[_aa_XQF=7-% #&&% ƹ&3=DIPPKF<0!Ǿ&.240&  )8FPSX_a`]SIB<3+%#$#Ĺ&7?FKPKF70(#Ĺ#09AFD?7+ú!+39>FKPPFA?<3)  #.=RFq`欯qiDzlr7IF8INF&&NUI8;!Ϊ=4ɢɺ"DVXPF=42De}vupcS@)Ҹ "$*8Ni~uiSF4) Ƕ *=Pdqv{n`UI>4*!"0@M[aiu{sk`VOG@7-$¶&5@JS[dpy|ysle`YSMF:0$ Ž "-8FMS[elsuvwvtqqje^ZRHB=0# º '4@IPV\ailpqqpljie\UNI@80&ĺ&082) ý"-5=@FNSUY\_\\\YXSNFB<5.$&-04>FMNVYYOSUXSRMF=@50*% ½ &/8<=>FNRSOMNRVUSIF=;40) &*48=?FGNPSSTPPNNIG=7/'! !(-45>BIINPNNMNONFF=;-,($ ý &*05=BFIGMSQNKMGFB=940) !'.5<=BFFBHGGGGF@B>;2.& ½ "&*08;;=@FGGMNF@=;;80&!$"&(35;=FNIFFFB=420--'$ ¼ %449579@@>?F@==<84-%!"'14545=FHGF=88::80)ǽ &07438=>FF@>>:895,$"  "*28577:<=858544870' &*04545:;:8542040* &2853424230/**/--# "*/42/-/22-,**&&$# $%***/0./4/,**$""  "&*--*&'(,0,&"!  ""&*-,*&&)&&"!  "&&'&&$&&"  $&""$(&$  """$&&" !$"#"!!"""! !!    !""""  !!!  !!"                                                                    @h]dH\!^+ ]@ Im&*- -O-'OO--O-(-m--O- -O--' @P JARHviIMPMTETRIS NOW!  d,(@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ak cSIMPIsqe.xi <   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk@$$$IMPItetsquare.x <   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk++$$$IMPIsqe.xi <   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk@@+IMPI<      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwIMPItetsquare.x <   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk@ IMPItetsq2.xi <   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk@@ IMPSsqar.wav@@9-25-05 DIMPSsqar.wav@@CheapAlert DIMPStrianl.wav@@nintendo rulez :D DIMPStetdrm.wav@@and so does D! IMPSdnsquar.wav@@Alex Pajitnov ,,D'IMPSdnsquar.wav@@COMMUNISM,,D*@H<Q<!H!CTMT4LTLTE@<MF<!TM0T!8M!CTMT:LETLT7LBTLT8MCT<MFTAMJTMT@LHTLTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaapppppppppppppppppPPPPPPPPPPPPPPPP00000000000000000 ppppppppppppppppPPPPPPPPPPPPPPPPP0000000000000000000000000000000000PPPPPPPPPPPPPPPPPpppppppppppppppp 00000000000000000PPPPPPPPPPPPPPPPppppppppppppppppp% P% P % %  PPP % nn% 4% % % nPnnn4% % nnnnnP P% P% n nn % n4CC%  n%  C% nnnC nnn n% nn P% 4n% % C% nnnnnCn % nn % % n% CP%  nn% nnn nC% nC% % nnn% nnC%  nn%  % % nnnnnnn4% n% % % PnCn% % % % % % C n% nCnn% nC% 4nC nCnn % nC% % % n% % bnn% % % % C%  nnnn nCn% 4Cn nnCnn n% nn% n% nnnnnC% 4nnnn nnn% n nnn% n % nn% nC% % nnnC% n% C% nnnnC% D  * D 4  * 4  4 4 M   4    4 M   D   D   4     M   4QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ qtU! ppS|U-] w@T4TT@ wV 4VV@ wv4vv@ DzTTRzzl \\u CGS 6,G*wC*C #G wT 4TT@ yA O~w2*66$0a2?, ?,DD$$6?, 6?, \a ?, ?,@B333?333??,B+6?, 6?,\a ?, ?,@B333?333??,B6?, 6Aa B?,B?,?,?,&6?, 6Aa B?,B?,?,?,  greenaTETRISPgK@?,P?,?,g?, aTETRIS'  orangeaMusic TypePge@?,P?,?,g?,?,?,daMusic Type' oFDV>%V &-60 )B% & , , 3Fj z% ImOutpRemCl|All|F'6G &6i &6i 6G #dz% SetLinespppSetLi|All|F|, (6S J, #z% SetLevpppSetLe|All|F|, (6O J, ##z% ILostGame6n $pppCliLo|All|F|, '-65)B% & , , z% ASetLines%6JJ&  Jz% ASetLev&6JJ&  Jz% HostLost-6m'JJz% ServerClosed,aServer host left, good bye tetris :/b0, o z% RemCl6H6$&6$% 6$&6H&6H6$Ez% SetLines6eJ, vz% SetLev6UJ, z% CliLo6J$ xs`X p.  6s?,6s?,'@(6p 6O6p 6O-Z, %C, ,%?, Xt]9m*%,w*K%K,w6 K0*66K06t6 K0*XX%I66K06t66K0K+XtHXp%>p, X%-69X6Ep=(>4-69X6Ep=-69X&6Ep=pX%(,w*X%77,7,7*T w7&*77& 7*T7[(O L_i@<q%:q,  _q dwSKB/1D6?wD6?a__Y?. d ????66'_333?. A ????66'h_?. X ????66'_>. k ????66'(_̌>. r ????66'_>. H ????66'. D ????66'%i$i@?~ BlueYi?~ Redi>~ green~ yellowX,6w6a1$TT+ sKr.B.M B BBBB6K?,6K?,'6r @6r  p\#x9D\?,  X" 2Xq%q,w6 q"0*}D6d?6"?66q"0qD6d?6"?66q"0},  }% q,"> qC%YC, {%O{,E-69{6EC=m%Em,;w6 m"0*;?66m"06"6d?C;?66m"06"6d?{96d?%"> ; mS{!C6"D6d6"D6d  L(7[n%PC??, ?% C%w%@D?,eD?,weSWe %6!fff?6!>64p 1&6!o=?, 6!?64 A ,6!fff?6!333?64P 642!4(?G??,?% ?% %nD?,SD?, eSS o%6!o=?, 6!>64pA& &6!fff?6!?64 & #,6!o=?, 6!333?64PA& 642!4'%,w*% N `#) %L~#|L@zMM#Lazjj#LzGG#Lp#L##L&L~#|z# zMM##zjj##zGG##p# YHb$^&:1:$  '1$;  (1$^-v^%h-v( -b-b-v' o)t^(%(,66()06), 766()06)%(66()06),766()06)%(((%(, |%|,-69|6E(=E%E,E66E)06)}66E)06)E( }|(EZ|((' ]zB  a' YKx$To-x  '& ' I-wI%S-w( -x-x-w' ig="g6W WwW40wfD0-j-f'|IK_LeftMouse|IK_RightMouse|IST_Press?&^^nG'(' YQQ$`&:1:$  (1$;  '1$^-y^%h-y( -Q-Q-y' l`WI`cd|IK_Left|IK_Right|IK_Down|IK_Upr+* a!(a!w+*!|IK_Down)zIST_PresszIST_Hold6*6*?6* +*(|IK_Left)zIST_PresszIST_Hold6*6*6* +* {(B|IK_Right)zIST_PresszIST_Hold6*?6*6* +* {(|IK_LeftMousezIST_Press b+'(|IK_RightMousezIST_Press b+((' `LDJ 6]L)K%/&/,/,/{&/{&/All z%/AddCl6$6H,/6$z%/RemCl:0,/: :6H46$&6$% :::6$&:6H:&6H:?6$z%/GFDfdgas! OP4%|.J J 6P?, 6P?, '?(6| 6Z6| 6Z-z,%C, ,%?, VX u .%.,-XU66.%66.&66.&66.%66.%66.l66.l66.%. sf] {N.  l c@C`  fVa @O !a ! 7H\,VA,%N,,9-,Hl,NDl,_l ,l,,,, `,H,H--`,jb sZ Y.{o  U i|9v4".P P 6|?, 6|?, '?(6 6j6 6j-W%C,%?, QLE"+@.M M 6L?, 6L?, '@(6@ 6R6@ 6R-E,%C, ,%?, sX Y.{s  s gAA A blueAaTluAA aT'AAAA {f:'A.O O 6f?, 6f?, '@(6A 6Y6A 6Y-[%C, %?,  s_V N.v  c YP~#Wo-~  '&  (I-BI%S-B( -~-~-B' IB .@-BB?B?,?,B?@?B BaHOST{MB2?, {?,?, M?,B aHOSTB sbl }N.x  c ItF >@-FF?F?,?,F?@?F FaSTARTSF2?, ?,?, S?,F aSTARTF j\1tfo?\6M?R66Eo6EME }eD 8@-DD?D?,?,D?@?D DaPLAY AGAINNQD2?, N?,?, Q?,DaPLAY AGAIND YVR#&:1:$  '1$;  (1$^-F^%h-F( -R-R-F' M~C~ { On,  c  c  cA S-,A P-,A J-A M-A 2 Ng,  c  c  cA -,A Ag;$G.S S 6g?, 6g?, '@(6G 6C6G 6C-r,%C, ,%?, wC888$8?8?, 8 8aHyper sucks!8$88 EK7)H.N N 6K?, 6K?, '@(6H 6F6H 6F-k%C, %?,  YNI$[o-I  '& ' I-zI%S-z( -I-I-z' I< .@-<<?<?,?,<?@?< <aQUIT[c<2?, [?,?, c?,< aQUIT< ^U@ a' `F'"FReady to start the game! \e iK e%~e,N66e66e66e66eNe "Ba2 ,,1 @ ;%;a]-[ X&4a]-[ ,?9a]-[ ,>:a]-[ ,>7a]-[ ,Ea]-[ ,`a]-[  gUDU75a!U UaGAME OVER[yU>6?,[?,6?,UaGAME OVERU#apFINAL SCORE S [yU>6?,[?,6?, UapFINAL SCORE S  stMb]t $ H ,  8 D , L d , ` r , t A ,  X , k , k%Uk,Kw6 kt0*-696t66kt06E6t66kt0='k^ YD4/o%o,w6 o*D%H 1666o666oD~D6D6DD %?,oDD x}(.J}%H},<w}*}%> } Y]^Jf1y%y,o%]%]], S-69y6E]=o]!{o, ]yzyz,R,  # I,/z%Rz< z,d Z#,/   TNRhNq!B cS3>G#Mx%Ex6G ;rx6i Sxx wk Vkk$k?k$ jQ5%6WFailed to join:Q p@/I%@%G@,;w@*@*= @ Z^%LRP-W6^6^6^?%  ^ qH03}"MA%EA6$;zA6HHAA kRFq2AZR%XR, U%NU,-69U6ER=(UR ~% =66~;~, 9\RIFF)WAVEfmt "VDdata)                                                                                                                                                                                                                                          Z f#&FF P!zs}>+fyBk jS-I!M  ,iWU b e} e N` "#&l#u Q e9 !",&1dS\  ,`$0# 9]+%+,b'""*'0p&3%+.  )\jAg^xM>  hZwx ?(XG8 S"JYY j"O!X$0"t $  tk/@/v "NW1-D)o>z*.5?:(x!"n9V K a^p#^)g*/ڷې pdI$ R DA ޠ!~Q Oy3nA3  iG'X 3 'VQR?O 6(L{4  fp59--,&"* *, k o( & %4(~*~*~*&~($ & >r~~~~~^vv^F.~~~ ~ ~ ~"~"~"& >>> > > & > & $(~.B ":Rj "$(,~0~.*&"&> > > > > & > & rZB B B Zr&>>>&  .F^v>&rZBBBZr &>>>>>& "~&~&~&~($ &> > &> >:"  . .F^v &>>>& $(~,~*~*~*&~($ & r~ ~~~~ &v^F..F ~" ~$ & > &  $(&ZBZB ":":^F. !!!!-)-+'+')%!  #%!!###   7 OgkkSkkS;#;iQiiQiQi;# 7777O7!!###!%!%#'#'%)%!9}} ! 9Q91+/+')%)-'+'+%)%!##!%!7  7 O7 O7 7 79! 9Q9Q9Q9!9Q9!    777O7O77#!!#!9Q9QiQ ;# &#";#" $'+' "%)-+'#%!%)# #   # O7  7 O7 7Og#iQiiQiiQiiQ9  #  #  ggOgOggOg#  #; S; #; S; #;S ;#;#   g'#!%)#   (@X@(||d|  8 8    (@((@(             #)%!%'##%!!#!4L44L44L4    (((   (  (  (#!!%#LLLLLLLL                       wwwww  wwwwwwwwwwwwwwwwwwwww w w w wwwwwww      wwwwwwwww       wwwww w w w w w w w w w       wwwwwwww         i i i i i ????? iiiiiiiiiiiiiiiiiiiii ii i i i i i i i i i ??????????iiiiiii??? ii i i i i i i i i  iiiiiiiiiii?iiiiiiiiiiR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R RRRRRRRR@@@@R@@@@@@@@@@RR@@@RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR@RRR@@@@@@@@@QQQQQQQQQQQQQQQQQQQQQQQQ???????????QQQQQQQQQQQQQQQQQQ???????????QQQQQQQQQQQQQQQQQQQ??????????QQQQQQQQQQQQQQQQQQQ??????????QQQQQQQQQQQQQQQQQQQQQQQQQQ???QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ???QQQQQQQQQQQQQQQQQQQQQQQQQQQ??????????QQQQQQQQQQQQQQQQQQQQ??????????QQQQQQQQQQQQQQQ0000000000000000000000000000000000000000000000000000000000000000000000ssssssssssssaaaaaaaaaassssssssssssssssssssaaaaaaaaaasssssssssssssssssssaaaaaaaaaaassssssssssssssssssssssaaaaaaaaassssssssssssssssssssssssssaaassssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssaaaaassssssssssssssssssssssssaaaaaaaaaaassssssssssssssssssssaaaaaaaaaaassss6.O&q|q{1vq;l 3-ZC FB 29]'j?A P Ls^yi( s/ /uzB g !B @,5*j  Gfnb i: +&4 , ~vDLt jbJJJbJbz    >&b   zbJJJJbz V>&J22222Jb    zbJ&>Vn  z bJ22Jz   nV>&bz   z bJ2222Jbz zbJJJbz   z bJ22&>Vn   zbJJJbzbz nV>&JbJbz   zbJJJJbJb>VnnzbJbz     V>&>&>&&Jbz  zbzbJbJbz nV>&bUmUm  mU3Kc{77O7          UmUUUmUmUmmUmUmUmmmmUm     3mUm    33K33mUmmUm    K33Kc{cK         c{cK3h  <T<$<T<$<$h $ $ $lTllTll  hP    hP $   $ h hh hPh hPh hPh hPh h $  $ hhPh hPh hPh hPh hPh hP $  $h h  h  h  h  h  h  h <hhh  h  h  h  h  h  h  h$$$$$ $$$$$$$$ $$$$$$$$$$ <<<<<<<<< <<<<<<<<<< <<<<<<<<<< <<<<<<<<<< <<<<<<<<<< <<<<<<<<<< <<<<<<<<< <<<<<<<<<< <<<<<<<<<< <<<<<UUUUUUUUK K K K K K K K K K K K K K K K K K K K K UUUUUUK K K K K K K K K K K K K K K K K K K K K K K UUUUK K K K K K K K K K K K K K K K K K K K K K K K K UUUUK K K K K K K K K K K K K K K K K K K K K K K K K K UUK K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K UK K K K K K K K K K K K K K K K K K K K K K K K K K UUUK K K K K K K K K K K K K K K K K K K K K K K K K UUUUK K K K K K K K K K K K K K K K K K K K K K K UUUUUUK K K K K K K K K K K K K 5555555ss555555ssss55555ssss5555sssss5555sssss555sssssss55sssssss5ssssssssssssssssssssssssss5::::::::::::::::::::::::::::::::::::::::::::::::zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzttzzzztttttztttttttttttttttzzzwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww4P=+]l u^{uLI QDR$<c ~_ ' qD {XdFOnl:E]=Tyy 5E!< &4[94,e @/,}\%+#uc1//{Wc R l0U-s?8l~ Y(DuMc(>3E-;A D  mci' .[SD&3 i \ !  FM4Q s K-NT wQ7b mI K"S  R5^ Y i xS .bbb bbbbbbbb bbbbbbbb bbbbbbbbb bbbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbb bbbbbbbbb bbbbbbbbbR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwI $f E!{!$" y~# r  |' $!pJ "*))(J=(- "$'.#"0V'_(6B} !() ,$$Z)d(  f6$? *#,-ADju <7 ~  E@  #X!&m eG^{ &' -lLn| Bd9!#kl/(,z++3())CP]3k& &+1t\ t03)z+u:.-`0&.&(j#" ( "1.8 !DYLM$$].- 5>(O1*i&W!1 > V-IB$a!'zC !(8Z; < !}{} Bt$}/b!1+I+.* $R 2 @p $_ + {!| 3t5h*&&!"!!!N)buD:HGq,+)=2('&-##>s C$^] *1.///, Nf~  ~fN6 "%%%  6Nf~ H```~f N66N f~~j!!!6Nf~   ~fN6"(+++ 0H~f N$6(,0552.6*N(f$~ `H`H~ f$N&6*.0,6&N"f~~fN6"&(+&"6Nf~  `H0N6!!!6Nf 0H``~fN 660H`~  %%%"$ 6Nf~ ~fN6"&6&N"f~~f"N&6,04799969406,N(f$0H`H~fN"6&*./,(6$NfNf~~  ~f  "   6Nf~ ~f ~f N66N fN fN 6 !%%%''''%!0H```H&>V>00 )'#'+'-)%"'$'+/1'+')-)-'+'++)%)%)#'#'! !#    '#!   %)%)/+/+'-)-51-373/3-1-)-'   #       "0&&&!& & # 0  0 $0  '!&!&&0H0&>&&H00H00H0& >& >& 0H``H0H`>&>V>&   0&0&    !'##'%!%)%#'+'%)-)%+/  '+%!%)%#'#!%!#! "          !!!!!####%%%%%'' !!  \\\  """""$  \ \\\\\\ \\\\\ "   \\\\ """\\\\\\\" \   """\\ \\\\\\\\ \\   """" \ \\\\\\\ \\\\\ """"    \\\\ \\\\\\\""""                                  X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 2 7 (s   9 f"rq `aeq P#e (`z~ D aCR .tmU=0XVcz%zNO a7pO% L 4 #K BD G g( n f#Ts{6l F02w" !- o)\+BLO1",,o+ I L q \2?_$Y XU "B^1Я+[ 7'| WP@c2 ? 0at"}"_Q O 20c>U C c*+uS? q%#&'2 }&!} 4 )$('!aBt'X K xM y ) Q=  (0H```HP8    0HppppX@(   8PPP8     8PPPPP8 P8 &$  0H````8 "&&  0H`PPPP8P8    0H```H0  0H```H`H0   8PPPPP8    8PP8PP8  ""0H`P P 8 "(,,,*&*&" 0H``P`H0 """   H0H`H`H   08 8P8PH0   0H`H00     #'##))))+++'#!0HjjjR:H`H&&!               !#!!%!'-)-)-+'+')%)-)+'#'#% !!%!             !##!0  0 "0  &&&&&&   &  & &  &>00H:":H00H&&>&&>&>&&>V`H0H`H0>V>0  &  00&      # ##'!!%!#           "                 ߀߀  "     """""     """     """""     $"" \\\\\\\\\\ """$$$$$""  \\\\ \\\\\\ \ ""$$$$$""\\\\\\\\\\\\\\\\\\\\\\\rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr"$n !YCgP7DRMTQ/q nrKYIrY! 2=-Eo)C'H#- $ >\g& %)6$O [yKj&^%   1-\" R,aj*vMIp(?5fMX"x  # U  +ru N 'Kj h"&%%!*N< A" &%'T'*~;(+D`pG o & nU> )b|K) qC=s7 t ?@% |O /d6 - i / 2,#& (1SFdd",q:E^  y; 0H`PP8P8   H````H0   8PPP8  8 P P P PP8 P8  (0H`PPP8   0H``PP`H`H0  0H```8    8 ```H`H "&*,,($ H```ppX@   8PP8PPH0(  8PPP8 08PPPP8    " H0H`H`H0" 8 8 P8 P8   8P8         ###%!0H``V >&>V>&0    ##!      #!'+'#)%)%'+'#%)%#             !%#'+'%!#'+'        ":"&&  &  & 0000 #&  0  &0H00H0& >00H0&>& &>&>&&>VV>0H`H:RjH0 &&0" ":  ! #%!#         "         !  !             """         """     "    """  \\$$"""" \\\\\\   """"$$\\\ \\\\\   $$"""" \\\ \\\\  """ \\\\\ \\\  $$""""  \\\\\\ߤ \ $$"""" \ \\\\\\\  $$$"""" \\\\\\\\\\\\\\\\\\\\\\\rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrQj  NKf T ?.= 0y2`pz} [n $ p   @!$ `. +  Q - pi#e,y+!"`_MN7H (KDb Bxj, ^:e'*Oo Zmf>"6%o yt+,`& >u9 f  [ V##O)% !5\'?"%1 VT)! a $)) Dgf3}9 2nu* ٱ }C  2+T/$y H-*Qy28! "i#*(z!+.Y#9 /*o&g5J,:{ ZZ%)2p u 9Yr (Ps?2, ycH(`  H```HP8  """" $ (@X``P P 8 "&*(((" 0Xpp`H00H``PPPH`H0  08PPPP8  0H`PPPP8P8  $(08 P P P 8 "&*(((&" (@H```HP8  08PPP``H0  8PP8PP8    8PPP8  "$   8P P P P 8  $(  08 8P8P8   0H0H`H`8    8`H00   ""  8 8* .8* .8,P(h$P*h&P*8. 08,P(8* 0  00hPh h 8 8P 8P8P8P8    8 8 "8 "8 $8 &8"P8" (8$P8P8P8( .8*P&8* 08, 08.P*8.P*8, 08,8(8$P8"P8" $8 P8  8P8P8 88P88 8 8P 8P8P8 P8 8P8 8 8P8 "8 P8 P8" &8" 8P8P8P$8(P&h"P&8*P(h$P(8.P*h&"     ( (8"P8"P8 $ hPhhP8 h hhP hhP 8 8P8hhPhPhhPhPhhPhhP0"0 000hP hhPh0   0H0H00H0HhPh 00 h&P*P&h"  hP hhP hPhhPh h hP hhP hhPh hhPhhPhhPhhPhhPh  h h"   h"  hhh hhh h    \\\\\\ \ $""" \\ \\\\\  $$$""" \\ \\\\  "$$$$""" \\\ \\\\  ""$$$$"" \\\\ \\\  """$$$$"  \\\\\ \\  """$$$$ \\\\\\ \  """$$$ \\\\\    """$$$ \\ \\\\\\   """$$\\\ \\\\   """$\\\ \\\   """\\\\ \\\   """\\\\" \\   ""\\\\\\"" \ rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr$0h { q. a? 0 " L!"f/4## "# R:"'+k4/*j"&$1si33'0I,(("`!x >7%k"+ O|+M '0$2 {8 ""F*"+,+Q5jtޡ TG :%V$_ }G t _#6d'86N GQ eK0i u%#m+) &) u:  v&' .."0($@ b$I10>0qa%867;=S6+D):& . #&"h6"'J;.5+k$%H T|u E$:+#50 rinEM ?m0"0-7U*[<  SU)')%{>xq`p}i !)(( ^$ [ Po?1(* 3;4  -I$!A!!$"G*1<Y)'B<+*$156p "k-N,6[07$%oBo aXgic!*; #4b(B0 KpЬqlu""?i#%. ba !5 Y (8 a*\h`++/. ! o_<4m '&,{0&%"W7T x N+6!$)80i h9 -$,M%F%035j>r\ &<VNl $f(aV 6@+ $ 2A)+s*W+t a } v c 3$9S(Bt _S1ze  H7  TwSv?C{+g/+(K(]*V  @-y0&g,+'%B%$ j@'+*-q<}44_5//%,K2D:D('| )-N/2,.( "|!{% Iz#!F =P 4q߿jR  P] "s*$!U+j 7 rrUF&+"  !! S4 m\"l$/(+ L %T.i(zd} !*t$s+niK!*#Q"(- , %n ^4'>=] ,')O+q1L/({%D$!:**9T PZ@)4P02)5" ^ ! "[& Xt%+N* o"#:3"[$ b$I+)P : XVS I  M n j +Z    r  Dy[ L"$%(i=~: JH\ '7,l0E#'(&"~%;$#$+0,\+)I47&32(wm%8] .\9(%!44  ) R \C"+.G'2N0t+]/@$$#T$b (٬oz)JwTe TIKF* k : 5m xLF0FSm g8& ?d)R'\UuH$|]"%#m"_! R d')p!!/%"!*+$-cz237 "#^-##$)t T )e30d,)-)I ,  J!N!Gd%'8"|'L' gX` 'o ,* J' (C, 1O:\1 PFx?>aMBBq ;"\CT  " W%#z ' 'V'C &u-9-+(q' ,,DZ1.p A?2{1,7y(O [Ki/l>(2n'}s. p +`*@mO t / O %Q^Dx #q > &9۩k \V o: g +_ "BhCQmZ>jw Y:WR]E PSz 4 zxL|A Jl ?ny"2)SF+)79R %,pc  Hp U > 2l$4*& ,\#{  %)R]#'# -]=zJ}W  _c"  ;.Jm:xu7_/ ;B as uT$Y~X @lA3e 'u 7W < Z m %%sBi.|(z&!g&& #+'.&.8,\GZ fh/>~+V( ! !3'"(%"*'IJg . q zJ k Jm[Z Q KV A6/ _-  z 2 ?8 \\\\\  $"" \\\\\  \\\\\  """"" \\\\\   ""     """""                                             X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X = 2 ) DestroySelf(); } simulated function DestroySelf() { shootinggallery(XCA.LoadedGame).RemoveTickMember(Self); XCA.RemoveIcon(Self); } N//============================================================================= // TimeTarget. //============================================================================= class TimeTarget expands GalleryTarget; simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.drawicon(button,2); } simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); XCA.myplayer.clientplaysound(sound'pauseopen'); MakeSmokePuff(Loc); DestroySelf(); } zpuJC q//============================================================================= // TetrisStartQ. //============================================================================= class TetrisStartQ expands StartGameQuestion; var tetris MiniGame; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'MEDFONT'; C.StrLen("START",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("START"); c.Reset(); } simulated function PressedEvent( bool bLeftClicked, bool bReleasedClick,optional float GUIX, optional float GUIY) { if ( bStickMouse && !bReleasedClick ) XCA.bStuckMouse = True; Else if ( bStickMouse && bReleasedClick ) XCA.bStuckMouse = False; if ( bLeftClicked ) { if ( bIsPressed && breleasedclick || !bispressed && !bReleasedClick ) { if ( bIsPressed ) { UnClickEvent(); } Else bIsPressed = True; } } } function UnClickEvent() { Minigame.BeginGame(); XCA.RemoveButton(Self); }  h6//============================================================================= // TetrisPiece. // // A group of four TetrisBlocks makes up one of these. // //============================================================================= class TetrisPiece expands TetrisObjects; #exec OBJ LOAD FILE=..\Textures\Ancient.utx PACKAGE=Ancient var Tetris Minigame; Struct Coords { Var int X; Var int Y; }; struct Blockvars { var TetrisBlock Block; var Coords RelativeCoords; // Relative coordinates. }; var Blockvars Blocks[4]; // 4 blocks that each have relative coordinates. Enum RotType { RT_Top, RT_Lower, RT_Left, RT_Right }; var RotType Rotation; var int MaxX,MaxY; // Maximum relative x and relative y. Usually both are 3, but for the straight piece, these are 4. var Coords MyCoords; // My coordinates. var int blockcount; // Number of blocks attached to this piece. This changes as lines are deleted. var color BlockColor; // Color of each block. var bool bStationary; // A piece is stationary after it cannot fall anymore. /*simulated function DestroySelf() { Minigame.UnregisterPiece(Self); // Remove self from piece list. XCA.RemoveIcon(Self); // No longer needs to be rendered. }*/ function RenderMe(canvas C) { local int i; local vector V; For ( i = 0; i < 4; i++ ) { If ( Blocks[i].Block != None ) // Render each block based on current coordinate location and block's relative location. { V = Minigame.GetCanvasCoords( MyCoords.X + Blocks[i].RelativeCoords.X, MyCoords.Y + Blocks[i].RelativeCoords.Y ); C.drawColor = BlockColor; c.SetPos(v.x,v.y); // Set position at the canvas' coordinates that correspond to the grid. c.DrawIcon( texture'Ancient.aceilin1', (Minigame.CoordLength)/128 ); } } /* V = Minigame.Getcanvascoords(mycoords.x,mycoords.y); c.setpos(v.x,v.y); c.drawicon( texture'aPower1', Minigame.coordlength/128 ); */ c.drawcolor = c.default.drawcolor; } function MinigameTick() { local vector DesiredLocation; If ( !bStationary ) { desiredlocation.x = 0; desiredlocation.z = 0; DesiredLocation.Y = 1; Minigame.AttemptMove(self,DesiredLocation); } } function Collide() { bStationary = True; Minigame.CurrentPiece = None; Minigame.AddOccupiedSquares(Self); Minigame.RemoveTickMember(Self); // Stationary - does not need to be ticked anymore. } function PostSpawn() { SetInitialBlocks(); } function setinitialblocks(); // Override in other classes. singular function Swap() // Used for rotational purposes. { local int r,temp; for ( r =0; r<4; r++ ) // Swap x,y coordinates of each block. There is a method to the madness. { Temp = Blocks[r].RelativeCoords.X; Blocks[r].RelativeCoords.X = Blocks[r].RelativeCoords.Y; Blocks[r].RelativeCoords.Y = Temp; } } function Inverse( bool bX ) // Used for rotational purposes. { local int i; For ( i = 0; i < 4; i++ ) { If ( BX ) { If ( Blocks[i].RelativeCoords.x == 0 ) Blocks[i].RelativeCoords.x = MaxX; else if ( Blocks[i].RelativeCoords.x == MaxX ) Blocks[i].RelativeCoords.x = 0; } else { If ( Blocks[i].RelativeCoords.y == 0 ) Blocks[i].RelativeCoords.y = MaxY; else if ( Blocks[i].RelativeCoords.y == MaxY ) Blocks[i].RelativeCoords.y = 0; } } } function Rotate( bool bClockwise ); // Called by input. This is different for most every type of block. }P|RIFFWAVEfmt "VDdata[[[[[~~~~~~ 999999 PPPPPPP444444<<<<<<<(((((((hhhhhhQQQQQQ^^^^^^IIIIIInnnnnnn%%%%%%J J J J J J :::::::t t t t t t  }}}}}}       <<<<<<< ::::::: V V V V V V ////// UUUUUUUQQQQQQ______BBBBBB~~~~~~~      111111444444 888888 EEEEEEE{{{{{{ 222222<<<<<< =======yyyyyy&&&&&&\\\\\\IIIIIImmmmmm'''''''O O O O O O ]]]]]]KKKKKKKiiiiiinnnnnnwwwwwwgggggg/DDDD55555VVVVVTTTT))))SSSSSaaaaa>>>>}}}}}LLLLL99999+++++fffff +++++jjjjjllll????}}}}}2222....]]]]],,,,,XXXXQQQQQLLLLL(((((<<<<<yyyyMMMMMuuuuuVVVVVUUUUVVVVV))))oooo!!!!!>>>>>====={{{{lllllgggg ZZZZEEEEE77777.... /////yyyyy++++-----1111 tttttdddddllll(((((''''bbbbbaaaa      aaaa? ? ? ? ? WWWWWQQQQ?????~~~~~ f f f f ~~~~44444 jjjjjrrrrr88888'''''O O O O O ddddd *****TTTTTFFFF7 7 7 7  BBBBB| | | | ;;;;;,,,,, x x x x x b b b b b RRRRR ! ! ! ! [[[[[J J J J J }}}}}nnnnn#####N N N N N ^^^^^DDDDDKKKKKjjjjj+++++ggggg$$$$$ 8888iiiii^^^^^<<<<zzzzznnnnEEEEE((((7 7 7 7  XXXXX 999;;;vv MM@ @ @ Z Z  = = """DDR R R }},,,WWSS tt\\\II '''__7 7 RRR] ]  ((www'''3 3 ZZLLL...UU^^DDD[[GGgggqqqyyyBBB}} jjj gg> > UUUUU/// qqmmm ooo;;999222v v ;;;___888pp""CCC= = OOwww U U }}}AAA(((aaaee&&& ==333DD PPP __mmLLAAA ee  PPP 999 | | ...    BBB...,,~~~ kkk GGGrrr''hh111```hhWWWSS }}VV---ZZLLL999222 ==SSZ]]yyttXXBB  (({{GGVVSS[ [ vee66mmII!!//__LL  %%HHp p CCEvv55 % % ``88 NNJJll]]EE$$[[ r77nnuu<<@@CCzz..IImmMMee7 7 VVUU  ||BB||YYJJ3311MMnn--YYbbZZLLh~~uuhh00aa{{HH%%ddHHoo" " nn--YYOOaaAVVUU]]**[[//CC))NN%%JJCCUXX&&   !!ll::tt&&dd88VVZZcc 44ee88 TTCC++]]FF2266ll**ZZbb<<77tt11''OOMMHHoo gg==yy66''NN  YY@''  11bb <<55E E D//============================================================================= // TetrisOCB. //============================================================================= class TetrisOCB expands OnceClickButton; simulated function PressedEvent( bool bLeftClicked, bool bReleasedClick,optional float GUIX, optional float GUIY) { local vector V; if ( !bReleasedClick ) { V.X = GUIX; V.Y = GUIY; V.Z = 0; Clicked(bLeftClicked,V); } } simulated function Clicked(bool bLeft,Vector Loc); Ocyc//============================================================================= // TetrisObjects. //============================================================================= class TetrisObjects expands xConsoleIcon; [Lv"eq!= y //============================================================================= // TetrisEndQ. //============================================================================= class TetrisEndQ expands EndGameQuestion; var tetris minigame; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'Smallfont'; C.StrLen("PLAY AGAIN",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("PLAY AGAIN"); c.Reset(); } function UnclickEvent() { Minigame.Gotostate('GameStart'); xca.RemoveButton(Self); } dS^6.CloseGame aQc (-'? $ (u//============================================================================= // TetrisBlock. // // A small 16 x 16 (or whatever), square block that makes up a TetrisPiece. // //============================================================================= class TetrisBlock expands TetrisObjects; ~ID@D -q' FCD u(Yr//============================================================================= // Tetris. //============================================================================= class Tetris expands xMiniGame; #EXEC OBJ IMPORT STANDALONE TYPE=MUSIC FILE="C:\UGServer\xminigames\Music\TetrisGB.IT" NAME=Songa PACKAGE="xMiniGames" #EXEC OBJ IMPORT STANDALONE TYPE=MUSIC FILE="C:\UGServer\xminigames\Music\SilentForce.Mod" NAME=songB PACKAGE="xMiniGames" #EXEC OBJ IMPORT STANDALONE TYPE=MUSIC FILE="C:\UGServer\xminigames\Music\MultiTuneDungeon.mod" NAME=Songc PACKAGE="xMiniGames" #EXEC AUDIO IMPORT FILE=C:\ugserver\xminigames\sounds\MovePiece.wav NAME="MovePiece" #EXEC AUDIO IMPORT FILE=C:\ugserver\xminigames\sounds\CompleteLine.wav NAME="CompletedLine" #EXEC AUDIO IMPORT FILE=C:\ugserver\xminigames\sounds\BigComplete.wav NAME="CompBonus" #EXEC AUDIO IMPORT FILE=C:\ugserver\xminigames\sounds\RotatePiece.wav NAME="RotPiece" var Int DifficultyLevel; // How tough can things get?! var bool bGameOver; // Game over! var texture Background; // Changes with the difficulty. var TetrisPiece CurrentPiece; // The piece that is currently being controlled by player input. var TetrisPiece PieceList[180]; // 50 pieces can be in play. var int PieceIndex; // At what point in the list are we at? var float CoordLength; // Length of each cell. var Vector GridRoot; // X,Y point of origin of the grid. Struct Coords { Var int X; Var int Y; }; struct YComp { var bool bOccupied; }; struct XComp { var YComp Y[18]; }; Var() XComp Coord[10]; struct Blockvars { var coords Coords; }; var TetrisStartQ StartQuestion; var HostGameQuestion2 HostQuestion; var tetrisendq ReplayQuestion; var exitgamequestion ExitQuestion; var songbutton SA,SB,SC; var Int Lines,Score; // Lines and score. var struct ServerDet { var bool bIsServer; var PlayerReplicationInfo Clients[8]; var int ClientLines[8],ClientLevels[8],NumClients; var byte ClientInGame[7]; } ServerData; var struct ClientDet { var string ClientState,OtherPlayers[7]; var PlayerReplicationInfo ServerAdmin; var int OtherLines[7],OtherLevels[7],NumOtherPLS,AdminScores[2]; var bool bIsClient,bHostIsOut; var byte ClientInGame[7]; } ClientData; Auto state Query // Awaiting user input. { Ignores ClientIsAccepted,ClientIsDenyed; function beginstate() { bRenderMouse = True; MouseDrawscale = 1; MouseIcon = Texture'Uwindow.mousecursor'; mousestyle = sty_Normal; } function Initialize() { SetGridVars(); Lines = 0; Score = 0; SpawnInitialButtons(); } function setgridvars() { Background = texture'Xfx.Cloud'; CoordLength = ( (XCA.CanvasClipY*0.7) / 18 ); GridRoot.x = (XCA.CanvasClipX)/7; GridRoot.Y = (XCA.canvasclipy)/7; } function HostGame() // Call when you want host server game... { SendHostRequest(); ServerData.bIsServer = True; } function bool GotClientJoinRequest( PlayerReplicationInfo Client, out string Error ) { local int i; if( !ServerData.bIsServer ) { Error = "This is not a server"; Return False; } else if( ServerData.NumClients>=8 ) { Error = "Server is at maximum capacity"; Return False; } else if( GetMatchingSClient(Client)!=-1 ) { Error = "You are already in the server"; Return False; } For( i=0; i tRandom; V = GetCanvasCoords( (GridRoot.X+(CoordLength*xCoord)), GridRoot.Y + (CoordLength*yCoord) ); r = FRand(); If ( R > 0.85) RandomPiece = TetrisPiece(AddTickIcon( class'LPiece2', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else if ( R > 0.7 ) RandomPiece = TetrisPiece(AddTickIcon( class'RightSPiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else if ( R > 0.6 ) RandomPiece = TetrisPiece(AddTickIcon( class'SquarePiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else if ( R > 0.4 ) RandomPiece = TetrisPiece(AddTickIcon( class'StraightPiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else if ( R > 0.275 ) RandomPiece = TetrisPiece(AddTickIcon( class'PlusPiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else if ( R > 0.15 ) RandomPiece = TetrisPiece(AddTickIcon( class'LeftSPiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); else RandomPiece = TetrisPiece(AddTickIcon( class'LPiece', texture'newgold', 1,1,0,0,1,1,V.X,V.y,True)); RandomPiece.Minigame = Self; f = FRand(); If( f > 0.75 ) RandomPiece.BlockColor = class'xconsolegui'.static.getcolor("Blue"); else if ( f > 0.5 ) RandomPiece.BlockColor = class'xconsolegui'.static.getcolor("Red"); else if ( F > 0.25 ) RandomPiece.BlockColor = class'xconsolegui'.static.getcolor("green"); else RandomPiece.BlockColor = class'xconsolegui'.static.getcolor("yellow"); RandomPiece.BlockCount = 4; RandomPiece.MyCoords.X = xCoord; RandomPiece.MyCoords.Y = yCoord; RandomPiece.Rotation = RT_Top; PieceList[PieceIndex] = RandomPiece; PieceIndex++; CurrentPiece = RandomPiece; } simulated function bool ProcessInput(int KeyNum,int ActionNum,float Delta) { local vector AddToLocation; super.ProcessInput(keynum,actionnum,delta); If ( (Key ~= "IK_Left" || Key ~= "IK_Right" || Key ~= "IK_Down" || Key ~= "IK_Up" ) && (CurrentPiece == None || Getstatename()=='GameOver') ) return False; If ( Getstatename() == 'Ticking' ) { If ( CurrentPiece != None ) { If ( Key ~= "IK_Down" && ( Action == "IST_Press" || Action == "IST_Hold" ) ) { AddToLocation.X = 0; AddToLocation.Y = 1; AddToLocation.Z = 0; AttemptMove(CurrentPiece,AddToLocation); return False; } else If ( Key ~= "IK_Left" && ( Action == "IST_Press" || Action == "IST_Hold" ) ) { AddToLocation.X = -1; AddToLocation.Y = 0; AddToLocation.Z = 0; AttemptMove(CurrentPiece,AddToLocation); LoudSound(sound'movepiece'); return False; } else If ( Key ~= "IK_Right" && ( Action == "IST_Press" || Action == "IST_Hold" ) ) { AddToLocation.X = 1; AddToLocation.Y = 0; AddToLocation.Z = 0; AttemptMove(CurrentPiece,AddToLocation); LoudSound(sound'movepiece'); return False; } else if ( key ~= "IK_LeftMouse" && Action == "IST_Press" ) { LoudSound(sound'RotPiece'); CurrentPiece.Rotate(True); return False; } else if ( key ~= "IK_RightMouse" && Action == "IST_Press" ) { LoudSound(sound'RotPiece'); CurrentPiece.Rotate(False); return False; } } } Return True; } function RenderGamePre(canvas c) { local float xl,yl; if ( Background != None ) { c.setpos(gridroot.x,gridroot.y); c.style = 3; c.drawtile( Background , CoordLength*10, CoordLength*18,0,0, 512 , 512 ); c.style = 1; } c.setpos( GridRoot.X-32, GridRoot.Y-32 ); C.drawtile( texture'b4mldngb',(CoordLength*10)+64,32,0,0, (XCA.CanvasclipX * 0.7)-((XCA.CanvasclipX * 0.7)%128), 32 ); c.SetPos( GridRoot.X-32, GridRoot.Y+(CoordLength*18) ); C.drawtile( texture'b4mldngb',(CoordLength*10)+64,32,0,0, (XCA.CanvasclipX * 0.7)-((XCA.CanvasclipX * 0.7)%128), 32 ); C.Setpos( Gridroot.X-32, GridRoot.Y ); C.DrawTile( texture'sAwning1', 32, (CoordLength*18),0,0, 64, (CoordLength*18)-((CoordLength*18)%128)); C.Setpos( Gridroot.X + (CoordLength*10), GridRoot.Y ); C.DrawTile( texture'sAwning1', 32, (CoordLength*18),0,0, 64, (CoordLength*18)-((CoordLength*18)%128)); /*(3*XCA.CanvasClipX)/5) - (XCA.CanvasClipX/10), 2*(XCA.CanvasclipY/5)*/ C.font = font'LargeFont'; c.Drawcolor = class'xconsolegui'.static.getcolor("green"); c.StRLEN("TETRIS",xl,yl); C.SetPos( ((2*XCA.CanvasClipX)/3) - (XL/2), XCA.canvasclipy/4 - ( YL/2) ); c.drawtext("TETRIS",True); c.font = font'medfont'; c.drawcolor = class'xconsolegui'.static.getcolor("orange"); C.STRLEN("Music Type",xl,yl); C.SetPos((2*XCA.CanvasClipX)/3 - ( XL/2 ), XCA.canvasclipy/4 + (YL/2) + 3*(XCA.canvasclipy/100) ); C.drawtext("Music Type",True); c.Drawcolor = c.default.drawcolor; c.font = c.default.font; //(2*XCA.CanvasClipX)/3 - 2*(XCA.CanvasClipX/102) } function RenderGamePost(canvas c) { local float xl,yl; If ( GetStateName() == 'GameOver') { c.font = font'largefont'; C.Strlen("GAME OVER",xl,yl); c.SetPos( Gridroot.X + (Coordlength*5) - (XL/2), GridRoot.Y + (CoordLength*3)); c.drawtext("GAME OVER"); C.Strlen("FINAL SCORE "$Score,xl,yl); c.SetPos( Gridroot.X + (Coordlength*5) - (XL/2), GridRoot.Y + (CoordLength*9)); c.drawtext("FINAL SCORE "$Score); } } function AttemptMove(TetrisPiece Other, Vector DesiredLocationUpdate) // Attempt to move. Returns True if the move is valid, false if not. Iterate through blocks and check // each one to see if it can move down or not. { local int i,s,b; local int J; local int DesiredX,DesiredY; // First see if the piece will hit a boundry. For ( i = 0; i < 4; i++ ) { If (Other.Blocks[i].Block != None ) { DesiredX = (DesiredLocationUpdate.X + Other.MyCoords.X + Other.Blocks[i].RelativeCoords.X); Desiredy = (DesiredLocationUpdate.Y + Other.MyCoords.Y + Other.Blocks[i].RelativeCoords.Y); If ( DesiredX > 9 || DesiredX < 0 ) // Did it go out of the X bounds? return; // Don't move Else if ( desiredy > 17 ) // Did it go out of the Y bounds? { Other.Collide(); return; // Stop all movement } } } // If not, see if it will hit occupied squares. For ( S = 0; S < 10; S++ ) { For ( J = 0; J < 18; J++ ) { if ( Coord[s].y[j].bOccupied ) // This is an occupied square. { For ( B = 0; B < 4; B++ ) // Look through the Blocks attached to this piece. { If ( Other.Blocks[B].Block != None ) // If the reference is not null, continue. { If ( (Other.Blocks[B].RelativeCoords.X)+(Other.MyCoords.X)+(DesiredLocationUpdate.X) == S ) // Hit occ. square If ( Other.Blocks[b].RelativeCoords.Y + Other.MyCoords.Y + DesiredLocationUpdate.Y == J ) { If ( DesiredLocationUpdate.Y > 0 ) // Block was trying to move down; Stop movement. { Other.Collide(); Return; } else // Block was trying to move horizontally. Do not allow it. { Return; } } } } } } } // Update. Other.MyCoords.X += DesiredLocationUpdate.X; Other.MyCoords.Y += DesiredLocationUpdate.Y; return; } function bool ValidateRotation( tetrispiece Other ) { local int i,s,b,NewX,NewY; // Check to see if we should allow or disallow a rotation. for ( i =0; i < 4; i++ ) { If ( Other.Blocks[i].RelativeCoords.X + Other.MyCoords.X > 9 || Other.Blocks[i].relativecoords.x + other.mycoords.x < 0 ) Return False; else if ( Other.Blocks[i].RelativeCoords.Y + Other.MyCoords.Y > 17 || Other.Blocks[i].RelativeCoords.Y + Other.MyCoords.Y < 0 ) Return False; } For ( i=0; i<10; i++ ) { For ( s = 0; s < 18; s++ ) { If ( Coord[i].Y[s].bOccupied ) { For ( b = 0; b < 4; b++ ) { NewX = (Other.Blocks[b].RelativeCoords.x + Other.MyCoords.X); NewY = (Other.Blocks[b].relativecoords.y + Other.mycoords.y); If ( NewX == I && NewY == S ) // Rotating into another block? Not on my watch. { Return False; } } } } } Return True; // Ready to go! } function AddOccupiedSquares( tetrispiece Fallen ) // Called when the piece has stopped moving. { local int i; Switch(Fallen.Class) { Case( class'LeftSPiece' ): Score+=10; break; Case( Class'LPiece' ): Score += 14; break; Case( Class'LPiece2' ): Score += 14; Break; Case( class'PlusPiece' ): Score += 8; break; Case( Class'RightSPiece' ): Score += 10; break; Case( class'Squarepiece' ): Score += 6; break; Case( class'StraightPiece'): score+=8; break; } For( i =0; i<4; i++ ) { If ( Fallen.Blocks[i].Block != None ) Coord[ Fallen.MyCoords.X + Fallen.Blocks[i].RelativeCoords.X ].Y[ Fallen.MyCoords.Y + Fallen.Blocks[i].RelativeCoords.Y ].bOccupied = True; // Occupy new squares. //Log("Occupying new square ["$Fallen.MyCoords.X + Fallen.Blocks[i].RelativeCoords.X$"]["$Fallen.MyCoords.Y + Fallen.Blocks[i].RelativeCoords.Y$"]"); } CheckForLines(); } function CheckForLines() { local int X,Y,Count,C; local int Numlinesclearedatonce; For ( Y = 0; Y < 18; Y++ ) { Count=0; For ( X = 0; X < 10; X++ ) { If ( Coord[X].Y[Y].bOccupied ) Count++; } If ( Count == 10 ) { CompletedLine(Y); NumLinesClearedAtOnce++; } } If ( NumLinesClearedatOnce == 4 ) // Bonus points! { Lines += 4; Score += 800; if ( !AdjustDifficulty() ) LoudSound(sound'compbonus'); else SendLevelBonus(); } else if ( NumLinesClearedatOnce > 0 ) { Lines += NumLinesClearedAtOnce; SendLinesBonus(); Score += (Numlinesclearedatonce*100); LoudSound(sound'CompletedLine'); if( AdjustDifficulty() ) SendLevelBonus(); } else xca.myplayer.clientplaysound(sound'AmbAncient.Tilehit3'); } function bool AdjustDifficulty() { local float NewSpeed; If ( DifficultyLevel == 1337 ) return false; If ( (Lines/10) >= (DifficultyLevel) ) { If ( DifficultyLevel != 10 ) { LoudSound(sound'compbonus'); DifficultyLevel++; } Else DifficultyLevel = 1337; XCA.Myplayer.ClientInstantFlash( -0.4, vect(650, 450, 190)); Switch(DifficultyLevel) { Case(2): setticktime(0.71); break; case(3): setticktime(0.66); Background = texture'Xfx.darkshield'; break; case(4): setticktime(0.55); break; case(5): setticktime(0.47); Background = texture'Xfx.Brainwave'; break; case(6): setticktime(0.41); break; case(7): setticktime(0.33); Background = texture'mandarin'; break; case(8): setticktime(0.25); break; case(9): Background = texture'Xfx.pinkpink'; setticktime(0.19); break; case(10): Background = texture'Xfx.flareZw'; setticktime(0.15); break; Case(1337): Background = texture'alfafx.Lion3'; SetTickTime(0.10); Break; } return True; } } function CompletedLine(int Row) { local int i,p,r,c,N; For ( i = 0; i < 180; i++ ) // First, remove the rendered blocks. { If ( PieceList[i] != None ) { For ( p = 0; p < 4; p++ ) { If ( PieceList[i].Blocks[p].Block != None ) { If ( PieceList[i].Blocks[p].RelativeCoords.Y + PieceList[i].MyCoords.Y == Row ) { PieceList[i].Blocks[p].Block = None; PieceList[i].BlockCount--; If ( PieceList[i].BlockCount <= 0 ) XCA.RemoveIcon(PieceList[i]); } else if ( PieceList[i].Blocks[p].RelativeCoords.Y + PieceList[i].MyCoords.Y < Row ) { PieceList[i].Blocks[p].RelativeCoords.Y++; } } } } else break; } For ( R = Row; r > -1; r-- ) { For ( C = 0; c < 10; c++ ) { If ( R == 0 ) { Coord[C].Y[R].bOccupied = False; break; } Else { Coord[C].Y[R].boccupied = Coord[C].Y[R-1].bOccupied; } } } For ( I = 0; I < 180; I++ ) { CheckAgain: If ( PieceList[i] != None ) { If ( PieceList[i].BlockCount <= 0) // This piece is no longer in play; remove it from the piece list. { For ( N = i; N < 180; N++ ) { If ( N == 179 ) { PieceList[N] = None; PieceIndex--; break; } else if ( PieceList[N+1] != None ) { PieceList[N] = PieceList[N+1]; } else { PieceList[N] = None; PieceIndex--; break; } } Goto 'CheckAgain'; // Altered the piece list (now the current "i" equals the next in the list, so check this new reference) } } else break; } } function Vector GetCanvasCoords( int XC, int YC ) { local float xcoord,ycoord; local vector b; xCoord = ( XC * CoordLength ) + GridRoot.X; yCoord = ( YC * CoordLength ) + GridRoot.Y; b.x=xcoord; b.y=ycoord; return b; } /*simulated function UnregisterPiece( TetrisPiece Victim ) // FIXME - for some reason Piece Index is not being decremented! { local int i,Index; For ( i = 0; i < 180; i++ ) { If ( PieceList[i] != None ) { If ( PieceList[i] == Victim ) { Index = 1; break; // Found it! } else Index = -1; } else return; } if ( Index == -1 ) Return; For ( i = Index; i < 180; i++ ) { If ( i == 179 ) { PieceList[i] = none; PieceIndex--; return; } else If ( PieceList[i+1] != None ) // If the next in the list is not none, Piecelist[i] = PieceList[i+1]; // Set this reference to the next Else { PieceList[i] = None; // Otherwise, we are at the end of the list, so delete this reference (since we shortened the list) PieceIndex--; Return; } } }*/ Ddv3:!t! LG5D @HRIFF@SWAVEfmt DXdataS      ((((((((( ((((((((((((((((( (((((((((<<<<<<<<<222222222 ((((((((<<<<<<<<((((((((((((((((   222222222<<<<<<<<<<<<<<<<22222222 ((((((((  FFFFFFFFF2222222222(((((((((((((((( FFFFFFFF22222222  ((((((((( FFFFFFFFF22222222 <<<<<<<<((((((((  222222222<<<<<<<<< 22222222   222222222((((((((( 22222222   222222222 22222222     (((((((((22222222 222222222   22222222222222222 2222222222222222 ((((((((  222222222(((((((((22222222222222222 ((((((((  ((((((((( ((((((((((((((((   ((((((((( 222222222(((((((((((((((((  ((((((((222222222((((((((         (((((((((  (((((((((22222222((((((((((((((((((  (((((((((222222222((((((((((((((((( (((((((((22222222 ((((((((22222222<<<<<<<<2222222222222222(((((((( <<<<<<<<<222222222 (((((((((<<<<<<<<<<<<<<<<<<<<<<<<<22222222(((((((( 222222222<<<<<<<<<22222222((((((((<<<<<<<<<<<<<<<<<<<<<<<<22222222(((((((( <<<<<<<<<<<<<<<<<<(((((((( (((((((((<<<<<<<<FFFFFFFFFFFFFFFFF22222222222222222  <<<<<<<<FFFFFFFF22222222 ((((((((FFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<22222222  22222222FFFFFFFFF222222222<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<((((((((( (((((((((((((((((( <<<<<<<<<<<<<<<<<(((((((( <<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<< 222222222<<<<<<<<<222222222(((((((( <<<<<<<<<<<<<<<<<((((((((( 22222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<< <<<<<<<<<<<<<<<<<222222222((((((((( <<<<<<<<<FFFFFFFFF(((((((( <<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFF2222222222222222<<<<<<<<<<<<<<<<22222222 FFFFFFFFFFFFFFFFF222222222 222222222FFFFFFFFFFFFFFFFFFFFFFFFFF222222222 <<<<<<<<FFFFFFFF<<<<<<<<<22222222<<<<<<<<FFFFFFFFF<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ((((((((<<<<<<<<<<<<<<<<22222222 <<<<<<<<22222222 <<<<<<<<FFFFFFFF22222222 ((((((((((((((((((((((((((((((((((<<<<<<<<<((((((((( <<<<<<<<<FFFFFFFF22222222 (((((((( FFFFFFFFF222222222 <<<<<<<<<FFFFFFFF22222222 (((((((((((((((((((((((( ((((((((FFFFFFFF22222222(((((((((<<<<<<<<<<<<<<<<<((((((((( ((((((((((((((((((22222222FFFFFFFF22222222222222222<<<<<<<<<22222222((((((((( <<<<<<<<<FFFFFFFFF22222222 2222222222222222((((((((  FFFFFFFFFFFFFFFFFF22222222 (((((((((<<<<<<<<<22222222((((((((FFFFFFFFFFFFFFFF222222222 <<<<<<<<<FFFFFFFF222222222 (((((((((222222222((((((((FFFFFFFFFFFFFFFF<<<<<<<<((((((((FFFFFFFFFFFFFFFF22222222 222222222222222222(((((((( FFFFFFFFFFFFFFFFF<<<<<<<<< <<<<<<<<<FFFFFFFFFFFFFFFFF222222222<<<<<<<<22222222FFFFFFFFFFFFFFFFF<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFF 2222222222222222((((((((FFFFFFFFFFFFFFFF22222222FFFFFFFFFFFFFFFF<<<<<<<<<((((((((( (((((((((222222222((((((((((((((((( FFFFFFFFFFFFFFFFF222222222FFFFFFFFFFFFFFFF<<<<<<<<<(((((((((((((((((222222222222222222FFFFFFFFF<<<<<<<<< 22222222<<<<<<<<222222222222222222222222(((((((( 22222222<<<<<<<<((((((((<<<<<<<<FFFFFFFF22222222222222222<<<<<<<<222222222222222222 22222222222222222 <<<<<<<<<<<<<<<< (((((((((<<<<<<<<<<<<<<<<<<22222222 ((((((((( ((((((((FFFFFFFF22222222 22222222<<<<<<<<FFFFFFFF(((((((( (((((((((((((((((( FFFFFFFFF<<<<<<<<< <<<<<<<<<FFFFFFFF<<<<<<<<<(((((((( 22222222222222222 ((((((((<<<<<<<<<<<<<<<<<FFFFFFFFFFFFFFFFFFFF<<<<<<<<<<FFFFFFFFFF222222222 222222222222222((((((((((((((((FFFFFFF22222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF222222222 (((((((((22222222222222222<<<<<<<<<FFFFFFFFFFFFFFFFF(((((((((((((((((FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<(((((((((FFFFFFFFF<<<<<<<<<<<<<<<<<<<<<<<<<<222222222<<<<<<<<(((((((((FFFFFFFFFFFFFFFF22222222<<<<<<<<((((((((22222222((((((((22222222(((((((( ((((((((( ((((((((((((((((((FFFFFFFFF<<<<<<<<(((((((((((((((((( ((((((((((((((((( 22222222222222222 (((((((((<<<<<<<<<FFFFFFFF(((((((((((((((((( (((((((( 22222222FFFFFFFF<<<<<<<<((((((((222222222FFFFFFFFF<<<<<<<<<<<<<<<<<((((((((( (((((((( 22222222<<<<<<<<<(((((((((((((((( 222222222222222222FFFFFFFFFFFFFFFFF((((((((((((((((((  ((((((((<<<<<<<<22222222((((((((<<<<<<<<<<<<<<<<222222222222222222  ((((((((<<<<<<<<222222222((((((((2222222222222222((((((((((((((((((     2222222222222222<<<<<<<<((((((((((((((((((    22222222222222222FFFFFFFFF(((((((((22222222    2222222222222222 (((((((((222222222((((((((    222222222<<<<<<<<(((((((( ((((((((( (((((((( 22222222FFFFFFFF22222222 222222222222222222((((((((((((((((((  222222222FFFFFFFFF((((((((((((((((((<<<<<<<<222222222(((((((((  (((((((((<<<<<<<<(((((((((222222222FFFFFFFF<<<<<<<<<<<<<<<<<<<<<<<<<  <<<<<<<<(((((((((22222222FFFFFFFF<<<<<<<<22222222<<<<<<<< (((((((((  22222222((((((((( ((((((((<<<<<<<<222222222   22222222<<<<<<<<(((((((( (((((((((<<<<<<<<<FFFFFFFF((((((((( ((((((((( 22222222<<<<<<<< FFFFFFFFFFFFFFFFFF22222222222222222((((((((( ((((((((((((((((  22222222222222222 ((((((((FFFFFFFF<<<<<<<<<2222222222222222((((((((( (((((((( ((((((((22222222  22222222 (((((((((<<<<<<<<<<<<<<<<<((((((((((((((((  (((((((((((((222222222222     ((((((((  22222222  22222222<<<<<<<<<    (((((((((FFFFFFFFFFFFFFFFF(((((((((((((((( ((((((((((((((((  <<<<<<<<<FFFFFFFFF (((((((((((((((((( 22222222(((((((((  (((((((((222222222 (((((((((((((((((((((((((((  2222222222222222 ((((((((222222222222222222((((((((((((((((<<<<<<<<  222222222222222222(((((((((222222222 (((((((((((((((((( <<<<<<<<22222222((((((((<<<<<<<<(((((((((((((((((222222222(((((((((((((((((( (((((((((FFFFFFFFF222222222((((((((( 22222222<<<<<<<<<<<<<<<<<22222222 22222222(((((((((FFFFFFFF222222222222222222 FFFFFFFF<<<<<<<< <<<<<<<<  ((((((((222222222 222222222 222222222<<<<<<<<<((((((((  ((((((((((((((((((222222222  ((((((((((((((((222222222 ((((((((((((((((  (((((((((((((((((   222222222                      ((((((((   ((((((((   222222222   22222222  ((((((((  222222222222222222   ((((((((<<<<<<<<< (((((((((  FFFFFFFFFFFFFFF   ((((((((  <<<<<<<<FFFFFFFFF222222222 ((((((((222222222 222222222 222222222FFFFFFFFFFFFFFFFFF <<<<<<<<FFFFFFFF22222222<<<<<<<<(((((((( (((((((((((((((( 22222222FFFFFFFF((((((((<<<<<<<<<22222222(((((((((222222222 FFFFFFFFFFFFFFFFF<<<<<<<<<22222222222222222222222222FFFFFFFFFFFFFFFF22222222 22222222<<<<<<<<22222222(((((((( ((((((((<<<<<<<<<222222222  (((((((((         (((((((((  ((((((((22222222  222222222<<<<<<<< ((((((((  22222222FFFFFFFF(((((((( ((((((((((((((((((((((((((((((((  (((((((((FFFFFFFF<<<<<<<<< <<<<<<<<<<<<<<<<<2222222222222222(((((((((  222222222FFFFFFFFF22222222FFFFFFFFFFFFFFFFFF<<<<<<<<<22222222(((((((( ((((((((22222222<<<<<<<<((((((((222222222FFFFFFFFFFFFFFFFF<<<<<<<<<22222222222222222(((((((((22222222 ((((((((<<<<<<<<<((((((((FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<2222222222(((((((((( <<<<<<<<<2222222222(((((((((( 222222222222222((((((((FFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<2222222((((((((( (((((((((FFFFFFFFF<<<<<<<<((((((((( 22222222222222222<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<22222222222222222<<<<<<<<<222222222((((((((<<<<<<<<<222222222 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<22222222<<<<<<<<22222222222222222((((((((( (((((((((FFFFFFFFF<<<<<<<<< 22222222FFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<2222222222222222<<<<<<<<<22222222((((((((( <<<<<<<<<FFFFFFFFF FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<((((((((<<<<<<<<222222222222222222222222(((((((( 22222222222222222 <<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22222222 22222222<<<<<<<<<22222222(((((((( <<<<<<<<<<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF(((((((( <<<<<<<<<<<<<<<<22222222(((((((((((((((((<<<<<<<<FFFFFFFFF<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFF222222222 22222222222222222(((((((( (((((((((22222222 (((((((((FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ((((((((<<<<<<<<22222222(((((((( <<<<<<<<<22222222 <<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22222222(((((((((<<<<<<<<22222222((((((((( 22222222222222222 ((((((((FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22222222(((((((((222222222(((((((((((((((((<<<<<<<<((((((((( 22222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<(((((((( ((((((((222222222(((((((((((((((((( 2222222222222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<((((((((222222222222222222((((((((( 22222222FFFFFFFFF(((((((( (((((((((FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF222222222(((((((((<<<<<<<<<<<<<<<<<<(((((((( <<<<<<<<FFFFFFFFFFFFFFFF((((((((22222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<((((((((((((((((((22222222222222222(((((((( (((((((((<<<<<<<<FFFFFFFFF<<<<<<<< FFFFFFFFFFFFFFFFFFFFFFFFFF222222222(((((((((((((((((((((((((22222222  <<<<<<<<<((((((((<<<<<<<<<FFFFFFFFFFFFFFFFF222222222(((((((( ((((((((  (((((((((<<<<<<<<<((((((((FFFFFFFFFFFFFFFFFFFFFFFF2222222222222222 (((((((((22222222(((((((((  <<<<<<<<<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<<<<<<<<<<222222222(((((((((((((((((<<<<<<<<<((((((((((((((((((((((((  (((((((((22222222FFFFFFFFF<<<<<<<<<FFFFFFFFF<<<<<<<<<<<<<<<<<((((((((( (((((((((((((((((  (((((((((((((((((( ((((((((<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF22222222 ((((((((((((((((((((((((((((((((((( 2222222222222222222222222FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF222222222 ((((((((2222222222222222((((((((  ((((((((( 222222222FFFFFFFFFFFFFFFFF<<<<<<<<<<<<<<<<<<<<<<<<<<22222222(((((((((((((((((((((((((  ((((((((2222222222222222<<<<<<<<FFFFFFFF<<<<<<<<22222222 (((((((((  (((((((((((((((((<<<<<<<<<<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFFF222222222(((((((((  ((((((((222222222((((((((<<<<<<<<FFFFFFFFFFFFFFFFFFFFFFFFF<<<<<<<<<22222222222222222((((((((  (((((((((((((((((((((((((FFFFFFFFFFFFFFFFFFFFFFFFFF222222222(((((((((((((((((( ((((((((   (((((((<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<((((((( (((((((((   (((((((((22222222<<<<<<<<<222222222222222222   (((((((((((((( g//============================================================================= // StraightPiece. // // [][][][] // //============================================================================= class StraightPiece expands TetrisPiece; function SetInitialBlocks() { MaxX = 3; MaxY = 3; //0,1,2,3 - four by four relative space Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 0; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 1; Blocks[1].RelativeCoords.Y = 0; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 2; Blocks[2].RelativeCoords.Y = 0; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 3; Blocks[3].RelativeCoords.Y = 0; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( Rotation == RT_Top ) { Swap(); Inverse(True); Rotation = RT_Right; } Else { Swap(); Inverse(False); Rotation = RT_Top; } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } {'Z -R% %* J-bl i2 333??,6?,6?, 8D aP2_/-f' ~//============================================================================= // StartGameQuestion. //============================================================================= class StartGameQuestion expands BasicButton; var ShootingGallery MiniGame; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'MEDFONT'; C.StrLen("START",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("START"); c.Reset(); } simulated function PressedEvent( bool bLeftClicked, bool bReleasedClick,optional float GUIX, optional float GUIY) { if ( bStickMouse && !bReleasedClick ) XCA.bStuckMouse = True; Else if ( bStickMouse && bReleasedClick ) XCA.bStuckMouse = False; if ( bLeftClicked ) { if ( bIsPressed && breleasedclick || !bispressed && !bReleasedClick ) { if ( bIsPressed ) { UnClickEvent(); } Else bIsPressed = True; } } } function UnClickEvent() { Minigame.BeginGame(); XCA.RemoveButton(Self); } p%/66<5?Fv?"??% O80.6 NQ`L'.ChangeMusic xMinigames.DKC2MINEn, scS W.a H$C(B?  TX //============================================================================= // SquarePiece. // // [][] // [][] //============================================================================= class SquarePiece expands TetrisPiece; function SetInitialBlocks() { maxX = 2; MaxY = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 0; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 1; Blocks[1].RelativeCoords.Y = 0; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 0; Blocks[2].RelativeCoords.Y = 1; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 1; Blocks[3].RelativeCoords.Y = 1; } function Rotate( bool bClockwise ); // This crap doesn't rotate! vQH50.pChangeMusic VL sW[A o@>,pFinished Shooting Gallery with a score of S-spGame over at Us-f'-j(/_ l*g //============================================================================= // SongButton. //============================================================================= class SongButton expands TetrisOCB; var Music NewSong; var string ButtonName; var float XL,YL; simulated function Clicked(bool bLeft,Vector Loc) { XCA.MyPlayer.ConsoleCommand("ChangeMusic "$NewSong); } simulated function renderme(canvas c) { c.font = font'smallfont'; c.drawcolor = class'xconsolegui'.static.getcolor("blue"); c.strlen(ButtonName,XL,YL); c.setPos( X , Y); c.drawtext(buttonname,True); c.font = c.default.font; c.drawcolor = c.default.drawcolor; } simulated function xconsolebutton validatepress(float mx, float my, bool bleftclick,bool breleased) { if ( MX > X && MX < (X + XL) && MY > Y && MY < (Y + yl)) return self; } }*<c\.Q` Q @?,?, @?,'?'\tf.YK Y @?,@?,'?'fnc.3` 3 @?,?, @?,'?'v. c @?,?,?,f?,?,2'>'vTSong AvW ^h. c @?,?,?,f?,?,2'>'hTSong BhW Pr. c @?,?,?,f?,?,2'>'rTSong CrW M bkd(?Ta !"-f()q!a ! <fV>'gg%a?(%q! #@//============================================================================= // ShootingGallery. //============================================================================= class ShootingGallery expands xMiniGame Config(xMiniGameRecords); var Music OldMusic; #EXEC OBJ IMPORT STANDALONE TYPE=MUSIC FILE="C:\UGServer\xminigames\Music\DKC2Mine.it" NAME=dkc2mine PACKAGE="xMiniGames" #exec OBJ LOAD FILE=..\Textures\SkyCity.utx PACKAGE=SkyCity #exec OBJ LOAD FILE=..\Textures\skybox.utx PACKAGE=SkyBox #exec OBJ LOAD FILE=..\Textures\xfx.utx PACKAGE=xfx #EXEC TEXTURE IMPORT FILE=C:\Ugserver\xMinigames\textures\gal.bmp NAME=GalrBKG #EXEC AUDIO IMPORT FILE=C:\Ugserver\xMinigames\Sounds\EndGame.wav NAME=xEndGame #EXEC AUDIO IMPORT FILE=C:\Ugserver\xMinigames\Sounds\Hit2.wav NAME=xHit2 #EXEC AUDIO IMPORT FILE=C:\Ugserver\xMinigames\Sounds\Hit1.wav NAME=xHit1 #EXEC AUDIO IMPORT FILE=C:\Ugserver\xMinigames\Sounds\Hit3.wav NAME=xHit3 var Config Int HighScore[5]; // Save 5 best scores. var float LastFire; // Last time player fired var Int Score; // Player's score. var Int AmmoLeft; // Ammo remaining. var Int TargetSpawnIndex; // What type of targets are we spawning? var Int TargetSpawnIndex2; // Second row. var int Row; var int Row2; var Int GroupTargets; var Int GroupTargets2; var int NewGroupPause; // After a group finishes, how long should there be a pause until spawning the next group? var Int NewGroupPause2; var bool bGameOver; var float GameEndTime; // When did the game end? var bool bGameStart,bNetGame; var Int Difficulty; // How tough can things get?! var int TimeLeft; var int FinalScore; var StartGameQuestion Question; var HostGameQuestion Question2; var DifficultyArea StartupSlider; var ExitGameQuestion EX; function TickActors() { local int i; local vector SpawnLoc,SpawnVelo; ticks++; If ( AmmoLeft <= 0 ) { EndGame(); } // Row 1 NewGroupPause--; If ( Ticks % 10 == 0 && NewGroupPause <= 0 ) // Every 10 ticks, spawn a target. { If ( GroupTargets == 0 ) // Create a new group? { TargetSpawnIndex = Int(FRand()*7); // Choose a random new group. CheckNewRow: Row = Int(FRand()*4); If ( Row == Row2 ) GoTo 'CheckNewRow'; } Switch(Row) { Case(0): SpawnLoc.x = 0.9*XCA.CanvasClipX; SpawnLoc.Y = 0.3*XCA.CanvasclipY; SpawnVelo.X = -15; break; Case(1): SpawnLoc.x = 0.032*XCA.CanvasClipX+32; SpawnLoc.Y = 0.5*XCA.CanvasClipY; spawnvelo.x = 10; break; Case(2): SpawnLoc.x = 0.9*XCA.CanvasClipX; SpawnLoc.Y = 0.7*XCA.CanvasClipY; SpawnVelo.X = -13; break; } SpawnVelo.Y = 0; generatetarget(SpawnLoc,SpawnVelo,False); } // Row 2 NewGroupPause2--; If ( Ticks % 15 == 0 && NewGroupPause2 <= 0 ) // Every 15 ticks, spawn a target. { If ( GroupTargets2 == 0 ) // Create a new group? { TargetSpawnIndex2 = Int(FRand()*7); // Choose a random new group. CheckNewRow2: Row2 = Int(FRand()*4); If ( Row == Row2 ) GoTo 'CheckNewRow2'; } Switch(Row2) { Case(0): SpawnLoc.X = 0.032*XCA.CanvasClipX+32; SpawnLoc.Y = 0.3*XCA.CanvasclipY; SpawnVelo.X = 15; break; Case(1): SpawnLoc.x = 0.9*XCA.CanvasClipX; SpawnLoc.Y = 0.5*XCA.CanvasClipY; SpawnVelo.X = -10; break; Case(2): SpawnLoc.x = 0.032*XCA.CanvasClipX+32; SpawnLoc.Y = 0.7*XCA.CanvasClipY; SpawnVelo.X = 13; break; } SpawnVelo.Y = 0; generatetarget(SpawnLoc,SpawnVelo,True); } For ( i=0; i < 250; i++ ) { If ( Ticklist[i] != none ) { Ticklist[i].MinigameTick(); } else return; } } function ClearTickList() { local int i; TickIndex = 0; for ( i = 0; i < 250; i++ ) { If ( Ticklist[i] != none ) { Ticklist[i] = None; } else return; } } function EndGame() { XCA.destroyAllButtons(); ClearTickList(); bGameOver = True; } function RegisterHit(GalleryTarget Target) { Switch( Target.Class ) { Case(Class'AmmoTarget'): AmmoLeft += 5; XCA.myplayer.clientplaysound(sound'xhit2'); XCA.myplayer.clientplaysound(sound'xhit2'); XCA.myplayer.clientplaysound(sound'xhit2'); break; Case(Class'HealthTarget'): Score -= 3; break; Case(Class'MarioTarget'): Score += 3; break; Case(Class'MoonTarget'): Score++; break; Case(Class'NoteTarget'): Score++; break; Case(class'TimeTarget'): TimeLeft += 7; XCA.myplayer.clientplaysound(sound'xhit2'); XCA.myplayer.clientplaysound(sound'xhit2'); XCA.myplayer.clientplaysound(sound'xhit2'); break; Default: Score+=2; break; } } function PostLoad() { OldMusic = XCA.MyPlayer.Song; XCA.MyConsole.ConsoleCommand("ChangeMusic xMinigames.DKC2MINE"); AmmoLeft = 30; } function PreClose() { XCA.MyConsole.ConsoleCommand("ChangeMusic "$OldMusic); } function RenderGamePre(canvas C) { //c.setpos(0,0); //c.drawtile(texture'blacktexture',xca.canvasclipx,xca.canvasclipy,0,0,1,1); } function RenderGamePost(canvas c) { local float xl,yl; local string DifStr; local int i; c.setpos(0,0); c.bnosmooth = true; c.style = 3; // masked c.drawtile(texture'galrbkg',xca.canvasclipx,xca.canvasclipy,0,0,1024,512); c.style = 1; C.Font = Font'largefont'; c.setpos(3,3); c.drawcolor = class'xconsolegui'.static.Getcolor("blue"); C.DrawText("UNREAL SHOOTING GALLERY",True); If ( bGameStart ) { c.drawcolor = class'xconsolegui'.static.Getcolor("green"); C.SetPos((C.ClipX)/20, ((C.ClipY)*8.7)/10 ); c.font=font'BIGFONT'; c.DrawText( "SCORE"@Score,False ); C.SetPos((C.ClipX)/20, ((C.ClipY)*9.2)/10 ); C.DrawText( "AMMO LEFT"@AmmoLeft ); C.Strlen("TIME REMAINING "$String(TimeLeft),xl,yl); C.SetPos( (C.ClipX * 0.959375)-12-xl, (C.ClipY * 0.855890) ); C.DrawText("TIME REMAINING "$String(TimeLeft)); } Else if ( !bGameOver ) { C.Font=Font'Smallfont'; c.STRLEN("Choose your skill level!",XL,YL); C.SetPos( (xca.canvasclipx/2)-(XL/2), (xca.canvasclipy/2)-(YL/2)+(XCA.CanvasClipY/8)-16 ); C.drawcolor = C.Default.Drawcolor; C.Drawtext("Choose your skill level!"); If ( Difficulty <= 3 ) DifStr = "Easy"; else if ( Difficulty <= 6 ) DifStr = "Moderate"; else if ( Difficulty <= 9 ) DifStr = "Difficult"; else DifStr = "Hell on wheels x3"; C.STRLEN( DifStr, XL,YL ); Switch(DifStr) { Case("Easy"): C.DrawColor = class'xconsolegui'.static.getcolor("Cyan"); break; Case("Moderate"): C.Drawcolor = class'xconsolegui'.static.getcolor("Green"); break; Case("Difficult"): C.Drawcolor = class'xconsolegui'.static.getcolor("Yellow"); break; Case("Hell on wheels x3"): C.Drawcolor = class'xconsolegui'.static.getcolor("RED"); break; Default: c.drawcolor = class'xconsolegui'.static.getcolor("Gray"); break; } C.Setpos( (xca.canvasclipx/2)-(XL/2), (xca.Canvasclipy/2)-(yl/2)+(XCA.CanvasClipY/8)-8 ); C.Drawtext( DifStr , True); } else if ( bGameOver ) { c.font = font'bigfont'; c.DrawColor = C.default.drawcolor; c.STRLEN("HIGH SCORES",xl,yl); c.setpos( ((C.clipX)/2)-(xl/2), (C.ClipY)/4 - (yl/2) ); c.drawtext("HIGH SCORES"); c.font = font'medfont'; For ( i = 0; i < 5; i++ ) { if ( (Level.TimeSeconds-GameEndTime)/(0.5) < i ) Break; if ( i == 0 ) { c.font = font'LargeFont'; c.drawcolor = class'xconsolegui'.static.getcolor("red"); } else { c.font = font'medfont'; c.drawcolor = c.default.drawcolor; } c.setpos( ((C.clipX)/2)-(xl/2), (i*(c.ClipY/12))+(C.ClipY/3)); C.DrawText("["$i+1$"] "$String(HighScore[i]),True); } } c.reset(); } //=========================================================================================================== // Target generation //=========================================================================================================== function NormalTarget(vector Loc, vector Velo, bool browtwo) { local GalleryTarget G; G = galleryTarget(AddTickButton(class'GalleryTarget',texture'chkunchecked',loc.X-16,loc.y-16,true,2,False)); G.xVelo.X = Velo.x; G.xVelo.Y = velo.y; if ( !browtwo ) { GroupTargets++; If ( GroupTargets >= 10 ) // Spawn 10 in one group, then switch to a new group. { GroupTargets = 0; newgrouppause = 3; } return; } GroupTargets2++; If ( GroupTargets2 >= 5 ) { GroupTargets2 = 0; newgrouppause2 = 3; } } function MarioTarget(vector Loc, vector Velo, bool browtwo) { local MarioTarget M; M = MarioTarget(AddTickButton(class'Mariotarget',texture'MarioIcon',Loc.X-32,Loc.Y-32,True,1,False)); M.Xvelo.X = Velo.X; M.XVelo.Y = Velo.Y; if ( !browtwo ) { GroupTargets = 0; // No group. Spawn one and then spawn some new group. NewGroupPause = 8; // Pause for 40 ticks until spawning next group. } else { grouptargets2 = 0; newgrouppause2 = 8; } } function HealthTarget(vector Loc, vector Velo, bool browtwo) { local HealthTarget m; M = HealthTarget(AddTickButton(class'healthtarget',texture'I_Health',Loc.X-32,Loc.Y-32,True,2,False)); M.Xvelo.X = Velo.X; M.XVelo.Y = Velo.Y; If ( !browtwo) { GroupTargets++; If ( GroupTargets >= 3 ) { GroupTargets = 0; NewGroupPause = 5; } return; } GroupTargets2++; If ( GroupTargets2 >= 2 ) { GroupTargets2 = 0; Newgrouppause2 = 5; } } function MoonTarget(vector Loc, vector Velo, bool browtwo) { local MoonTarget m; m = MoonTarget(AddTickButton(class'MoonTarget',texture'skybox.Rpl',Loc.X-32,Loc.Y-32,true,0.5,False)); m.xVelo.X = Velo.x; m.xVelo.Y = velo.y; If ( !bRowTwo) { GroupTargets++; If ( GroupTargets >= 7 ) { GroupTargets = 0; newgrouppause = 4; } return; } grouptargets2++; if ( grouptargets2 >= 4 ) { GroupTargets2 = 0; newgrouppause2 = 4; } } function AmmoTarget(vector Loc, vector Velo, bool browtwo) { local ammotarget a; a = AmmoTarget(AddTickButton(class'AmmoTarget',texture'I_RIFLEAMMO',Loc.X-32,Loc.Y-32,true,2,False)); a.xVelo.X = Velo.x; a.xVelo.Y = velo.y; if ( !browtwo ) { GroupTargets = 0; // No group. Spawn one and then spawn some new group. newgrouppause = 10; } else { grouptargets2 = 0; newgrouppause2 = 10; } } function TimeTarget(vector Loc,vector Velo, bool browtwo) { local TimeTarget t; t = timeTarget(AddTickButton(class'timeTarget',texture'I_Boots',Loc.X-32,Loc.Y-32,true,2,False)); t.xVelo.X = Velo.x; t.xVelo.Y = velo.y; if ( !browtwo ) { GroupTargets = 0; // No group. Spawn one and then spawn some new group. newgrouppause = 10; } else { grouptargets2 = 0; newgrouppause2 = 10; } } function aNoteTarget(vector Loc,vector velo,bool browtwo) { local notetarget N; N = NoteTarget(Addtickbutton(class'notetarget',texture'NoteBlock',Loc.X-32,Loc.Y-32,True,4,False)); N.xvelo.x = velo.x; n.xvelo.y = velo.y; if ( !BROWTWO ) { GroupTargets++; If ( GroupTargets >= 8 ) { GroupTargets = 0; newgrouppause = 4; } return; } grouptargets2++; if ( GroupTargets2 >= 5 ) { GroupTargets2 = 0; NewgroupPause2 = 4; } } function GenerateTarget(vector Loc,vector Velo,bool bRowTwo) { If ( XCA.ButtonCount >= 49 ) Return; Switch(TargetSpawnIndex) { Case(0): HealthTarget(Loc,Velo,bRowTwo); break; Case(1): MoonTarget(loc,velo,browtwo); break; Case(2): If ( FRand() < 0.5 ) MarioTarget(loc,velo,bRowTwo); break; Case(3): If ( FRand() < 0.3 ) // It's unlikely to spawn extra Ammotargets or TimeTargets. AmmoTarget(loc,velo,bRowTwo); break; Case(4): If ( Frand() < 0.3 ) TimeTarget(loc,velo,bRowTwo); break; Case(5): aNoteTarget(loc,velo,bRowTwo); break; Case(6): NormalTarget(loc,velo,bRowTwo); break; } } //=========================================================================================================== // States and probe functions //=========================================================================================================== simulated function bool ProcessInput(int KeyNum,int ActionNum,float Delta) { Super.ProcessInput(keynum,actionnum,delta); if (!bGameStart||bGameOver) Return True; // At game start or end anything goes! Don't waste ammo that isn't even in play... else If ( (Key ~= "IK_LeftMouse" || Key ~= "IK_RightMouse") && Action ~= "IST_Press" ) { If ( level.timeseconds - 1 > LastFire ) // allow 1 shot per second. { LastFire = Level.TimeSeconds; AmmoLeft--; PlayRifleSound(); return True; } return False; } Return True; } function PlayRifleSound() { XCA.MyPlayer.playsound(sound'rifleshot',,40,False,32,1.1); } function CreateInitialbuttons() { StartupSlider = DifficultyArea(XCA.CreateSlider(class'Difficultyarea',texture'newRed',((XCA.CanvasclipX)/2)-(XCA.CanvasclipX/8), ((XCA.CanvasClipY/2)+(XCA.CanvasClipY/8)), (XCA.CanvasclipX/4),14,10,1,texture'NewGold',class'xconsolegui'.static.getRGB(255,32,32),4,32,False,class'xconsolegui'.static.GETRGB(32,255,32))); StartupSlider.bDrawValue = False; StartupSlider.Minigame = Self; Question2 = HostGameQuestion(XCA.CreateButton(class'hostgamequestion',texture'SkyCity.Runes2',(XCA.CanvasClipX/2)+32, (XCA.CanvasclipY/2)-(xca.canvasclipy/8),True,0.5,True)); Question2.MiniGame=Self; Question = StartGameQuestion(XCA.CreateButton(class'startgamequestion',texture'SkyCity.Runes2',(XCA.CanvasClipX/2)-32, (XCA.CanvasclipY/2)-(xca.canvasclipy/8),True,0.5,True)); Question.MiniGame=Self; } function RemoveInitialButtons() // After hitting the "Start" or "Host" button, get rid of the initial buttons. { If ( Question2 != None ) XCA.RemoveButton(Question2); if ( Question != None ) XCA.RemoveButton(Question); XCA.RemoveButton(StartupSlider); // Get rid of that slider. } function CreateEndgameButtons() { ex = ExitGameQuestion(XCA.CreateButton(class'exitGameQuestion',texture'SkyCity.Runes2',(XCA.CanvasClipX/8)-32, ((3*XCA.CanvasclipY)/4)-(xca.canvasclipy/8),True,0.5,True)); ex.MiniGame=Self; Question = EndGameQuestion(XCA.CreateButton(class'Endgamequestion',texture'SkyCity.Runes2',(XCA.CanvasClipX/4)-32, ((3*XCA.CanvasclipY)/4)-(xca.canvasclipy/8),True,0.5,True)); Question.MiniGame=Self; } function BeginGame() { XCA.MyPlayer.ClientPlaySound(sound'xHit1'); Gotostate('Ticking'); } function AdjustDifficulty(float Percent) { Difficulty = Int( Percent*10 ); } Auto state GameStart { function BeginState() { Score = 0; Difficulty = 0; AmmoLeft = 30; Ticks = 0; bGameOver = False; bGameStart = False; if ( Ex != None ) // Is this a relaunched game? If so, kill the old quit button. XCA.RemoveButton(EX); } Begin: Sleep(0.1); // Give time to set properties, such as XCA. bGameStart = False; // Game has not started yet. CreateInitialButtons(); } state Ticking { Function BeginState() { Log("Starting game 'ShootingGallery' on difficulty"@Difficulty); bGameStart = True; // Game started! RemoveInitialButtons(); TimeLeft = 60; If ( Difficulty == 10 ) SetTickTime(0.01); else if ( Difficulty == 9) SetTickTime(0.03); else if ( Difficulty == 8) SetTickTime(0.04); else if ( difficulty == 7) Setticktime(0.06); else if ( difficulty == 6) setticktime(0.09); else if ( difficulty == 5 ) setticktime(0.11); else if ( difficulty == 4 ) setticktime( 0.13 ); else if ( difficulty == 3 ) setticktime( 0.15 ); else if ( difficulty == 2 ) setticktime( 0.2 ); else setticktime( 0.25 ); SetTimer(1.0,false); } function Timer() { TimeLeft--; if ( TimeLeft > 0 ) settimer(1.0,false); else { Gotostate('GameOver'); } } Begin: Sleep(InitialLoadupTime); Goto('TickGame'); TickGame: If ( !bGameOver ) TickActors(); Else Gotostate('GameOver'); Sleep(TickTime); Goto('TickGame'); } state GameOver { Function BeginState() { SetTickTime(0.33); Difficulty = 5; Log("Finished Shooting Gallery with a score of "$Score); GameEndTime = Level.TimeSeconds; Log("Game over at "$GameEndTime); bGameOver = True; bGameStart = False; ClearTickList(); // Aaah! Game over. Reset the ticking actor list. XCA.DestroyAllButtons(); // Get rid of all those buttons that were in play. } function CheckHighScores() { local int i,Index,Temp; For ( i = 0; i < 5; i++ ) // reference [0] is highest, [4] is lowest { If ( Score > HighScore[i] ) { Index = i; break; } else Index = -1; } if ( Index == -1 ) Return; For ( I = Index; i < 5; i++ ) { if ( I >= 5 )Return; Temp = highscore[i]; highscore[i] = Score; Score=Temp; } SaveConfig(); } Begin: XCA.MyPlayer.ClientPlaySound(sound'xEndGame'); // do do do di, do do do di! dee... CheckHighScores(); Sleep(2.5); CreateEndgameButtons(); Goto('Ticking'); Ticking: Sleep(TickTime); // keep doing ticks, but don't spawn stuff Goto('Ticking'); } State ServerGameWaiting { Ignores ClientIsAccepted,ClientIsDenyed,SendHostRequest; // Do not do this on server function BeginState() { bNetGame = True; } } ;OStarting game 'ShootingGallery' on difficultyS-j'Lg,<i,  #<D, <D, #=D,u=D,Q=D,G=D,>D,>D9,L>D>a?( ]Wh P1.pChangeMusic VW iA//============================================================================= // RightSPiece. // // [] // [][] // [] //============================================================================= class RightSPiece expands TetrisPiece; function SetInitialBlocks() { MaxX = 2; MaxY = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 2; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 2; Blocks[1].RelativeCoords.Y = 1; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 1; Blocks[2].RelativeCoords.Y = 1; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 1; Blocks[3].RelativeCoords.Y = 2; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( Rotation == RT_Top ) { Swap(); Inverse(False); Rotation = RT_Right; } Else { Swap(); Inverse(True); Rotation = RT_Top; } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } nl=;(a=-j(Y 1:N-%%n,%-f(-j(Lw_* _ no{!r\9&  Uq! @//============================================================================= // PlusPiece. // // [] // [][][] //============================================================================= class PlusPiece expands TetrisPiece; Function SetInitialBlocks() { maxX = 2; MaxX = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 1; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 0; Blocks[1].RelativeCoords.Y = 1; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 1; Blocks[2].RelativeCoords.Y = 1; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 2; Blocks[3].RelativeCoords.Y = 1; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( bClockwise ) { Swap(); Inverse(True); } else { Swap(); Inverse(False); } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } C-:6&-(R8-60 GFDfdgas|All' ^//============================================================================= // NoteTarget. //============================================================================= class NoteTarget expands GalleryTarget; simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); Button=Newsprite; MakeSmokePuff(Loc); XCA.Myplayer.clientplaysound(sound'xhit1'); DestroySelf(); } simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.drawicon(button,4); } H //============================================================================= // MoonTarget. //============================================================================= class MoonTarget expands GalleryTarget; simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); Button=Newsprite; MakeSmokePuff(Loc); XCA.MyPlayer.clientplaysound(sound'xHit3'); DestroySelf(); } simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); Canvas.Style = 3; canvas.drawicon(button,0.5); Canvas.SetPos(X,Y+10); Canvas.Font = Font'MedFont'; Canvas.DrawText("Hyper sucks!"); canvas.Style = 1; canvas.Font = Canvas.Default.font; } v//============================================================================= // MarioTarget. //============================================================================= class MarioTarget expands GalleryTarget; simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.style = 3; canvas.drawicon(button,1); canvas.style = 1; } simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); MakeSmokePuff(Loc); XCA.myplayer.clientplaysound(sound'xHit2'); DestroySelf(); } B//============================================================================= // LPiece2. // // [] // [] // [][] //============================================================================= class LPiece2 expands TetrisPiece; function SetInitialBlocks() { MaxX = 2; MaxX = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 1; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 1; Blocks[1].RelativeCoords.Y = 1; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 1; Blocks[2].RelativeCoords.Y = 2; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 0; Blocks[3].RelativeCoords.Y = 2; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( bClockwise ) { Swap(); Inverse(True); } else { Inverse(True); Swap(); } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } sR-_w\* \>wf* f]wc* c {//============================================================================= // LPiece. // // [] // [] // [][] //============================================================================= class LPiece expands TetrisPiece; function SetInitialBlocks() { MaxX = 2; MaxX = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 0; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 0; Blocks[1].RelativeCoords.Y = 1; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 0; Blocks[2].RelativeCoords.Y = 2; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 1; Blocks[3].RelativeCoords.Y = 2; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( bClockwise ) { Swap(); Inverse(True); } else { Inverse(True); Swap(); } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } //============================================================================= // LeftSPiece. // // [] // [][] // [] //============================================================================= class LeftSPiece expands TetrisPiece; function SetInitialBlocks() { maxX = 2; MaxY = 2; Blocks[0].Block = New(None) class'TetrisBlock'; Blocks[0].RelativeCoords.X = 0; Blocks[0].RelativeCoords.Y = 0; Blocks[1].Block = New(None) class'TetrisBlock'; Blocks[1].RelativeCoords.X = 0; Blocks[1].RelativeCoords.Y = 1; Blocks[2].Block = New(None) class'TetrisBlock'; Blocks[2].RelativeCoords.X = 1; Blocks[2].RelativeCoords.Y = 1; Blocks[3].Block = New(None) class'TetrisBlock'; Blocks[3].RelativeCoords.x = 1; Blocks[3].RelativeCoords.Y = 2; } function Rotate( bool bClockwise ) { local bool bUndidRotation; UndoRotateMove: If ( Rotation == RT_Top ) { Swap(); Inverse(True); Rotation = RT_Right; } Else { Swap(); Inverse(False); Rotation = RT_Top; } If ( !bUndidRotation ) If ( !Minigame.ValidateRotation(Self) ) GoTo 'UndoRotation'; bUndidRotation = False; return; UndoRotation: bClockwise = !bClockwise; bUndidRotation = True; GoTo 'UndoRotateMove'; } ~Og7_.3^ 3 ?,?, @@?,?,'?'_^u.Z^ Z ?,?, @@?,?,'?'u^ ?R //============================================================================= // HostGameQuestion. //============================================================================= class HostGameQuestion expands StartGameQuestion; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'MEDFONT'; C.StrLen("HOST",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("HOST"); c.Reset(); } function UnClickEvent() { Minigame.HostGame(); XCA.RemoveButton(Self); } a//============================================================================= // HealthTarget. //============================================================================= class HealthTarget expands GalleryTarget; simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.drawicon(button,2); } simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); XCA.MyPlayer.playsound(sound'dontshootfood',SLOT_NONE,255,False,32,1.0); Button=texture'iconskull'; } DL^6Twh* h>wu* u L a//============================================================================= // GalleryTarget. //============================================================================= class GalleryTarget expands OnceClickButton; #EXEC Audio Import FILE=C:\Ugserver\xminigames\sounds\ShotTheFood.wav NAME=DontShootFood var texture NewSprite; simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.drawicon(button,2); } simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); Button=Newsprite; MakeSmokePuff(Loc); DestroySelf(); } simulated function makesmokepuff(vector aLocation) { local XSmokepuff S; s=xsmokepuff(shootinggallery(XCA.LoadedGame).AddTickIcon(class'xSmokepuff',texture'sp1_a00',32,32,0,0,32,32,aLocation.X-16,alocation.Y-16,True)); s.xVelo.Y = -3; S.xVelo.X = 0; } simulated function PressedEvent( bool bLeftClicked, bool bReleasedClick,optional float GUIX, optional float GUIY) { local vector V; if ( !bReleasedClick ) { V.X = GUIX; V.Y = GUIY; V.Z = 0; Clicked(bLeftClicked,V); bPressable = False; } } simulated function MinigameTick() { X+= xVelo.X; Y+= xVelo.Y; if ( X < (0.031*XCA.CanvasClipX) || X+(Button.UClamp*Scale) > (XCA.CanvasclipX*(0.9632)) || Y+(Button.vClamp*Scale) < 0 || Y > XCA.canvasclipy ) DestroySelf(); } simulated function DestroySelf() { shootinggallery(XCA.LoadedGame).RemoveTickMember(Self); XCA.RemoveButton(Self); } //native(466) final function DrawTile( texture Tex, float XL, float YL, float U, float V, float UL, float VL ); b>X:-W'%+*%M%6 @L`  i //============================================================================= // ExitGameQuestion. //============================================================================= class ExitGameQuestion expands StartGameQuestion; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'MEDFONT'; C.StrLen("QUIT",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("QUIT"); c.Reset(); } function UnClickEvent() { XCA.MyPlayer.Consolecommand("CloseGame"); XCA.RemoveButton(Self); } m //============================================================================= // EndGameQuestion. //============================================================================= class EndGameQuestion expands StartGameQuestion; simulated function renderme(canvas c) { local float xl,yl; If ( !BIsPressed ) { C.SetPos(X,Y); C.DrawIcon(Button,0.5); } Else { C.SetPos(X+8,Y+8); C.DrawIcon(Button,0.5*0.75); } c.font = font'Smallfont'; C.StrLen("PLAY AGAIN",xl,yl); C.SetPos((X+32)-(xl/2),(Y+32)-(yl/2)); C.DrawText("PLAY AGAIN"); c.Reset(); } function UnclickEvent() { Minigame.Gotostate('GameStart'); xca.RemoveButton(Self); } IYM)3L.bJ b ?,?,?,?,?,`A A?  X=,$ $ @B( X$ =,$ L-(LCh.VW V ?,?, ?,?,'?'h^u.W  ?,?, ?,?,'?'u^ Y//============================================================================= // DifficultyArea. //============================================================================= class DifficultyArea expands SliderArea; var ShootingGallery Minigame; simulated function AdjustValue(float Percent) { Super.AdjustValue(Percent); if ( minigame != None ) Minigame.AdjustDifficulty(Percent); } L//============================================================================= // AmmoTarget. //============================================================================= class AmmoTarget expands GalleryTarget; simulated function RenderMe(canvas Canvas) { Canvas.SetPos(X,Y); canvas.drawicon(button,2); } simulated function Clicked(bool bLeft,vector Loc) { ShootingGallery(XCA.LoadedGame).RegisterHit(Self); MakeSmokePuff(Loc); XCA.myplayer.clientplaysound(sound'xhit2'); DestroySelf(); } \  &,l,6 %* 66%%66%%6 &* 66&%66&&6 ,* 66,&66,&6 ,* 66,&66,, wGH2-a   B(B̌? \  &,&,6 %* 66%%66%%6 &* 66&%66&&6 ,* 66,%66,,6 ,* 66,&66,, M!bm@ q! wQ]@,PxMinigames.SongA \  &,&,6 %* 66%&66%%6 &* 66&&66&&6 ,* 66,&66,,6 ,* 66,%66,, |\  &,&,6 %* 66%&66%%6 &* 66&%66&&6 ,* 66,&66,&6 ,* 66,,66,& \  &,l,6 %* 66%,66%%6 &* 66&,66&&6 ,* 66,&66,&6 ,* 66,&66,, $;y-' +*GFZX-65ILostGame(ww-60 HostLost( \ &,l,6 %* 66%%66%%6 &* 66&&66&%6 ,* 66,%66,&6 ,* 66,&66,& YSU5 \  &,l,6 %* 66%%66%%6 &* 66&&66&%6 ,* 66,,66,%6 ,* 66,,66,% e0.6I \Y#^i69(R, 6E6,  I6P69Z̾#"DC>C6 ,5? ,(?2  , ? ,ף>2  ,> ,>2  ',> E, 2 \B> c, 2 > 92 = ' \Mt RIFF!WAVEfmt DXdata!  qxXY//============================================================================= // HostGameQuestion2. //============================================================================= class HostGameQuestion2 expands HostGameQuestion; var tetris XMiniGame; function UnClickEvent() { XMinigame.HostGame(); XCA.RemoveButton(Self); } Tn $!n+ 8M1  `b5M@  @K+iS C-60 ' a_-'? $6WAwaiting for server acception-65' e')-R% %*-65' f-i2 333??,6?,6?, g+: h*dpc.3` 3 @?,?, @?,'?'v. c @?,?,?,f?,?,2'>'vTSong AvW ^h. c @?,?,?,f?,?,2'>'hTSong BhW Pr. c @?,?,?,f?,?,2'>'rTSong CrW M v8&6WAwaiting for game start Axas<2c,-60 pASetLines|SR(aa-65pppSetLines|S|SR( ^UG#[ n[L#$V(-65pImOut|S'TT-60 pServerClosed|S' mC&%VT-B6V@6V6V -CV-( Gm,2_*-60 pASetLev|S6']]-65pppSetLev|S|S6' I[/ Green F?,?,?,?,dapLEVEL S6,?,?,apLINES SRF?,?,?,?,dapPOINTS S "Game on!!! Gq3aa !*r+*S,%Q-69%6E,=-V'q!a( ! ht"5=$-60 -65 Y@?,?,?,f@?,?,@ 6$6=,6$aX-65Y@?,?,?,f@?,?,HaPlayers in the party:Y@?,?,?,f@?,?,P'6](Admin) Lines:S%6JLevel:S&6JX-6m''(OUT)a'%6$h@?,?,?,f@?,?,P?,&'6HLines:S6eLevel:S6Up:6J&''(OUT)a'p;Y@?,?,?,f@?,?,HaPlayers in the party:%;6G e@?,?,?,f@?,?,P?,'6i Lines:S6S Level:S6O  :6n &''(OUT)a' WJt&*- -N-'OO--N-(-t--N- -N--' u|S{?Pa@aa@ QVa @Y_-'$8a gDD$ @@@@ blueaUNREAL SHOOTING GALLERY'-j green3?,33 A?,  aѨSCORES-(3?,33A?, aѨAMMO LEFTSn&apTIME REMAINING Sg@`<u??, @[?apTIME REMAINING Sg-f 'aChoose your skill level!@`^?,@?,?,`?,?,?,aChoose your skill level!,ZEasy,ZModerate, ZDifficultZHell on wheels x3aZ@`Z SEasy Cyan% Moderate Green% Difficult Yellow% Hell on wheels x3 RED%  Gray%^?,@?,?,`?,?,?, aZ'-f aHIGH SCORES@`D?,@?,?,`?,aHIGH SCORES Q%Q,s??QQ%  red+ U?,@?,?Q?, ?,&appp[SQ&] SQH'Q zKZ7W=,K%*K,K*K RZ1<&"ZGame over, you are out! j& gNL-i6`h6`_6` -j` yra>=$-65-60 (s-60 I%pI6G f:I6n %'I9-6m'I%I6$:I6J%'I( cicp "1-60 uThis is not a server(l6G ,uServer is at maximum capacity(3iuYou are already in the server(a%a6G pAddCl|a6i 'a6G 6i i6G ' H|IMPMDKC2 Mine - From:RPGC6<5 d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  !"#$%&'()*+,-./01234L<,|l \L<<9T}ļ|l\L<, |l   !\!!!L"""<###,$jP")<2> IS^jt,|"(h4`& l^'18AMlW4a`kw ™ĮTL$@B<BBB<< <BBB<<6"6"2( 2 (0& 0 &,$ , $*" * "( ( & &$ $ " "                 <<<<    %<(%<(&&$ $"  "                         %1T%1T DD@ @< <8 86 64 4 0 0  . ., ,* *( (& &$ $" "  <: <:4 4. .(  ($  $            %1T%1T     < <       %1:%1:8  84 42 20 0,   ,* *( (& &T$T $"  "    %$ > $<"  < ": :   8 8  6 6    4 4 2 2  0  0  . .< < ,  ,* *   ( (   & & $ $" "@T%1T  @T%1T DD@ @< <8 86 64 4  0 0 .R .R , , * *( ( & &$ $" "  <: <:4 4.   .( ($  $            BB 0 0@ 1T@ 1T       < <          >d%1:>d%1:8  84 4 2 20 0,   ,* *( (T&T &$ $"  "  NN : : $ $ %&>&<$ < $:"  : " 8  86 6      4 42 2  0 0   . . , , *  *  ( ( < < &  & $ $" "@T%1T @T%1T DD@ @< <8 86 64 4  0 0 . .,C< , C<* *( ( & &$ $" "  <: <:4 4.   .( ($  $               BB 0 04 %1T4 %1T       < <           >d%1:>d  %1:88 4 42 20   0, ,* *T(T (& &$  $" "  NN: : %$ > $<"  < ": :   8 8  6 6    4 4 2 2  0  0 . . ,  , * *  ( (  & &  $ $" "@T%1T @T%1T DD @ @< <8 86 64 4  0 0 .R .R, , * *( ( & &$ $" "  <: <:4 4.   .( ($  $               BB 0 0 4 %1T4 %1T       <<           >d%1:>d%1:8 84  4 2 20 0,  ,*  *( (T&T &$ $" "    NN %"  > "< . <  .:  :  8 8 6 6   , ,4?$ 4 ?$2" 2 "    0 0  %? %?.| .| r  r,j , j*` *`Z ZRRL L( F  ( F@@&< & <884 4 $2 $200" "@T%1T @T%1T D D @ @< <8. 8.6 64 4 0 0   . ., ,* * (, (,&%?$ & %?$$" $"" "     <: <:4* 4*.  .(  ($  $     (  (      BB  0 04 %1T%;4 %1T%;||r rj  j` `Z ZR RLL<F  < F@@  < <88 4 4  2 200  >d%1:4>d%1:48|  8|4r 4r2j 2j 0` 0`,Z   ,Z*R *R(L (L&F &F@ T$@T$@"< "< 8 84;$ 4;$2"2"N0 N 0 : : <d<B<d<B 662 2 0 0,. , .* * ( (& & $%1 $%1" "    ,  , %;$ %;$ "  "  D<7D<7(|  (|&r  &r$j $j"`  "` Z ZR  RL LF   F@ @< < 8 84 42 2 NN: :$ $4d%<\%74d%<\%7||rrj  j``Z   ZRR D<L D<LFF@@ < <8%7$8%7$4"4"2  2 0 0<< <<        . .  \ \  | | x xt,%7$ t,%7$p" p"n n NHN H@T%1T%>4@T%1T%>4D|D|@r @ r<j < j8` 8 `6Z 6 Z4R 4 R0L 0 L.F . F,<@ , <@*|< * |<(x8 ( x8&t4 & t4 $p2 $ p2"L " L ( (%<<:%5 %<<:%54| 4|.r  .r(j (j$`  $`Z  ZR RL  LF F@  @|< | <x8  x 8t4 t4p 2%7$  p 2%7$BL"B L "0( 0 ( 4 %1%>T%,l4 %1%>T%,ldd\  \T  TN NH  HB B> ><8  < 84 4 | 0 | 0x , x ,t*%5$ t *%5$ p(" p("n n  j jf f b%1:&  b%1:&`8 `8^4 ^ 4Z2 Z 2X0  X  0V, V ,* *PCT($ PCT ($J& J &F$  F $B" B "< %, < %,: :       <d%<< ><<: :  8 86 64 42    2   0 0%<.(!!!%< . (!!!,& ,&*$ * $"  "( ( &  & $ $   " "                    """  """                       @T1Td%1:***>d %1:***8 84  42 20 0,  ,* *( (T&T &$ $"  "  N   N    : : %.>.B.@T%1T%>.>.B.DD@ @ < < 8 8 6 6 4 4 0 0 .< . <, , *| * |(x ( x&t & t$p $ p"L   " L    ( (%<<:((( %<<:(((4 4.  .( ($  $        | | x  x t tp  p BL   B L    0( 0 (  4 %1%>T?+A+E+4 %1%>T?+A+E+        < <     | | x x t t p   p    n nj%1:<->-B- j %1:<->-B-f8 f8b4  b 4`2 ` 2^0 ^ 0Z, Z  ,X*  X *V( V (CT&CT &P$ P $J" J "F  F B B < <: :        <d% >: :  8 86 64 4        <C<(!!!<C<(!!!&&$ $z"  z "v v  r  rn n  l l h h f f  b b^ ^ \ \ X X <     <       %E< """%E< """   z z v vr r n nl   l h hf fb b ^ ^\ \X    X   V V@T%1TR///@T%1T R ///DPD P@N @ N<L < L8J 8 J6H 6 H4F 4 F 0D 0 D .R .R ,@ , @*> * >(: ( :&8 & 8$6 $ 6"4 " 4 2   2   0<:444  0<:444.4  .4,.  , .*( * ($  $(  ( & & $  $  "  "         BB 0 0 4 %1T)))4 %1T)))              <444  < 444           >d%1:***>d%1:***8  84 4 2 20 0,   ,* *( (T& T &$ $"  "  N   N     : : $ $ %>.B.C.@T%1T%>>.B.C.DD@ @ < < 8 8 6 6 4 4 0 0 .< . <, , *| * |(x ( x&t & t$p $ p"L   " L    ( (   <<:>(B(C(<<:>(B(C(4 4. .(  ($  $       |  | x x t  tBP   B P    0, 0 ,@ 1%>TA+E+F+@ 1%>TA+E+F+          <  <   | | x x t t  p pn n j   j   f%1:>-B-C- f %1:>-B-C-b8  b8`4 ` 4^2 ^ 2Z0 Z 0X,  X  ,V* V *( (P& P &JCT$ JCT $F"  F "B B < < : :         <d%d%1:***>d  %1:***884 42 20   0, ,* *T(T (& &$  $" "  N   N   : : %.>.B.@T%1T%>.>.B.DD@ @ < < 8 8 6 6 4 4 0< 0 <. . , , *| * |(x ( x&t & t$P   $ P   ", " , %<<:((( %<<:(((4 4.  .(  ($ $        |  | x x t  tp p n  nBH   B H   4 %1%>T?+A+E+4 %1%>T?+A+E+            < < | |x x t t  p p n   n   j j f%1:<->-B- f%1:<->-B-b8  b 8`4 ` 4^2 ^ 2Z0 Z 0X,  X ,V* V *( (PCT& PCT &J$ J $F"  F "B B < < : :         <d<#:%E<<)C)F)<d<#:%E<<)C)F)0"0"&( & (z&  z &v$  v $r"  r "n  n l lh%1  h%1 f f b b ^   ^ \ \X X <     <       %?:4   %?:4     00& & z  zv  v  r rn n%<l<<%< l<<h hf  f  b b ^ ^\  \@    @   $ $ %C:%C(!!!%C:%C(!!!0&0&&$ & $z"  z "v  v  r  rn  n l l %?h%? h f f b  b ^ ^  \ \ X  X V V:     :    %H:%E """%H:%E """00& & z  z v  vr  r n  nl l h h%Cf %C f b b ^  ^ \ \ X XV    V   R R@T%K:P/// @T%K: P///0N0 N &L & LJ  JH  HF  FD  D  %H@R%H @R> >:  : 8 8 6 64  42    2   0 0%O:.<:444%O: .<:4440,40 ,4&*. & * .(  (($  ( $&  & $  $   %K"%K "            BB   0 0  j @ T#:T<)C)F)@ T#:T<)C)F)00& &             %O<444%O<444                >d%W:%1:***>d%W:%1:***080 8& 4 & 42  20  0,   ,*  *(  (%TT&%TT &$ $"  "       N   N     %.B.C.@T>.B.C.< <       <<:(((<<:(((44. .( ($ $     | | x x t tp p BL   B L    0( 0 (4 %>TA+E+F+4 %>TA+E+F+       < <  | | x x t t p pn   n    j jf%1:>-B-C- f %1:>-B-C-b8 b8`4 ` 4^2 ^ 2Z0 Z 0X, X  ,V* V *( (PCT& PCT &N$ N $J" J "H H D D B B           <d%E<<<)?))<d%E<<<)?))""( (z& z &v$ v $r" r "n n l%1 l%1h h f f b  b ^ ^ \ \X    X    V VR    R    P P N N L LJ J H HF F D D<<<<@ @> >: : 8 86 64 42   2    0(!!! 0(!!!.& .&,$ , $*" * "  ( (& & $ $  ""              < <"?"C"< <"?"C"        < <            @T///@T ///           <:ppp<:ppp44. .( ($  $       BB 0 0 4 T)))4 T)))        <444< 444     >d%1:***>d%1:***8 84 42 20 0,  ,* *( (& &T$T $" "  N   N    : : %.>.B.@T%>.>.B.       < <| |x xt tp pL   L   ( (%<<:(((%<<:(((44. .( ($ $     | | x x t tp p BL   B L    0( 0 (4 %>T?+A+E+4 %>T?+A+E+      < <  | | x x t t p pn   n    j jf f X b1:<->-B-b1:<->-B-`8 `8^4 ^ 4Z2 Z 2X0 X 0V, V ,* *PCT( PCT (J& J &F$ F $B" B "< < : :          <d<#:E<<)C)F)<d<#:E<<)C)F)0"0"&( & (z&  z &v$  v $r"  r "n  n l lh%1  h%1 f f b b ^   ^ \ \X X V  V R    R    %?:P   %?: P   0N0 N  &L & LJ  J H  HF  F D  D@ @%<><<%< ><<:  : 8  8 6 6 4 4        %C:%C(!!!%C:%C (!!!0&0&&$ & $z"  z "v  v r  r n  n l l %?h%? h f f b  b ^ ^  \ \X  X  <     <      %H:%E """%H:%E """00& & z  z v  vr  r n  nl  l %Ch %C h f fb  b  ^ ^ \ \X  XV    V   R RP P @T%K:N/// @T%K: N///0L0 L&J & JH  HF  F D D  %H@R%H @R> >:  : 8 8 6 64  42    2   0 0%O:.<:444%O: .<:4440,40 ,4&*. & * .(  (($  ( $&  & $  $  %K"%K "             BB 4 %T:T)))4 %T: T)))00& &               %O<ppp%O <ppp            >d%W:%1:***>d%W: %1:***0808& 4 &  42  20  0,  ,*  *(  (%TT&%TT &$ $"  "      N   N     : : %>.B.C.@T>>.B.C.      < < | |x xt tp pL   L   ( (%<<:(((%<<:(((44. .( ($ $     | | x x t tp p BL   B L    0( 0 (  4 %>TA+E+F+4 %>TA+E+F+     < <   | | x x t tp   p    n nj%1:>-B-C- j %1:>-B-C-f8 f8b4 b 4`2 ` 2^0 ^ 0Z, Z  ,X* X *V( V (CT&CT &P$ P $J" J "F F B B < <: :        <d%E<<<)?))<d%E<<<)?))""( (& &$ $" "   %1 %1 | | x x t t p p n   n   j  j f    f   b b ` ` ^ ^ Z ZX X V VP<< P<<J JF F B B< <: :6   6   2 2 0(!!! 0(!!!,& ,&*$ * $(" ( "$ $  " "                        < """< """                  @T/// @T  ///  R R       <:444<:44444. .( ($ $        BB 0 04 T)))4 T)))        <444< 444      >d%1:***>d%1:***8 84 42 20 0,  ,* *( (T&T &$ $" "  N   N    : : $ $ ^ <d<*?*C*<d<*?*C*   11     D<+++D<+++( (& &$ $" "         N   N   4d\4444d\444  D<D< << ,,,<< ,,,       \ \ | | x xt tp pNL   N L   :( : (@T%>.>.B.@T%>.>.B.      < < | |x xt tp pL   L   ( ( %<<:(((%<<:(((44. .( ($ $     | | x x t tBP   B P    0, 0 ,4 %>T?+A+E+4 %>T?+A+E+       < <  | | x x t t p pn n j   j   f%1:<->-B- f %1:<->-B-b8 b8`4 ` 4^2 ^ 2Z0 Z 0X, X  ,V* V *( (P& P &JCT$ JCT $F" F "B B < < : :         <d<#:%E<<)C)F)<d<#:%E<<)C)F)0"0"&( & (z&  z &v$  v $r"  r "n  n l lh%1  h%1 f f b b ^   ^ \ \X X <     <      %?:4   %?:4   00  & &z  z v  vr  r n  n l  l%<h<<%< h<<f fb  b  ^ ^ \ \X  X<    <      %C:%C(!!!%C:%C(!!!0&0&&$ & $z"  z  "v  v  r rn n %?l%? l h h f  f  b b ^ ^  \  \@     @    $ $ %H:%E """%H:%E """00& & z  z v  vr  r n  nl l %Ch %C h f fb  b  ^ ^ \ \X  XV VR    R   @T%K:P/// @T%K: P ///0N0 N&L & LJ  JH  HF  FD  D  @ @ H#><H#><: :8  8 6 6 4 42    2   0 0%O:.<:d%W:%1:***>d%W: %1:***0 80 8&4 & 42  20   0 , ,*  *%TT(%TT (& &$  $ " "     N   N    : : %.B.C.@T>.B.C. < <      <<:(((<<:(((44. .( ($ $     | | x x t tp p n nBH   B H   4 <J%>TA+E+F+4 <J%>TA+E+F+DD@ @ : : 6 6 2 2 . .   , , *< * <| |(x ( x t t &p & p n    n   j  j %>Jf%1:>-B-C-%>J f%1:>-B-C-Db8D b 8@`4 @ ` 4:^2 : ^ 26Z0 6 Z 02X, 2 X ,.V* . V *( (,PCT& , PCT &*N$ * N $J" J "(H ( H D D &B & B           %?T%5<<<95 %?T%5<<<95N" N"H(    H (   B& B &<$ < $8" 8 "4  4       2%1$$$ 2 %1 $$$0&&& 0 &&&| | .x  . x ,t , tp p *L * L ( ( ( (  <'d<'d&b&b^ ^ $\ $ \X X "V " VR$$$ R$$$ P<< P<<N NL  L J J?F? FD  D 0  0   <" )d<( <" )d<( b& b&^$   ^ $\"   \ "X  X  V  VR""" R """P  P N  N L L J JF  F D D B B @ @ * * %>"+d %>"+d  b b ^  ^ \  \ X  XV  V R RP  P N NL L J    J    F  F%<D%< D B B . .  %?"4* %?"4*  (  (&  & $  $ "  " RR     %>%>    -d<:-d<:b4 b4^. ^ .\(  \ (X$  X $V V R R P P N N  L L J  J F F %?D%? D B  B .  .    %<4*T%<4*T ((& &   $ $ "< "<             %AT /d%1:%AT /d%1:Nb8Nb 8H^4  H ^ 4B\2 B \ 2<X0 < X 08V, 8 V  ,4R* 4 R *P( P (2NT& 2 NT &0L$ 0 L $J"  J ".F . F %<,D%< , D B B*@ * @ *  * %>T7;72%>T7 ;72NNH   H    B B < < 8 8 4 4       2$$$ 2 $$$0%1&&& 0 %1 &&&| |.x . x%A,t %A , t p p*L  * L (   ( (>'dD<  (>'dD<b(b(&^&  & ^  &\$  \ $$X" $ X "V V "R " RP$$$ P  $$$ N  N L L  J  J F  FD D  %>B%>  B . .  %A"")d\ %A"")d\ b  b^  ^\   \X   XV  V R""" R"""P  P ND< ND<L  LJ JF  FD DB B . .    %>"+d< %>"+d<  b b ^  ^  \  \ X  XV  V R RP\  P\ N NL   L   J  J aAFaA  F D D0 0 *  *( (& &$  $" "< <      %>%>     %A-d<: %A-d<:b4b4^.  ^ .\( \ ( X$ X $ V V R R P P N N 8 LLJ J F F D DB B .  .  >-*T>-*T((& &   $ $ " "<<         AA   "/d%1:"/d %1:b8b8^4 ^ 4\2 \ 2X0  X 0V, V  ,R* R *P( P (NCT& NCT &L$ L $J" J "F F %>D%> D B B.  .    %:T4<<K4%:T4<<K4N"N"H( H ( B& B &<$ < $8" 8 "4  4 %1 %1 2$ 2 $0& 0 &|  | .x . x ,t , tP  P *, * ,;'d;'d (b (b ^ ^ &\ & \X X $V $ VR R "P " PN<<$ N<<$ L LJ JF  F %:D%: DB B@   @*  * )d(  )d(b&b&^$  ^ $\"   \ "X  X  V VR  R P" P "N  N L L J  JF F D D B  B .  .   %:"+d %:"+d  b b ^  ^ \  \ X  XV  V R RP  P N N L LJ J  F  F D DB B . .  %7T*%7T* NNH( H(B& B &< <8$ 8 $4 4 "  "  2 20 0   . .%:,%: ,   * *  (  ( -d<:-d<:&b4  &b4^. ^ .$\( $ \ (X$ X $"V " V R R  P P N N L  L J  J %7F%7 F D  D0  0    *T *T(  (&  & $  $ " "< <            4"/d%1:4"/d%1: b8 b 8 ^4  ^ 4\2  \ 2X0  X 0V,  V  ,R* R *P(  P (N& N &LT$ LT $J" J " F   F D D B B . .     %T*T%>T*TNNH(  H(B& B &< < 8$ 8 $4 4 " "2< 2< 0 0    . . 4,4 ,  * *   ( ( $/d%1:$/d%1:&b8 &b8^4 ^ 4$\2 $ \ 2X0 X  0"V, " V ,R* R * PCT( PCT (N& N &L$  L $J" J "%>F %> F D  D  0  0       %?T5<<<95 %?T5<<<95N"N"H(    H (   B&  B &<$ < $8" 8 "4  4       2%1$$$  2 %1 $$$0&&& 0 &&&| | .x  . x ,t , tp p *n * n H H (<'d (<'dbb   &^ & ^\ \ $X $ XV V "R " RP$$$ P$$$ N NL<< L<<J   J F F%?D%? DB  B .  .  %>" )d( %>" )d ( b& b&^$   ^ $\"   \ "X  X V  V R""" R """P  P N  N L L J JF  F D DB B  . .    +d +d bb ^ ^ \ \ X  XV V R RP P N N  L LJ    J    F F%>D%> D B B.  .    %?"4*%?"4*  ( (&  & $  $  "R  "R       -d<: -d<:b4b4^.  ^ .\( \ (X$ X $V  V R R P P N N L L  J  J F F %?D%? D B  B @ @*  *%>pT %>pT( (& &   $ $ " " *  < <         AT /d1:AT /d 1:Nb8Nb8H^4 H ^  4B\2 B \ 2<X0 < X 08V, 8 V ,4R* 4 R *P( P (2NT& 2 NT &0L$ 0 L $J"  J ".F . F ,D , D >B> B.  .         %>T7>;7%>T7 >;7NNH   H    B B < < 8 8 4 4       2%1$$$ 2 %1$$$0&&& 0 &&&| |.x . x %A,t%A , tp p*L   * L (  ((  ( >'dD<>'d D<&b(  &b(^&  ^ &$\$ $ \ $X" X ""V " V  R$$$ R$$$ P  P N N L  L J  J  %>F%> FD  D  0  0  %A"")d\ %A"")d\ b b^   ^\   \X  X V  VR""" R """P  PND<  ND<L LJ JF  FD DB B@ @  * *%>"+d< %>"+d<  b b ^  ^ \  \  X  XV  V R RP  P N NL\ L\J    J    F  F%AD%A D B B. .  * *( (& & $ $" " < <      %>%>     %A-d<:%A-d<:b4 b4^. ^ .\(  \ ( X$ X $ V V R R P P N N L L J J F  F D DB B .  .   %:T4*T%:T4*TNNH(  H(B& B &< < 8$ 8 $4 4 "< "<2 2 0  0     aA.aA . , ,   * * "/d%1:"/d %1:(b8 (b8^4 ^ 4&\2 & \ 2X0 X 0$V, $ V  ,R* R *"P( " P (NCT& NCT & L$ L $J" J "F  F %:D%: D B B@   @  *  *%T$/d%1:%>T$/d %1:Nb8Nb8H^4 H ^ 4B\2 B \ 2<X0 < X 08V, 8 V  ,4R* 4 R *P( P (2N& 2 N &d 0LT$0LT$J" J ".F  . F <,D< , D B B.   .    ?T5<<<95?T5<<<95N" N"H(    H (   B& B &<$ < $8" 8 "4   4       2%1$$$ 2 %1 $$$0&&& 0 &&&|  | .x   . x ,t , t%>p%> p *L  * L (  ( (<'d  (<'dbb  &^  & ^\  \ $X $ XV V "R " R P$$$  P$$$ N<< N<<L LJ   J F  F%?D%? DB  B .  .    %<" )d( %<" )d( b&  b&^$  ^ $\"  \  "X  X V"""   V"""R R P  P N N L L  J JF  F  D D 0 0    %>"+d %>"+d   b  b^  ^ \  \ X  XV  V R RP  P N  N L LJ    J    F  F%< D%< DB B@ @ * *%?"p%?"p   ( (&  & $  $ "  "  C< C<   %> %>     -d<:-d<:b4 b4^. ^ .\( \ (X$  X $V V R R P P N N  L L J  J F F D D%? B %? B .  .  %<4*T%<4*T( (& &   $ $ " "<<               %AT /d%1:%AT /d %1:Nb8Nb8H^4 H ^ 4B\2 B \ 2<X0 < X  08V, 8 V ,4R* 4 R *PT( PT (2N& 2 N &0L$ 0 L $J" J "%<.F %< . F ,D , D 0  0        %>T7%;%7%2%>T7 %;%7%2NN H   H    B B < < 8 8 4 4       2%1$$$ 2 %1 $$$0&&& 0 &&&| | .x . x %A,t%A , tp p*n  * n H  H (>'dD< (>'dD<b( b (&^&  & ^ &\$ \ $$X" $ X "V V "R  " R P$$$ P $$$ N N L L J   J F  F %>D%> D B  B .  .  %A"")d\%A"")d\ b  b^   ^\  \X  X V  VR"""  R """P  PND< ND<L LJ J F  FD DB B . .   %>"+d< %>"+d<   b  b^  ^ \  \  X  XV  V R RP  P N\  N\L LJ    J    F  F%A D%A DB B. .    "+*"+*((& &$ $"< "<     > >      A-d<:A-d<:b4 b4^. ^ .\( \ ( X$ X $ V V R R P P N N L L J J F   F D DB B @ @*  *%>pT%>pT((& &   $ $ " "  < <    %A %A      "/d%1:"/d%1:b8b 8^4 ^ 4\2 \ 2X0  X 0V, V ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D %>B%> B.  .   %CT4<<4%CT4<<4N"N"H( H ( B& B &<$ < $8" 8 "4  4   2%1$ 2 %1 $0& 0 &| | .x  . x ,t , tp p *L * L ( ( ( ( ;'d;'d  &b &b^ ^ $\ $ \X X "V " VR$ R$ P<< P<<N NL  L J J%CF%C FD  D 0  0   %C")d(%C")d( b&  b&^$   ^ $\"  \ "X   X  V  VR"  R "P  P N N L L J J F  F D D B B @ @*  * +d +d  b b^ ^ \ \ X  XV V R RP P N  N L L J  J  F F%C D%C DB B.  . %C*%C*  ((& &  $ $ " " RR       -d<:-d<:b4b4^. ^ .\( \ (X$  X $V V R R P P N N L L J J F F %CD%C DB  B .  .   %DT*T%DT*TNNH( H(B& B &< < 8$ 8 $4 4 "< "<2 2 0  0  . . , ,       %CT/d%1:%CT/d%1:Nb8Nb 8H^4 H ^ 4B\2 B \ 2<X0 < X 08V, 8 V  ,4R* 4 R *P( P (2NT& 2 NT &0L$ 0 L $J" J ".F  . F %D,D%D , D B B*@  * @ *   * %AT994ሥ0%AT9 94ᐥ0N NH    H    B B < < 8 8 4  4       2$$$ 2 $$$ 01&&&01&&&| |.x  . xC,t C , t p p*L  * L (   ( (@'dD< (@'dD<b( b(&^&  & ^  &\$ \ $$X" $ X "V V "R  " RP$$$ P  $$$ N N L L J   J F  FD D  %AB%A  B . .  CT$)d\ CT$)d\NbNbH^  H ^B\  B \<X < X8V 8 V 4R""" 4 R"""P  P 2ND< 2 ND<0L 0 LJ J.F . F ,D , DB B.  .    %AT+d< %AT+d<  Nb NbH^ H ^  B\ B \ <X < X8V 8 V 4R 4 RP\ P\ 2N  2 N0L   0 L   J  J %C.F%C . F,D , D0   0   %?T4*%?T4*N NH(  H(B& B &< <8$ 8 $4  4" "2< 2 < 0 0   .  .%A,%A , *  *  (!-d<: (!-d<:b4 b4&^.  & ^ .\( \ ($X$ $ X $V V "R  " R P P  N N L L J   J F  F %?D%? DB   B  .  .   %T$/d%1:%>T$/d %1: Nb8 Nb8H^4 H ^ 4B\2 B \ 2<X0 < X 08V, 8 V  ,4R* 4 R *P( P (2NCT&  2 NCT &0L$ 0 L $J"  J ".F  . F %<,D%< , D B B.   .         %?T5<<C<K9C5 %?T5<<C<K9C5N" N"H(   H (   B& B &<$ < $8"  8 "4  4 %1   %1   2$$$ 2 $$$0&&& 0 &&&|   | %>.x%> . x ,t , tP   P *,  * ,<'d<'d (b  (b ^  ^ &\ & \X X $V $ VR  R "P " PN<<$$$ N<<$$$ L LJ  JF   F %?D%? DB B@   @ *  * %<" )d(%<" )d( b&  b&^$   ^ $\"  \ "X  X  V  VR  R P"""  P """N N L L J J F  F D D B B  . .    %>"+d %>"+d   b  b^  ^ \  \ X  XV  V R RP  P N  N L LJ  J F     F   D D%< B%< B . .  %?"4*%?"4*   (  (&  & $  $ "  "      %> %>      t -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P  N N L L J  J ? F? F D D0  0  <4*T<4*T ((& &   $ $ " "<<             %AT /d%1:%AT /d%1:Nb8Nb 8H^4 H ^ 4B\2 B \ 2<X0 < X 08V, 8 V  ,4R* 4 R *P( P (2N& 2 N &0LT$ 0 LT $J" J ".F  . F %<,D%< , D B B.  .         %>T7>;7%>T7 >;7NNH   H    B B < < 8 8 4 4       2%1$$$ 2 %1$$$0&&& 0 &&&| |.x . x ,t , t%Ap%A p*L  * L (  ((>'dD<  (>'dD<b(b (&^&  & ^ &\$  \ $$X" $ X "V V "R " R P$$$  P $$$ N N L L J   J F  F %>D%> D B  B .  .   %A"")d\ %A"")d\ b  b^  ^\  \ X  XV"""   V """R RPD<  PD<N NL L J JF  FD D 0 0   %>"+d< %>"+d<   b  b^  ^ \  \  X  XV  V R RP  P N\  N\L LJ    J    F  F%A D%A DB B@ @*  * ((& & $ $" "   < <   %> %>     %A-d<:%A-d<:b4 b4^. ^ .\( \ ( X$ X $ V V R R P P N N L L J J F   F D DB B .  .  %:T4*T%:T4*TNNH( H(B& B &< < 8$ 8 $4 4 " "2< 2< 0 0   .  . %A,%A ,  * *   ( ( "/d%1:"/d%1:&b8 &b8^4 ^ 4$\2 $ \ 2X0 X  0"V, " V ,R* R * PCT( PCT (N& N &L$  L $J" J "%:F %: F D  D  0 0       <d<E<d<)?)C)<d<E<d<)?)C)bb^ ^z\ z \vX v Xrr r rln l njl j lfh%1 f h%1df d fbb b b`^ ` ^ \ \^X ^ XZV Z V XR   X R   VP    V P   N N TL T LJ JRH R HPF P FND N DL LJ@ J @v ><"><"H:H :F8 F 8 D6 D 64 4 B2B   B 2B   @0. @ 0 ..<$* > *< <:( : ( & & 8$ 8 $ 6 6" "    4 4 2 2  0   0    .""" . """, , * * ( (  $$& &  $ $  "    "        @TZ%///@T Z%///      ꅀ ꍀ                 444444   %%    BB 4 &)))4 &)))텄 퍄   텀 퍀        ppp ppp         >df'***>d f'***    &&  N   N    : :%).>.B.@T%>).>.B.    셀 썀      | | x xt tp pL   L   ( (%<(((%<(((      ) )  | |x xt tp pBL   B L   0(  0 (      @ >H*?+A+E+@ >H*?+A+E+           | |x xt tp   p   n nj<->-B- j<->-B-f fb b` `^ ^Z ZX XV VH*H*P PJ JF F B B < <: :        <d<#:%EF+)C)F)<d<#:%E F+)C)F)00 & & z  zv  v r  rn  n l lh  hf f b b^  ^\ \X XV    V   R R%?:P   %?: P   0N0 N&L & LJ  JH  HF  FD  D%<@F+%< @F+> >:  : 8 8  6 64  4          %C:%C!!!%C:%C  !!!00 & &z  zv  vr  rn  nl  l%?h%? hf fb  b ^ ^ \ \X  X<    <      %H:%E"""%H:%E"""00& &z  zv  v r rn n%Cl%C l h h f  f b b ^ ^\  \X    X   V V@T%K:R/// @T%K: R///0P0 P&N & NL  LJ  JH  HF  FD D%H%H@ @>  > : : 8 86  64 42    2   %O:0444%O: 04440.0 .&, & ,*  * (  (&  &$ $%K"%K "       BB 0 0 4 %T:)))4 %T:)))00 & &           %O444%O 444            >d%W:***>d%W:***00& &      %T%T     N   N     : :$ $%>.B.C.@T%>>.B.C.        | |x xt tp pL   L   ( ( %<(((%<(((        | |x xt tBP   B P   0, 0 ,4 %>:TA+E+F+4 %>:TA+E+F+RRN NL LJ J     | |x xt tp pn nj   j   f>-B-C- f>-B-C-b b` `^ ^Z ZX XV VP PJ: J: F FB B< <: : 8     8    &  &<d<%E%* > *<( < ( :$ : $" "8  8 6 6      4 4 2 2    0   0    .""" . """, , * *  (  ( $$& &  $ $   " "      @T % /// @T % ///     녀 덀                  444444  %%    BB 0 0 4 & )))4 & )))셄  썄텀 퍀         444444          f >df' <*?*C*>df' <*?*C*     <&<&  N   N    : :%Z).>.B.@T%> Z).>.B.           | | x xt tP   P   , ,%<(((%<(((      ) ) | |x xt tp pn nBH   B H   4 %>* ?+A+E+4 %> * ?+A+E+            | | x xt tp pn   n   j jf<->-B- f<->-B-b b` `^ ^Z ZX XV VP* P*J  J F FB B < <: :           <d<#:%EF+ )C)F)<d<#:%E F+ )C)F)00& &z  zv  v r  r n  nl l h  h f f b b^  ^\ \X X<    <      %?:4   %?:4   00& &z  zv  v r rn n%<lF+%< lF+h hf  f b b  ^ ^\  \ @    @    $ $ %C:%C !!!%C:%C !!!00  & &z  zv  vr  rn  nl l%?h%? hf fb  b ^ ^ \ \X  XV V:    :   %H:%E"""%H:%E"""00& &z  zv  vr  rn  nl lh h C#fC#fb b^  ^ \ \ X XV    V   R R@T%K:P >:  : 8 8 6 64  42    2   0 0%O:.444%O: .4440,0 ,&* & * (  (&  &$  $ %K"%K "        BB  0 0  4 %T:)))4 %T:)))00 & &           %O444%O444           >d%W:***>d%W:***00& &      %T%T     N   N    %.B.C.@T>.B.C.      <(((<(((        | |x xt tp pBL   B L   0( 0 (4 %>A+E+F+4 %>A+E+F+        | |x xt tp pn   n   j jf>-B-C- f>-B-C-b b` `^ ^Z ZX XV VP PN NJ JH HD DB B           <d<E<<<)?)C)<d<E<<<)?)C)""( (z& z &v$ v $rr" r r "ln l n jl j lfh f h df d f bb b b `^ ` ^ \ \^X   ^ X    ZV Z VXR    X R    VP V PN N TL T LJ J RH R HPF P F ND N DL<< L<<J@ J @> >H: H : F8 F 8D6 D 64 4B2   B 2    @0(!!! @ 0(!!!.& .&,$ , $>*" > * "< <  :( : (& & 8$ 8 $ 6 6 " "    4 4 2 2         0 0   """ """. .   , ,  * *   ( (  & &   $ $      "  " @T/// @T ///                <:ppp<:ppp44.  .( ($  $        BB  0 0 4 T)))4 T)))         <444 < 444      >d%1:***>d%1:***8 84 42 2 0 0,  ,* *( (& &T$T $" "  N   N    : : %.>.B.@T%>.>.B.        <<| |x xt tp pL   L   ( (<<:<(>(B(<<:<(>(B(44. .( ($ $     | | x x t tp p BL   B L    0( 0 (@ %>T?+A+E+@ %>T?+A+E+      < <  | | x x t t p pn   n    j jf f b%1:<->-B- b%1:<->-B-`8 `8^4 ^ 4Z2 Z 2X0 X  0V, V ,* *PCT( PCT (J& J &F$ F $B" B "< < : :          <d<#:%E<<)C)F)<d<#:%E<<)C)F)0"0"&( & (z&  z &v$  v $r"  r "n  n l lh%1  h%1 f f b b ^   ^ \ \X X V  V R    R    %?:P   %?: P   0N0 N  &L & LJ  J H  HF  F D  D@ @%<><<%< ><<:  : 8  8 6 6 4 4        %C:%C(!!!%C:%C (!!!0&0&&$ & $z"  z "v  v r  r n  n l l %?h%? h f f b  b ^ ^  \ \X  X  <     <      %H:%E """%H:%E """00& & z  z v  vr  r n  nl  l %Ch %C h f fb  b  ^ ^ \ \X  XV    V   R RP P @T%K:N/// @T%K: N///0L0 L&J & JH  HF  F D D  %H@R%H @R> >:  : 8 8 6 64  42    2   0 0%O:.<:444%O: .<:4440,40 ,4&*. & * .(  (($  ( $&  & $  $  %K"%K "             BB 4 %T:T)))4 %T: T)))00& &               %O<ppp%O <ppp            >d%W:%1:***>d%W: %1:***0808& 4 &  42  20  0,  ,*  *(  (%TT&%TT &$ $"  "      N   N     : : %>.B.C.@T%>>.B.C.      < < | |x xt tp pL   L   ( (%<<:(((%<<:(((44. .( ($ $     | | x x t tp p BL   B L    0( 0 (  4 %>TA+E+F+4 %>TA+E+F+     < <   | | x x t tp   p    n nj%1:>-B-C- j %1:>-B-C-f8 f8b4 b 4`2 ` 2^0 ^ 0Z, Z  ,X* X *V( V (CT&CT &P$ P $J" J "F F B B < <: :        <d<%E<<<)?))<d<%E<<<)?))""( (& &$ $r" r "l l j j f f d%1 d %1 b| b | `x ` x t t ^p ^ p Zn   Z n   Xj  X j Vf    V f   b b T` T ` ^ ^ RZ R ZPX P X NV N VL LJP<< J P<<J JHF H F FB F BD< D <: :B6   B 6   @2 @ 2 0(!!! 0(!!!,& ,&>*$ > * $<(" < ( ":$ : $  " "8  8 6 6       4 4 2 2    0    0      . . < """< """, , * *    ( (   & &  $ $ "   "   @T /// @T  ///   R R          <:444<:44444.  .( ($ $          BB 0 0@ T<)?)C)@ T<)?)C)          <444< 444       >d%1:***>d%1:***8 84 4 2 20 0,  ,* *( (T&T &$ $" "  N   N    : : $ $ %.>.B.@T%>.>.B.      < < | |x xt tp pL   L   ( ( %<<:(((%<<:(((44. .( ($ $     | | x x t tBP   B P    0, 0 ,4 %>T?+A+E+4 %>T?+A+E+       < <  | | x x t t p pn n j   j   f%1:<->-B- f %1:<->-B-b8 b8`4 ` 4^2 ^ 2Z0 Z 0X, X  ,V* V *( (P& P &JCT$ JCT $F" F "B B < < : :         <d<#:%E<<)C)F)<d<#:%E<<)C)F)0"0"&( & (z&  z &v$  v $r"  r "n  n l lh%1  h%1 f f b b ^   ^ \ \X X <     <      %?:4   %?:4   00  & &z  z v  vr  r n  n l  l%<h<<%< h<<f fb  b  ^ ^ \ \X  X<    <      $ C#:C<(C<%H >C<: :8  8 6 6 4 42    2   0 0%O:.<:444%O: .<:4440,40 ,4&*. & * .(  (($  ( $&  & $  $  %K"%K "            BB   0 04 %T:T)))4 %T: T)))00& &               %O<444%O< 444                >d%W:%1:***>d%W: %1:***0 80 8&4 & 42  20   0 , ,*  *%TT(%TT (& &$  $ " "     N   N    : : %.B.C.@T>.B.C. < <      %<<:(((%<<:(((44. .( ($ $     | | x x t tp p n nBH   B H   4 %>TA+E+F+4 %>TA+E+F+        h <<| |x x t t p p n   n   j j f1:>-B-C- f1:>-B-C-b8 b 8`4 ` 4^2 ^ 2Z0 Z 0X, X ,V* V *( (PCT& PCT &N$ N $J" J "H H D D B B          <B<#:V<<R# <B<#:V<<R# 60"60"2&( 2 & (0& 0  &,$ ,  $*" *  "(  (  & &$%1 $ %1 " "              %?: %?:  0 0& &         %<<< %<<<     R# R#   %<%C:(<$ %<%C:(<$ 0&0&&$ & $"   "          %?%?             %H: %H: 00&  &         %C %C    K<$ K<$    %1T%K:% %1T%K:% D0 D0  @& @ &< < 8 8 6 6 4 4  0 0 .%HR .%HR, ,*쇀 * 쏀(  ( & & $ $ " "   %O:<: %O:<:04 04&.  & .(  ($   $        %K%K         Z% Z%      %1%T:T& %1%T:T& 00&  &        %O<%O<               %W:%1:f' %W:%1:f' 08 0 8 &4  & 42  20  0,   ,*   *( (%TT&%TT &$ $"  "     Z& Z&    %7%G%C%2%>7 %G%C%2     ,,   %A8%1%A8 %1  | |  x x t  t  p p n   n   H H >'dD<>'dD<b(b (^& ^ &\$ \ $X" X "V  V R R P P N N LLJ J F FD D B B. . ")d\")d\bb^ ^\ \X X V V,R, R  P P>8ND<>8 ND<L LJ JF FD DB B. .  +d< +d< bb^ ^ \ \  X XV V R RP P N\ N\L LJ J F FD DB B. .  **((& &$ $ "< " <      -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B @ @* *pTpT((& & $ $ " "  < <         "/d%1:"/d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D B B.  . b b :4<<4:4<<4""( (& &$ $" "   %1 %1  | |  x  x t tp p  L L ( (  ;'d;'d  bb^ ^ \ \X X V VR RP<< P<<N NL L J JF FD D0 0  )d()d(b&  b&  ^$ ^ $\" \ "X X  V V,R, R  P P %:8N%:8 N L L J JF F D D B B @ @* * +d +d bb^ ^ \ \ X XV V R RP P N NL L J J F FD DB B. .b b %7*%7* ((& &$ $ " " RR      -d<:-d<:b4b4^. ^ .\(  \ (  X$ X $V V R R P P N N L L J J F F D DB B . .   0 -*T-*T((& & ,$, $  78"<78 "<          /d%1:/d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NT& NT &L$ L $J" J "F F D D B B@ @ *  *  <9E@0<9 E@0       %1 %1 | | x xt   t   p p L  L   (  ( @'dD<@'dD<b(b(^& ^  &\$ \ $X" X "V  V R RP P  N N L L J J F FD D  B B. . $)d\$)d\bb^ ^\ \X XV V R R,P, P %<8ND<%<8 ND<L LJ JF FD DB B. .   +d< +d< bb^ ^  \ \ X XV V R RP\ P\ N NL LJ J F FD D0 0 4*4*((& &$ $" "< <     !-d<:!-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B . . b b %>*T%>*T((& & $ $ " "<<          $/d%1:$/d %1:b8b8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D B B.    .   b b > > %?5<<%H%E%5%?5<<%H%E%5""( (& &$ $,", "   %>8%1%>8 %1  |  |  x x t  t  P  P  ,  ,  <'d<'d bb ^ ^ \ \X X V VR R P PN<< N<<L LJ JF F D DB B@ @* *  )d( )d(b&b&^$ ^ $\" \ "X X  V V,R, R  P P N  N ?8L?8LJ JF F D DB B . .    +d<  +d< bb^  ^ \ \ X XV V R RP P N< N< L LJ J F FD DB B. . 4*4* ((& &$ $ " "        -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D D0 0 b b A4*TA4*T((& & $ $ " "<<           /d%1: /d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (N& N &LT$ LT $J" J "F F D D B B.    .    b b  %>7JG7%>7 JG7    ,,   %A8%1%A8 %1 | | x x t  t  p p L   L   ( (>'dD<>'dD<b(b (^& ^ &\$ \ $X" X "V  V R R P P N N L L J J F F D D B B. .  ")d\")d\bb^ ^\ \ X X,V, V  R R%>8PD<%>8 PD<N NL LJ JF FD D0 0  +d< +d< bb^ ^ \ \  X XV V R RP P N\ N\L LJ J F FD DB B@ @* *%:%:((& &$ $" "  < <     -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B . .  4*T4*T((& & $ $ ,", "%:8<%:8<           "/d1:"/d1:b8b8^4 ^ 4\2 \ 2X0 X 0V, V ,R* R *PCT( PCT (N& N &L$ L $J" J "F F D D 0    0   b b <9<<LH;<9<<LH;""( (& &$ $" "   %1 %1  | |  x  x t  t  p p  n   n   H H @'d@'dbb  ^ ^\ \ X XV V R RP PN NL<< L<<J J F FD DB B. . $)d($)d (b&b&^$ ^ $\" \ "X X V V ,R, R  P P <8N<8 N L L J JF F D DB B  . .   +d +d bb^ ^ \ \ X XV V R RP P N N L LJ J F FD DB B. .   4*4*((& &$ $  "R "R      !-d<:!-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B @ @* *TT((& & $ $ " "  < <       $/d%1:$/d %1:b8b8^4 ^  4\2 \ 2X0 X 0V, V ,R* R *P( P (NT& NT &L$ L $J" J "F F D D B B. .    9-9዇9 -9      %1 %1 | | x x t tp p L  L ( ( @'dD<@'d D<b(b(^& ^ &\$ \ $X" X "V V  R RP P N N L L J J  F FD D 0 0 $)d\$)d\b  b  ^ ^\ \X X V VR R P PND< ND<L LJ JF FD DB B@ @ * *+d< +d< bb^ ^ \ \  X XV V R RP P N NnL\L\J JF FD DB B. .b b >$+* >$+* ((& &$ $" " < <      !-d<:!-d<:b4b4^. ^ .\(  \ (  X$ X $V V R R P P N N L L J J F F D DB B . .   >*T>*T((& & ,$, $  "<  "<             $/d%1:$/d %1:b8b8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D B B@ @ *  * %?5<<HE5%?5<<HE5""( (& &$ $" "    >8%1>8 %1 | |  x x t   t   p p  L  L  (  ( <'d<'dbb ^ ^ \ \ X XV V R RP PN<< N<<L LJ J F FD DB B. .   )d( )d(b&b&^$ ^ $\" \ "X X  V VR R ,P, P %?8N%?8 N L L J JF F D D B B . .    +d< +d< bb^ ^ \ \ X XV V R RP  P N NL LJ J F FD D0 0 4*4* ((& &$ $ " " RR     -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B . . b b %A4*T%A4*T((& & $ $ " "<<            /d%1: /d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NT& NT &L$ L $J" J "F F D D B B.    .    b b  > >  Z>7GC2>7GC2   ,,   A81A8 1  |  |  x xt  t  P  P  ,  ,  >'dD<>'dD<b(b (^& ^ &\$ \ $X" X "V V R R P P N N L L J J F F D D B B@ @ * *")d\")d\bb^ ^\ \X X V V,R, R  P PN  N%>8LD<%>8 LD<J JF FD DB B. .  +d< +d< bb^  ^ \ \ X X V V R RP P N\ N\L LJ J F FD DB B. . **((& &$ $" " < <      -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D D0 0  4*T4*T((& & $ $ " "<<         "/d%1:"/d %1:b8b8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (N& N &LCT$ LCT $J" J "F F D D B B.  . b b %C4<<-4%C4<<-4""( (& &$ $" "   %1 %1  | |  x  x t tp p  L L ( ( ;'d;'dbb  ^ ^\ \ X XV V R R P PN<< N<<L LJ J F FD DB B. .   )d()d(b&  b&  ^$ ^ $\" \  "X X ,V, V R R %C8P%C8 P N N L L J JF F  D D0 0   +d +d bb^ ^ \ \ X XV V R RP P N N L LJ J F FD DB B@ @* *%D%D ((& &$ $ " "   < <     -d<:-d<:b4b4^. ^ .\( \ (X$  X $  V V R R P P N N L L J J F F D DB B . . b b C*TC*T((& & $ $ ,", "D8<D8<            /d%1:/d %1:b8b8^4 ^ 4\2 \ 2X0 X  0V, V ,R* R *PT( PT (N& N &L$ L $J" J "F F D D 0  0 b b  %A9CEC@0%A9 CEC@0     ,,   %C8%1%C8 %1  | |  x x t  t  p p n   n   H H @'dD<@'dD<b(b (^& ^ &\$ \ $X" X "V  V R R P P N N L L J J F F D D B B. . $)d\$)d\bb^ ^\ \X X V V,R, R  P P%A8ND<%A8 ND<L LJ JF FD DB B. .  +d< +d< bb^ ^ \ \  X XV V R RP P N\ N\L LJ J F FD DB B. .b b > > %>4*%>4*((& &$ $ "< " <      !-d<:!-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B @ @* *TT((& & $ $,,  " "  %>8 <%>8 <         $/d%1:$/d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D B B.    .   b b %?5<<%H%E%5%?5<<%H%E%5""( (& &$ $" "   %1 %1  | |  x  x t  t  p p  L   L   ( (  F<'d<'dbb^ ^ \ \X X V VR RP<< P<<N NL L J JF FD D0 0   )d<( )d<(b&b&^$ ^ $\" \ "X X  V V,R, R  P P ?8N?8 N L L J JF F D D B B @ @* * +d +d bb^ ^ \ \ X XV V R RP P N NL L J J F FD DB B. . 4*4* ((& &$ $ " " RR      -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N L L J J F F D DB B . . b b > > A4*TA4*T((& & $ $ "< "<           /d%1: /d%1:b8b 8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NT& NT &L$ L $J" J "F F D D B B@ @ *    *    %>7JG7%>7 JG7    ,,     %A8%1%A8 %1 | | x xt   t   p p L  L   (  ( >'dD<>'dD<b(b(^& ^  &\$ \ $X" X "V  V R RP P  N N L L J J F FD D  B B. . ")d\")d\bb^ ^\ \X XV V R R,P, P %>8ND<%>8 ND<L LJ JF FD DB B. .   +d< +d< bb^ ^  \ \ X XV V R RP\ P\ N NL LJ J F FD D0 0b b %:*%:*((& &$ $" "< <     -d<:-d<:b4b4^. ^ .\( \ (X$ X $V V R R P P N N LLJ J F F D DB B . .  -*T-*T((& & $ $,,  " ":8<:8<          "/d%1:"/d %1:b8b8^4 ^ 4\2 \ 2X0 X 0V, V  ,R* R *P( P (NCT& NCT &L$ L $J" J "F F D D B B.    .   b b > > <9LH9<9LH9     %1 %1  |  |  x xt  t  P  P  ,  ,  @'d@'dbb ^ ^\ \X XV VR RP PN NL LJ JF FD DB B@ @* *$)d$)dbb^ ^\ \X XV V,R, R P PN  N%<8L%<8 LJ JF FD DB B. . +d+dbb^ ^\ \X XV VR RP PN NL LJ JF FD DB B. . 4*4*((& &$ $" "      !-d!-dbb^ ^\ \X XV VR RP PN NL LJ JF FD D0 0 **((& &$ $" "    $/d$/dbb^ ^\ \X XV VR RP PN NL LJ JF FD DB B,., .  ;d9<T;d9<TRRN NL LJ J     | |x xt tp pNL8N L 8:(& : ( &-8d@'d%:T-8d@'d%:TbRbR^N ^ N\L \ LXJ X JV VR RP PN< N< L LJ JF FD D B BN.8N . 8:& :  &$ $  ;d$)d<T;d$)d<TbR  bR  ^N ^ N\L \ LXJ X JV VR R P: P: N NL LJ JF F D D0 0 +d+dbb^ ^\ \X XV VR R P P N%< N%< L LJ JF FD D B B@ @ N*8N * 8dp4Tdp4TRR(N( N&L & LJ J$ $" "   N8N  8: & : &-8d!-d%:T-8d!-d%:TbRbR^N ^ N\L \ LXJ  X J  V VR R P P N4 N4 L LJ JF FD D B BN.8N . 8:& :  &6d*%5'D(0 x@ #z)&s$+ ,-.,@1x߁k$r;  g .( ((vngQ #(L*7, )& ަМ\o۹% #0p*'~k (fu #/$M&ir[6g!?[n87V  0(0  1&# ЂJڦK[vo J  0(0 %9Z }*c"&@.LXרN!_py (( ( ((((ޜ6xX 9%,y5!~*xwH(ئ<} Y$10- +9FB$әް1 m6!).] 8%s"7$"~F !M"($ݪp,;xTQ[ Y)-V&K~w6 %$"x0QBQ,)WWQ y,)P}% 5B$Wq,! s yޒi3 nX2 =M8 4&'S%s>{$a,E`d!M'(J%QG~7*GB!'5%r <^yܲ ") ix1 D0.|4q@\(8ts\w04aEs+'$l"E 6#A}ݦngai%QDa+3p1B l/< 4!'uP܋#q9 ".B - [r%F 1=i  + YO(Vq>x$v  :!&G T!>J  !/}v^g!?LH  }#jSM : p ^x "N "p 8)qb S s![JEP+  @lFR =Z"4 V#QTunW Vc  0 <a.[sJ"6  4acis<t    Pk5zs;    x " o M:'EQl   @D` J-- Jf   Tw0](f n;  ;x!h  x8js$o8|Dy!F A<8  @|eq f  *CO]Y|I t 1-X-*X3f   P; `:%  p x Yt\=            @ bs[JV  r  U#&@L )   D/,s,{4Hq_! P U"g-. I; (  8Nzc%0M zIe>8#!/c< t$yQ r:=+le  yb| Ts p ;hr: ]7IUG ]h5  | R`?+ mVy5S Q F"5'?t -{ h;X9k>v VY , O   c m:MK Q t A ? d2V6V!L(Y:  0Q;'+, zs^Ex "3 .}3?yoEY A& ,  Y e    !3!" "Z!)!h (L_q j pPY(ԩηNZ[Қ+޹9w.0 :  fBu9 .kO 'h1ٶ׾C Yk0"W%''*+l-..-@,)B%  J~BJ-$Ce|ԾQJ-E92WQ~A]L)68 ( "$X&l((<)('$!^ VaAkѰϔΖ <83%_#~=w#W%  ~ V 45AB D \Yh ! V xM s`;AZifQۜ#41p9FV z W p Z: & s 1-H%b;7 c !xq/y^߲F\!IS] G " e T  ? @.[,o X B 2 n ' d - j  x1P;=rF!a  M 8 d \E!hkN9,tZox%FA2 < V4  '!b g l 8vSVՔձՊժ.׍|؝ ޹z<2G'[ +#'+/275J688C94987U6Q41-z)#E Az޸OՃӸrOn˺9x܆,S^Y .W^J"#&)s-V/ 1D45455G3Q21N0/,`*i&"cns, , Wج/i}~=hlMɶҘ<99KU!&*9-/ 355T6e75U5J42S0.,*(&$!IX ;+\MҊ΢5l컦6O {y$vh6 S%*/Q379d>=<9620.*'#h ~7 Atg0{ǩhо%1ͽaΖrO< 4 %+1{49 Ln{\Hx _*LDŽĶW;Vt+‡łZ΂Tןݙ]2-$* 249|=?AB?CpB?t=:740-)%!v ?[gϐFŗU3 ]"zYp+Y޲$ _,#)/&348;>@|AAA}>6=w;86+30O,($ !  _;)rۼZ(J‰ÔRRp͑ҙH) ! mKR%b+/4b73:??6@L?P=;97}30.)&T!# K=ZW:5ߪړաJ/ˍ! ^%ʋ̃ԋ R  &,x1 7;e>BDEGGkFEC:@~=:4/+%0K vLUӓВUͲL*ʹȚɡ[7,Qrӳ_ܠ@Omn#c s`S!(.5;%@|EQILOPQ QNSLI2DKOfTV YX:WThNG'@6e,u#xmY9'3A8*(ҷҌӈP{Դi;o9 ;&/Z8@AI*PUX\v__`]sXTMD<1&wfߢٮ Ҕχͯ@̶̿vo =P;ژ``0*E]aL!)+5?sGMPVZi\^\X[TXSMF@6-"_@%^ۙ֬QRakΆoݵݠr%ڜgs#$yN (3$Ϋ5]*!ۏ0K/tx$Y<;y}`6 %4-5=ClI}LO`QSR$QMJF>@8y/%R  y]kw9uЫҩֲۘޯS^yzs|WB&N^+ C}$)!.37;>@/DC2CA=h93,7% R dd}־3Ұiִi۳X}V)'k^ m v$k(]*-/1x3K44_452/-,({#e WrP)z߭ܨ#׫՞M׷zܚݼ>62$2p wq6I!`#%:() +,(--&-,+h($!([  gFR3_Flvۖ6ݰD|OY)s. m "#i##p#j# #"!o^)Cy S0kcI=$XF)VQL5VZ+V߭1 x =O<t"#V%%e$#K"="CPv \$M{+]x!O ]h2o]":}M )f$)L D[W!#+#"F LCQt wVuaveoP 8{ HP  + s& x * L0bhqIPk;`j"F{_;C.  Z2 \+@gI*4 t  j   &UW8"PrP I ! GmQiU4PG/9~6 ^54 } >LsQ =unFhho3'IMPSITSAMPLE.ITS@@SPC Sample&T0  8  0 @0 ` @ @00@ @` @@ 0@` 0 @0`@@@@@@ P0`0@ 0  00 㴕dHt?LH,:G Bn E  "k(5,2 '</ ;703= P0@@P @0P0`P0@ P p P@0@`000@00CM(G1p >(2&u$-" 0(0 ( (0  0 ( P00 @ 0`0PP 0@P0@ `@ @00@ @00 @PP00  P  P0@0 00@0@ 0@@0@0 0` 0`0 P 0 мϿ”+ יհz ~^ ,ىQ̵p 7.S#d?q0iLP[=l(EI,:|>jI,b+%QLPG"@<`P@@0P@`0P0` P p`@`@`0p`P @0@000` PP (  (؀ ; jxݡ'ٕ  ( 80(01u2M+(.-C> +Y845,.IGFf:N!O: _9M%?2CFBeF9^6R%k+@ :$V"0M*%R< P  !-( i'ٕkUUӣlF2hrܫܹ.<1(    wo95 7 a{ A           4a d$ p !o YZun7D   ~ D":-?M js + "y        @,"0}6zcRݵ؀&$B!Y'.+[{3!h\ ( ?[ {d"=y.%=1.M+4N%"2..;-g&01,"4 *#6%3%aj"hQ+P  JFb,߳pߗ֏[݆ߎ6C}Ba[5k     @U  'c M qy V 6    dn'%{ B~ߗ>[XcD Nv@  'Gb;-g(V0!+-X"2.N#)$r j,))w*'R\%# *(%># +Y,y%!N_`** g#0 ] ? = ib lޟV t؛rNJ˖_](к? \w ^IʥKGȒyفiރ; ߓzsV0% q ?0@l#5#'*'|)&u*++_0Y710/,1:#775015-6+<55[6*E4%6E#9-.'@%.=.Y##!%"`jQ DA ޣl Lڨ޵ }ܶgaY41ߖ= /QVq:G                      `HslveoYKWrKw"o Wr &d  - Z 2  W K      +(. R?Fr              X ;   h  / z Dc    `%,ZF}9HD0FBNb@?lHgEqJFeGSEA j _s0mN    d <8 d # p   R|D t u hA Kv \ ;S LyaJz(%nw 4   `r]hݒYt]hrӽRٽB^وpIѸ-~צьЄnHTٿd/ٝd\\]2/]4rYJ Z4 8FO g#0%C%5A' $s*!/*8$5*++-X"20.).+(e*'B/M(-*<,x+&T*#s/{&(!w!_!I-t*P K F&B}`:&V`:   222o(F3Amg1::9!߬޸߽O[VQڬR]H4a۫52߸cMBAMJHToYt]8gAs   `  \v^rMx "9e!NAl; ~!o8I$um > zB / lU  eeO}F           kt38*'Oc/&Dr ,5o1m&e~6  e0cO\OL|wVY/`13%329h9 F BQ ` }GHZ $!6#6Z wKxP` >db5`j'(-+I>K'u l%G 6 i Z  G w n z B # `L ? Li $D Myq N |v@ <9e/}v_*)r f0U6f79-kGgjS~F8X6 ) v m (  Z 7 9E ( u  5A\  .K v~  U 9  ]Y Ye  O <KWN  TNd0=JE[^M^#jl*>b(z#g7Z5Y:'bUf0s{$ea/G(') `L w A   \ >  o + x C   $"!B M)Y4!Q<<.b!?5YT1N <:IMPSITSAMPLE.ITS@@SPC Sample  ,~ P(88 88 @ @0 P @ ` P@P0@@p@p00 P0P0`` 0 0 p00000 `0P@p@0 @ ` 0 00` P P@   @ @00@0 00@p00@0P 8(0((8 8 @ @(((  p0@ 0 0P 0p0p  0 `P@0 00P P0P @ 0 00P @ @0 00P 0  `0 `0 `@@ 0@P P P `0 @ @   ((  0@Pp P @P 0 0P   0000P@   (8P @@@ 0 8 8(( 8  0(((  0P@00 @  0(8   ( (0((((00 8@ 0  @ @ 0 0  (00 (88  P 8 0( (88(8  0 ( (80     (0   (((    ( 08  (8 08 ( (   (    00  ( 8 0(          (  (       00(      (          0( (  ((  0 ( (       ( 8 `!3HV60((   ( 8( 05*.+9v   (( 0 ( ( (8(  (  (   8(( (( (  80( 00(  0  0          0  ((0 0  0    (   0    (    0( (  0  ( (       (                       IMPSITSAMPLE.ITS@@SPC Sample000  0@@@PPPPPPP@MGAY906'NpI{—Eֱ ŮzxyȾIMPSITSAMPLE.ITS@@SPC Sample00l  Ӓ)'ٕ\݇_zDסч֐wܰE{  J~ w#?5A9/6>FqJMTW#VWfYxWUWUQ9X4|0+% d3>Ӱz#¤KwTZu?m׼ :ήT?,<وP+T%"GcoH s2".+*229}97f88Q={GKRD 84B;CTKL?301u.-8(=U5/050)"" Jt~40iܣPf𳱬hra{v,gS]"26:bHSRbUjaa^2enhdkn`hefc\][V,TOEL??9:,~$#bk.lHA6rǟA-3 qԯvЭRӪ~ 8U@՝cm7gqq[ e U!!=# $%)/2L45422n1W/a/j2C0>,z-/.-/.)S*,*)(!" ( x2ܧׇٌ3`X,nޮ!, %|!(.15q:d>A8EIIIKM(MsKbK&LKIqHXFB?`<6:K73./*$fD M`Gxhަ3< EopúR3ɚ.:jؓYܰܝݏfw3 bl!X!!!_#$l$#"! %!":$1%o%}%^$."t46 1 'e3]ۻثևJӥӬֺ16{D`j  -6"&n(*F. 259%;;;;]>??(?=;}:86]531|.U*%!  \FI} rr.eq9΃͏.vϕ68-"U\֣hܕ.^.zSYwPnq -$=2xUNGaX%\u0% m>30; F0u?=+9'- 7: #Z%(p+.246777\8D9::#:8`76 531/,)&# ~8 y,'hzڈ~dB)ѽУDчьӃ5<ڡx]6.n%)   LIMPSITSAMPLE.ITS@@SPC Sample00!088(iS+>=jE5!ژծ4NM;0X5`Y)W'):NNVD(+ݭv3D:G`2*CM)L}4K.BKRcD߮]8EKBA (F8*w8"PN6(?IIK/ %g:b? p.@GM<io'(Dmcx}SkS3C~A%S k [Z$:r>2aj8/,X*;4 vi[ 6;7e&#/4(C4C8)"Hz")G)Ug tYtok"%#  #y:- &A}>&KS p=2 @5]qXB=I  1r:Ghx@. :c < u  gܡ7t]=*   ݨn*^h ] k . [   ,$Lhu w  pMk *7 GNI 6  `u f8-Hy 9 B @ =ZM nd+ ]jT) niF $ s_ s ~41H   ~@ )*^ ^hH jcr/` +gABFdR^)ve *vܟM!W"P S^b[1O+ۀ>o!*.%p!"%<Q a`Bw-.B'&|36QY%*40"+$U#BmBhoXe 1kGk#6 9z1*AmZx9e,~7ci#Aؽ5r4@8(1"s q6]|oYߪءϬ-:*C\C&7'7c, x&8UVqܪѤ1"*)iܣιpla-H6XW@BSIZҁJn $ICUEXJ& mgށ9xݞaCQdӛڊVK2L?W Q<UNm_O&ٷzНבU*p+E VTB% `HPt&܆Ѱb n#u>QtU+Hu1 ?v&eω5{N UL08Wq[3@sTΑo(.EGRM<$ `ޞެ ѭG(DARLQCY.1s64Y ؇FG&ߞl 8NQ%FO5P_DJ&ՃG 1IKRI9##K&=߉4]; l+qDQK=*D?A߸f@<#_=QpL?/'=}ݘrCMTU5KP|D5|ނ)7&4 :.VGNE58& x7؀Wfڣx(RB,R Ix8,!'MIe_ںЯ*h %:O+NH=s1[xxݫaډѳdֹ?$1J-NJA51!" > I%ɓӎ+!/DPCJ3(RYe&jDUރ>+ ߣy"X,=QH8,*)]0qM_p*:MJ9/y! (wf$ޭ e=H9+8HlL;/$:ߙPʫёK+65EM@0(e +ۮT ȫ͂ &7A@34$3` ]ULƳ@ O"DRIA8&w8^]sǟty;NMFB!:~,9v?یϔ ƫ\;70JjQA;0 Zik2ܚ6ƠǷƧϋf *4D+P(G>4|!d LXg!?ɬBƭTߡm@"=M63HMB}<,* vEeȑ 7p?j0/AJGO>3 Q r#ܣΆǟƒ:ȖҸ *>bFG6A83'qeqaz= GM! v 8"BDB)=-T M2Ԉ=MƔe1?BC>4E" _؟̋nji!C*P=A??>8f)@DE85d%ӱݧ/8?;:91cH  tbȏƥƅZ)0>':7:-4)e{SԐ-Ƿ6۸_);<$555.k 4Lؠ?_ƨ(/A 36>4/53'w !/B>kuƮT 9V0=:a.z/49-e">s, ȯ{7Kc &::/)K22!)  `"Ʃ,vP23m<4[%+T4-="&to˹NŌʹ)l|,=5z&$1#1(3b_x |d*`2:F!1# "r|e@ؼ 9%:67'E!0#! 6J\Ϣ̯Ӯ :\43@0!" "S.,ˊOg; 2,@9*% !+էG[ iw7Q@K0F!1# "r{xzϤ֧5aX{04A:&$0 FD, ͼsTQl";;@703%  "vΏwܰ=]H Z5B9D*#e{ѶЫ<^)B?M?X3"$  _v  /$5!8B9+rt0`J}Ud=0AA59& 9rڐѐ֌;.d{,%;7C:+ z/WԝbI 4A@'3% mLWX& qk+*H=C!:R+$ $ԢڇJO!M4A>e/))!YgG(Sgi *C<~D64,"&CUoB&'h5B9P2++x p mݳ8Uu#7"r.u:=,31n& %l$ i+nވ@ l*3<41.G3;zH$G#-6h734e) Q'3O!:+0}1e66/2,o ݱ߶1(@.\/f4954* 0h*3Pk!T+(.277B4m8:ZLڨ}s()L#1:d6&D@zS4s,J%s' *<8:-V!bT {ݢPB}& &/<4jYu-,)&3!#(^6:H' b5WT/m[ &>,z=1 ]zWtM܉C>^x$0&7P8 qEc  \%#N-y:*#  JU=/1g "$923$ Ok*LMI%#!n'0%&SKj|aQ~@wONi"B()!n n}Z?!&: U86n* " a-;>3'_JE` ( |  %_H ^0&xk~L Ff eX_{"Jd^W'} p( |t,I > U'Xz7wPcL wu  ( GSA}&dT : 40%a'a+iCRM  K#," '5B^i;z *),f$2e'59Fn(-" F2O}UO>IMPSITSAMPLE.ITS@@SPC Sample, (Y>sBKfoPC' ! 7$&>CJ]_AEO1:Wr sܽ`̚ϡҦLX ( h2_1R}&\P`@0 @L@?L#VT]?g0Ĉ3J@E ;8!$'<000@00 @0@D BF>2/Ƽ!rD*H;nh¾)GbLG!+niG˓ETA>5ѯg! >:J-P&|D4@0$2qo%;f?o|̵:751>o͙А<84=`JF2߿Y+@D@@0G:6x@ ż1F96 @@@ @L@/L帶M˙0 F)B&ӭC֯(N79Ŀ  0E(1888/D?@;8eԒ?;7^ ߼Ɂ9I>dB=6A= ?E8\5GD85. Pۛ tKFP*঺ m&cR<5!At +@4) ؉s\&*G 3~χՂz0=1)O*s{ȓ9E1E |>@%#z# 880 88(؀XTMJ5MᅻY$B-+_ZEJ u,A58 kj,QI,PK'#wA_5 Z%CڟV,@Q,$ J6˃z88( 08( 88((88  88)B?M3ϳ҈Ͱz)>*C(80(E()+Iź(t0l=!{Ța]"703=_)\*8%"0E(08  . CNJ˖3(=1Jv000(08(80(8(08  08  (8  08 08(000(8(00(00(8(00 00($Q*19#yBmҼq<,J3L08(00((0(00(0000(0(0(0(00 00 8(Ѐ$5!E,(ظM!H+I/TߥK-. .ڌ9&-*DӮ$(,Z.i'' 0(((0(0( 00 8  (( 2.QB$(w # Jv ' y KJ u&BQ,k* W Q&A]hRT> :"jp!Kߧg"|!@MS-v%,XݺhA$|:  $Gb4Vp#H$''KW1n "oI';w[v"6#1= "^IU@ " ݨ.Z$rjaK  ) f0Z d#;n :f#/"0O #Wb\w )lFO"a)w0MI4!-+ 0=!)6*(y" Dvo | KnH 3oS.F9"iCP !`:+ibk!T,/-=  !  `3/! 6p @["!  @\V#x` Z *hRe' 3>&  ?=Yz   1" /: [ E +@nB &"=D9e   P  1f B4  `7Bfb 8gZ0w(=_tx l  @z 4 (skq3] l n l0/,w)v,u   ^:W8- I03 l@v *7 `TQ2 x i ms@[D| Y~lPf `F3OO5# M Px"SG 1v5k_hm ATa,S5YSL _i io^D %CcvVmF,m22'o:wji 'lU_- hG@ p4+ 'S6 K J9,jUS>{ UIMPSITSAMPLE.ITS@@SPC SamplePP] ((((((()p('j&%#!V PkzW B,M y 9  JF ,&(ۑӷSg_ưŌljȒ0<Е_׶."IMPSITSAMPLE.ITS@@SPC SamplePP] H3s q 1] / * A  gP NbשҘ,kƾ%rbۿ.ExnےIMPSITSAMPLE.ITS@@SPC SamplePP]  ^XYeOKjt}}  5_O k Oeuwۦgmг)8?t}նIMPSITSAMPLE.ITS@@SPC SamplePP.  P)T' mE d~y-ǹ8ߩ8¥xg IZ[3=IMPSITSAMPLE.ITS@@SPC SamplePP|1P JxG #  @ y )  s t3Ⱦowf˹ԩ]SIMPSITSAMPLE.ITS@@SPC SamplePPl @c l\u* ! { 1q ` !e"#\%&'5('x%!S z84۹`ˀ޷IMPSITSAMPLE.ITS@@SPC SamplePP\  nougQ } zq@yV;M!"9$%H&&'((x(_('$W7@V8Ի7[/LIMPSITSAMPLE.ITS@@SPC SamplePPL  m" 7kD?y+-O|' !T!!!!3""]##$%~&&$W!Wak’b¶͹kIMPSITSAMPLE.ITS@@SPC SamplePP`o<   e Y/.&h^ U -JpFQ 1s;Lx  *P 9܂ڽͭIMPSITSAMPLE.ITS@@SPC SamplePP],  F | ;pn > ae"\%_TMn0 B!!f"##'$$%r&('((|&9"( X+`9йIMPSITSAMPLE.ITS@@SPC SamplePP]  a"#F=< v ; VB{fsQjL- !0""#T$$:%e&J''9(E'&!_[سIMPSITSAMPLE.ITS@@SPC SamplePP] 9'| q r & 4hmU8dW85` )!4"##q$%%&& 'F&Y"b>{IMPSITSAMPLE.ITS@@SPC SamplePP]@\V RnH  D}+SM !!"$$$#%&;&&'':";|ēIMPSITSAMPLE.ITS@@SPC SamplePP`o884 Wk# O zgjl_t  ?""#$$&'E$z|` IMPSITSAMPLE.ITS@@SPC SamplePP`o6S~/,A  N j 2 69RbM/pNQM : "$"r$w#o%$K.IMPSITSAMPLE.ITS@@SPC SamplePP]@\&#LGo:x | : Je(tYgG~a Mu!!Y!I- eG-2nl-AZ-MN[-~i-4(Ug-^s|-R*o-3RY-wPTk-t5:-/Uy-%VN-0Qd-F^u-%AS-QeT-PgUy>v`MCnOm qOn }y4eJNy4Yok HJUy4|jWz fy4s6rTX|e y4O}?LzZy4ni[92W9y4D Id3BM8Osv G y4@SI-S"@Cbc @y4~M6y K6z Xd1d5Ur sKQy4rP'+Bɬ-]mɬ8JˬP0fˬy4IV̬%\_ެ8{QhssS Z[A uy By4c OA rHBA AANA mk z~YG}A `yv m y4r y*K kA vy CdPVAiL!j3y4t Ky4x Yzwby4dqOy4WUY[ l\rxG@jwv j\rv! hQAH\rIsA {\qH\ty7mm\qZYK[ i\su9h#Iav j]} wWy tt Av MO4dZT1~8o5K!r i+(u=v ]tcjt'2Mt-]t+\út*\yút8