Super Mario Maker 4 - A Platformer Creator - v1.2.14

Instructions: Scroll down here for help if it shows Question Marks.\n\nMaker Controls:\n  Movement: WASD or Arrows\n  Switch Tools (Place or Erase): Q\n  Move Faster: Space\n  Use the on-screen buttons to access and use menus.\n\nPlayer Controls:\n  Movement: WASD or Arrows\n  Run / Pickup Item: Space\n  Crouch / Use Door: S or Down Arrow\n  Each powerup has unique abilities, experiment with \n  the controls to learn each one!\n\nFor Widescreen, Shadows and Improved Performance, use THIS Turbowarp link (both lines):\nhttps://turbowarp.org/753049043?hqpen&limitless&size=640x360\n\nYou must use that link to get all of those benefits.\n\nALTERNATIVE / CHUNK LOADING: This option loads all entities in the marked 10x10 areas all at once, allowing larger mechanisms to not break due to some parts being unloaded. This option loads a larger area than normal, so is not recommended unless your level actually benefits from it.\n\n=========================================\n\nISSUES IN LOADING / QUESTION MARKS:\nIf there are issues with loading the project, e.g: it shows question marks or tells you to reload, use Turbowarp: \nhttps://turbowarp.org/753049043?hqpen&limitless&size=640x360\nor reload the page and switch to another tab for about 10 seconds, then return. Repeat this until it works.\nFeel free to report this issue to Scratch, it affects many projects with a lot of assets, yet it is ignored.\n\n=========================================\n\nThis project was made by @BenjaminWins11, please do not try to take credit for my work.

@Stage\n\ndefine ConvertToPlay\nset [timeleft v] to (TimeLeftFull)\nset [loadentitiesdelay v] to [90]\nset [on/off v] to [0]\nset [keycoinsremaining v] to [0]\ndelete all of [bltyga v]\ndelete all of [entity list type v]\ndelete all of [unique type v]\ndelete all of [blcoga v]\ndelete all of [blstga v]\ndelete all of [potentialentityspawn v]\ndelete all of [ent bon v]\ndelete all of [ent state v]\ndelete all of [ent ty v]\ndelete all of [ent x v]\ndelete all of [ent x v v]\ndelete all of [ent y v]\ndelete all of [ent y v v]\ndelete all of [ent dir v]\ndelete all of [ent mo v]\ndelete all of [deleteentitylist v]\ndelete all of [loadedentities v]\ndelete all of [loadedsolids v]\nset [conversionprogress v] to [0]\nrepeat until <(length of [blty v]) < ((ConversionProgress) + (1))>\n    reset timer\n    MakeProgress\nend\nreset timer\nDoorChange\nset [loadentitiesdelay v] to [0]\n\ndefine +S (join)\nset [save code v] to (join (Save Code) (join))\nif <not <(ConversionProgress2) = [x]>> then\n    set [save code v] to (join (Save Code) [,])\nend\n\ndefine FindAreaForY\nset [currentarea v] to [0]\nrepeat (length of [areas v])\n    change [currentarea v] by (1)\n    Ext [2] CurArea\n    if <((PlayerY) / (32)) > ((#One) - (1))> then\n        set [#four v] to (#One)\n        Ext [3] CurArea\n        if <((PlayerY) / (32)) < (((#One) + (#Four)) + (1))> then\n            stop [this script v]\n        end\n    end\nend\n\ndefine ExtWor (letter)\nset [#one v] to []\nrepeat until <(letter (Save Progress) of (WorldMapSaveCode)) = (letter)>\n    if <(Save Progress) > (length of (WorldMapSaveCode))> then\n        broadcast (InvalidSaveCode v)\n        stop [this script v]\n    end\n    set [#one v] to (join (#One) (letter (Save Progress) of (WorldMapSaveCode)))\n    change [save progress v] by (1)\nend\nchange [save progress v] by (1)\n\ndefine MakeProgress\nset [whawha v] to [0]\nrepeat ((40000) + ((Shadows) * (40000)))\n    change [conversionprogress v] by (1)\n    if <(length of [blty v]) < (ConversionProgress)> then\n        stop [this script v]\n    end\n    add [0] to [blstga v]\n    set [type v] to (item (ConversionProgress) of [blty v])\n    set [bonus v] to (item (ConversionProgress) of [blco v])\n    set [conversionprogress2 v] to [0]\n    if <(Type) = [ej]> then\n        set [bonus v] to (join (Bonus) [l])\n    end\n    if <(Type) = [ba]> then\n        set [conversionprogress2 v] to <[collectedkeycoins v] contains (ConversionProgress)?>\n        if <(ConversionProgress2) = [0]> then\n            change [keycoinsremaining v] by (1)\n        end\n    end\n    if <(Type) = [i]> then\n        set [conversionprogress2 v] to [1]\n    end\n    if <(ConversionProgress2) = [0]> then\n        set [#four v] to (<(Type) = [ba]> * (ConversionProgress))\n        if <(#Four) = [0]> then\n            set [#four v] to []\n        end\n        set [#seven v] to (<<(Type) = [be]> or <<(Type) = [bo]> or <(Type) = [bw]>>> * (0.5))\n        if <<[type - entities v] contains (Type)?> or <<[type - uniques entities v] contains (Type)?> or < (Bonus) contains [!]?>>> then\n            if < (Bonus) contains [dg]?> then\n                set [whawha v] to [1]\n            end\n            if << (Bonus) contains [!]?> and <not <<< (Bonus) contains ["]?> or < (Bonus) contains [£]?>> or << (Bonus) contains [^]?> or < (Bonus) contains [&]?>>>>> then\n                add (join (join (join (Type) [,]) (join (([floor v] of ((ConversionProgress) / (WorldHeight)) ) + (1)) [,])) (join (join ((ConversionProgress) mod (WorldHeight)) [,]) (join (join (join [0,0,] (#Four)) [,]) (join (Bonus) [,x,])))) to [entity list type v]\n            else\n                set [#eight v] to (join (join [0,0,] (join (<< (Bonus) contains [^]?> or < (Bonus) contains [&]?>> * (-1)) (#Four))) [,])\n                set [#fourteen v] to [0]\n                if << (Bonus) contains ["]?> or < (Bonus) contains [^]?>> then\n                    set [direction v] to [,-90,]\n                else\n                    if < (Bonus) contains [%]?> then\n                        set [direction v] to [,180,]\n                        if <<(letter (1) of (Type)) = [e]> and <not <(Type) = [eu]>>> then\n                            change [#fourteen v] by (-0.5)\n                            change [#seven v] by (-0.5)\n                        end\n                    else\n                        if < (Bonus) contains [$]?> then\n                            set [direction v] to [,0,]\n                            if <<(letter (1) of (Type)) = [e]> and <not <(Type) = [eu]>>> then\n                                change [#fourteen v] by (-0.5)\n                                change [#seven v] by (0.5)\n                            end\n                        else\n                            set [direction v] to [,90,]\n                        end\n                    end\n                end\n                add (join (join (join (Type) [,]) (join ((([floor v] of ((ConversionProgress) / (WorldHeight)) ) + (1)) + (#Seven)) [,])) (join (join (((ConversionProgress) mod (WorldHeight)) + (#Fourteen)) [,]) (join (#Eight) (join (Bonus) (Direction))))) to [entity list type v]\n            end\n            add [i] to [bltyga v]\n            add [i] to [unique type v]\n            add [i] to [blcoga v]\n        else\n            add [i] to [entity list type v]\n            if <[type - uniques v] contains (item (ConversionProgress) of [blty v])?> then\n                add (Type) to [unique type v]\n                add (Bonus) to [blcoga v]\n                if <<<<<<<(Type) = [c]> or <(Type) = [em]>> or <(Type) = [dz]>> or <<(Type) = [dg]> or <(Type) = [ek]>>> or <<<(Type) = [ab]> or <(Type) = [af]>> or <<(Type) = [el]> or <(Type) = [elz]>>>> or <<<(Type) = [aw]> or <(Type) = [de]>> or <<(Type) = [ci]> or <(Type) = [awz]>>>> or <<<(Type) = [ba]> or <(Type) = [df]>> or <<<(Type) = [do]> or <(Type) = [dp]>> or <<(Type) = [dq]> or <(Type) = [awy]>>>>> then\n                    add [i] to [bltyga v]\n                else\n                    add (Type) to [bltyga v]\n                end\n            else\n                add [i] to [unique type v]\n                add [i] to [blcoga v]\n                add (Type) to [bltyga v]\n            end\n        end\n    else\n        add [i] to [entity list type v]\n        add [i] to [bltyga v]\n        add [i] to [unique type v]\n        add [i] to [blcoga v]\n    end\nend\n\ndefine ExtSave (letter)\nset [#one v] to []\nrepeat until <(letter (Save Progress) of (Save Code)) = (letter)>\n    if <(Save Progress) > (length of (Save Code))> then\n        if <<(Progressive) = [x]> or <(AlternateLoading) = [x]>> then\n            set [#one v] to [x]\n        else\n            broadcast (InvalidSaveCode v)\n        end\n        stop [this script v]\n    end\n    set [#one v] to (join (#One) (letter (Save Progress) of (Save Code)))\n    change [save progress v] by (1)\nend\nchange [save progress v] by (1)\n\ndefine CreateWorldMapSave\nset [worldmapsavecode v] to []\n+W [\[b\]World Title: ]\n+W (WorldName)\n+W [\[code\]]\n+W [`]\n+W (WorldName)\n+W [`]\nset [save progress v] to [0]\nset [#sixteen v] to [0]\nrepeat (length of [map type v])\n    change [save progress v] by (1)\n    +W (item (Save Progress) of [map type v])\n    +W [`]\n    +W (item (Save Progress) of [map type extras v])\n    if <(length of (item (Save Progress) of [map type extras v])) > [25]> then\n        change [#sixteen v] by (1)\n    end\n    +W [`]\nend\n+W [?]\n+W (WorldCreator)\n+W [`]\n+W (MapTheme)\n+W [`]\n+W (MapStartNo.)\n+W [`]\n+W [\[/code\]]\n+W [Description: ]\n+W (WorldDescription)\nif <(length of [level tags v]) > [0]> then\n    +W [   Tags: ]\n    +W (Level Tags)\nend\n+W (join [    \(] (join (#Sixteen) [ Levels\)]))\n\ndefine Ext (no.) CurArea\nset [#one v] to []\nset [#two v] to [0]\nrepeat ((no.) - (1))\n    repeat until <(letter (#Two) of (item (CurrentArea) of [areas v])) = [,]>\n        change [#two v] by (1)\n    end\n    change [#two v] by (1)\nend\nrepeat until <(letter (#Two) of (item (CurrentArea) of [areas v])) = [,]>\n    set [#one v] to (join (#One) (letter (#Two) of (item (CurrentArea) of [areas v])))\n    change [#two v] by (1)\nend\n\ndefine +W (join)\nset [worldmapsavecode v] to (join (WorldMapSaveCode) (join))\n\ndefine LoadSaveCode\nset [savemenuprogress v] to [0]\nset [progressive v] to [0]\ndelete all of [areas v]\ndelete all of [blco v]\ndelete all of [blty v]\ndelete all of [semi type v]\ndelete all of [track type v]\ndelete all of [doorx v]\ndelete all of [doory v]\ndelete all of [doorextra v]\ndelete all of [doortype v]\nset [save progress v] to [1]\nExtSave [¬]\nExtSave [¬]\nset [levelname v] to (#One)\nrepeat until <(letter (Save Progress) of (Save Code)) = [¬]>\n    if <(Save Progress) > (length of (Save Code))> then\n        stop [this script v]\n    end\n    if <(letter (Save Progress) of (Save Code)) = [+]> then\n        ExtSave [,]\n        repeat (#One)\n            add (#Two) to [blty v]\n            add (#Three) to [blco v]\n        end\n    else\n        ExtSave [,]\n        add (#One) to [blty v]\n        set [#two v] to (#One)\n        ExtSave [,]\n        add (#One) to [blco v]\n        set [#three v] to (#One)\n    end\nend\nchange [save progress v] by (1)\nrepeat until <(letter (Save Progress) of (Save Code)) = [¬]>\n    ExtSave [,]\n    if <(#One) = [+]> then\n        ExtSave [,]\n        repeat (#One)\n            add (#Two) to [semi type v]\n        end\n    else\n        add (#One) to [semi type v]\n        set [#two v] to (#One)\n    end\nend\nchange [save progress v] by (1)\nrepeat until <(letter (Save Progress) of (Save Code)) = [¬]>\n    ExtSave [,]\n    if <(#One) = [+]> then\n        ExtSave [,]\n        if <(#One) > ((length of [blty v]) - (4))> then\n            set [showtracks v] to [x]\n        end\n        repeat (#One)\n            add (#Two) to [track type v]\n        end\n    else\n        add (#One) to [track type v]\n        set [#two v] to (#One)\n    end\nend\nchange [save progress v] by (1)\nrepeat until <(letter (Save Progress) of (Save Code)) = [¬]>\n    ExtSave [,]\n    add (#One) to [doorx v]\n    ExtSave [,]\n    add (#One) to [doory v]\n    ExtSave [,]\n    add (#One) to [doortype v]\n    ExtSave [,]\n    add (#One) to [doorextra v]\nend\nchange [save progress v] by (1)\nrepeat until <(letter (Save Progress) of (Save Code)) = [¬]>\n    ExtSave [:]\n    add (#One) to [areas v]\nend\nchange [save progress v] by (1)\nExtSave [,]\nset [worldheight v] to (#One)\nExtSave [,]\nset [worldwidth v] to (#One)\nExtSave [,]\nset [timeleftfull v] to (#One)\nExtSave [,]\nif <(ShowTracks) = [x]> then\n    set [showtracks v] to [0]\nelse\n    set [showtracks v] to (#One)\nend\nExtSave [,]\nset [goalx v] to (#One)\nExtSave [,]\nset [goaly v] to (#One)\nExtSave [,]\nset [goalarea v] to (#One)\nExtSave [,]\nset [ogspawnx v] to (#One)\nExtSave [,]\nset [ogspawny v] to (#One)\nExtSave [,]\nset [unloadtracks v] to (#One)\nExtSave [,]\nset [levelcreator v] to (#One)\nExtSave [,]\nset [goal2x v] to (#One)\nExtSave [,]\nset [goal2y v] to (#One)\nExtSave [,]\nset [goal2area v] to (#One)\nset [progressive v] to [x]\nExtSave [,]\nset [progressive v] to (#One)\nif <(Progressive) = [x]> then\n    set [progressive v] to [1]\nend\nset [alternateloading v] to [x]\nExtSave [,]\nset [alternateloading v] to (#One)\nif <(AlternateLoading) = [x]> then\n    set [alternateloading v] to [0]\nend\n\ndefine LoadWorldMapSave\ndelete all of [map completedlevels v]\ndelete all of [map type v]\ndelete all of [map type extras v]\nset [save progress v] to [1]\nExtWor [`]\nExtWor [`]\nset [worldname v] to (#One)\nrepeat until <(letter (Save Progress) of (WorldMapSaveCode)) = [?]>\n    if <(Save Progress) > (length of (WorldMapSaveCode))> then\n        stop [this script v]\n    end\n    ExtWor [`]\n    add (#One) to [map type v]\n    ExtWor [`]\n    add (#One) to [map type extras v]\nend\nchange [save progress v] by (1)\nExtWor [`]\nset [worldcreator v] to (#One)\nExtWor [`]\nset [maptheme v] to (#One)\nExtWor [`]\nset [mapstartno. v] to (#One)\n\ndefine DoorChange\nset [#three v] to [0]\nrepeat (length of [doortype v])\n    change [#three v] by (1)\n    if <(item (#Three) of [doortype v]) = [aj2]> then\n        replace item (#Three) of [doortype v] with [aj]\n    end\n    if <(item (#Three) of [doortype v]) = [dv4]> then\n        replace item (#Three) of [doortype v] with [dv]\n    end\n    if <(item (#Three) of [doortype v]) = [ew4]> then\n        replace item (#Three) of [doortype v] with [ew]\n    end\nend\n\nwhen flag clicked\nset volume to (33) %\nbroadcast (FlagClicked v)\n\nwhen I receive [flagclicked v]\nset [placingblocktype v] to [1]\nbroadcast (GameLoop v)\n\nwhen I receive [gameloop v]\nset [gametimer v] to [0]\nwait (0) seconds\nforever\n    set [moveup v] to <<key (w v) pressed?> or <key (up arrow v) pressed?>>\n    set [movedown v] to <<key (s v) pressed?> or <key (down arrow v) pressed?>>\n    set [moveright v] to <<key (d v) pressed?> or <key (right arrow v) pressed?>>\n    set [moveleft v] to <<key (a v) pressed?> or <key (left arrow v) pressed?>>\n    set [moverun v] to <key (space v) pressed?>\n    set [moveuseability v] to <key (space v) pressed?>\n    change [gametimer v] by (0.01)\n    set [22mod2+1 v] to (([floor v] of (((GameTimer) * (22)) mod (2)) ) + (1))\n    set [22mod3+1 v] to (([floor v] of (((GameTimer) * (22)) mod (3)) ) + (1))\n    set [22mod4+1 v] to (([floor v] of (((GameTimer) * (22)) mod (4)) ) + (1))\n    if <not <mouse down?>> then\n        set [clickpause v] to [0]\n    end\n    if <(Menu) = [Display]> then\n        broadcast (DisplayUpdate v)\n    else\n        erase all\n        if <(Menu) = [Map]> then\n            broadcast (MapUpdate v)\n        else\n            broadcast (BackgroundUpdate v)\n        end\n    end\n    set [fps v] to (round ((1) / (timer)))\n    reset timer\n    wait (0) seconds\nend\n\nwhen [e v] key pressed\nset [textinputmenu v] to [0]\nif <(Menu) = [Display]> then\n    stop [this script v]\nend\nif <(Menu) = [Map]> then\n    set [iamtheeditor v] to [1]\n    if <(timer) < [0.5]> then\n        if <(MapEdit/PlayMode) = [0]> then\n            set [mapedit/playmode v] to [1]\n            stop all sounds\n        else\n            set [mapedit/playmode v] to [0]\n        end\n    end\n    if <(MapEdit/PlayMode) = [0]> then\n        broadcast (PlayWorldMusic v)\n    end\nelse\n    set [transitiontype v] to [0]\n    broadcast (CloseAllMenus v)\n    delete all of [collectedkeycoins v]\n    if <<<(TextInputMenu) = [0]> and <(PleaseWait) = [0]>> and <(length of [placex v]) = [0]>> then\n        if <(PlayingAMap) = [0]> then\n            show list [save code v]\n            if <not <<(Menu) = [Menu]> and <(timer) > [0.5]>>> then\n                set [menu v] to [Game]\n            end\n            if <<(timer) < [0.5]> or <<(AllowMovement) = [0]> or <(HitGoal) = [1]>>> then\n                DoorChange\n                set [spawnx v] to (OGSpawnX)\n                set [spawny v] to (OGSpawnY)\n                if <(Edit/PlayMode) = [0]> then\n                    set [conversionprogress v] to [0]\n                    set [allowmovement v] to [0]\n                    stop all sounds\n                    ConvertToPlay\n                    wait (0) seconds\n                    stop all sounds\n                    set [conversionprogress v] to [0]\n                    set [edit/playmode v] to [1]\n                    broadcast (ResumeGame v)\n                else\n                    set [menu v] to [Game]\n                    stop all sounds\n                    broadcast (PlayMusic v)\n                    set [edit/playmode v] to [0]\n                    set [savemenuprogress v] to [0]\n                end\n                broadcast (UpdateAreaSettings v)\n            else\n                if <not <(timer) < [0.5]>> then\n                    stop all sounds\n                    broadcast (PlayMusic v)\n                end\n            end\n        end\n    end\nend\nif <(length of [turbowarp link v]) = [2]> then\n    broadcast (FlagClicked v)\nelse\n    broadcast (GameLoop v)\nend\n\nwhen [q v] key pressed\nif <(PlaceTool) = [1]> then\n    set [placetool v] to [2]\nelse\n    set [placetool v] to [1]\nend\n\nwhen [r v] key pressed\nif <<<<<(PlacingBlockType) = [u]> or <(PlacingBlockType) = [eu]>> or <(PlacingBlockType) = [df]>> or <<(PlacingBlockType) = [bo]> or <(PlacingBlockType) = [bw]>>> or <<<(PlacingBlockType) = [bb]> or <(PlacingBlockType) = [bc]>> or <<<(PlacingBlockType) = [en]> or <(PlacingBlockType) = [eo]>> or <<(PlacingBlockType) = [bg]> or <(PlacingBlockType) = [cb]>>>>> then\n    if <(PlacementRotation) = ["]> then\n        set [placementrotation v] to [$]\n    else\n        if <(PlacementRotation) = [$]> then\n            set [placementrotation v] to [£]\n        else\n            if <(PlacementRotation) = [£]> then\n                set [placementrotation v] to [%]\n            else\n                set [placementrotation v] to ["]\n            end\n        end\n    end\nelse\n    if <<(PlacingBlockType) = [ac]> or <<(PlacingBlockType) = [dk]> or <(PlacingBlockType) = [ea]>>> then\n        if <(PlacementRotation) = ["]> then\n            set [placementrotation v] to [£]\n        else\n            if <(PlacementRotation) = [£]> then\n                set [placementrotation v] to [^]\n            else\n                if <(PlacementRotation) = [^]> then\n                    set [placementrotation v] to [&]\n                else\n                    set [placementrotation v] to ["]\n                end\n            end\n        end\n    else\n        if <(PlacementRotation) = ["]> then\n            set [placementrotation v] to [£]\n        else\n            set [placementrotation v] to ["]\n        end\n    end\nend\n\nwhen I receive [updateareasettings v]\nExt [1] CurArea\nset [currentbackground v] to (#One)\nExt [2] CurArea\nset [areastartheight v] to (#One)\nExt [3] CurArea\nset [areaheight v] to (#One)\nExt [4] CurArea\nset [currentmusic v] to (#One)\nExt [5] CurArea\nset [currentwaterlevel v] to (#One)\nExt [6] CurArea\nset [currentlavalevel v] to (#One)\nExt [7] CurArea\nset [camerax v] to (#One)\nExt [8] CurArea\nset [cameray v] to (#One)\nset [newscrollscan v] to [1]\nbroadcast (UpdateScrollStop v)\n\nwhen I receive [useddoor v]\nset [throwing v] to [0]\nset [kicking v] to [0]\nif <not <(Powerup) = [C]>> then\n    set [powerupvariable one v] to [0]\nend\nset [powerupvariable two v] to [0]\nset [powerupvariable three v] to [0]\nset [sliding v] to [0]\nset [crouching v] to [0]\nset [invincible v] to [0]\nset [usingdoor v] to [1]\nset [playertimer v] to [0]\nset [player springx v] to [0]\nset [player movement v] to [0]\nset [player y movement v] to [0]\nset [playerxvelocity v] to [0]\nset [playeryvelocity v] to [-0.69]\nset [transitionprogress v] to [0]\nset [transitiontype v] to [Transport]\nset [previousmusic v] to (CurrentMusic)\nif <<(item (UsingDoorNo.) of [doortype v]) = [bb]> or <(item (UsingDoorNo.) of [doortype v]) = [bc]>> then\n    start sound [PowerDown v]\n    set [usingpipe v] to [2]\n    wait (0) seconds\n    repeat (26)\n        if <(item (UsingDoorNo.) of [doorextra v]) = [90]> then\n            change [playerx v] by (1)\n        else\n            if <(item (UsingDoorNo.) of [doorextra v]) = [-90]> then\n                change [playerx v] by (-1)\n            else\n                if <(item (UsingDoorNo.) of [doorextra v]) = [0]> then\n                    change [playery v] by (1)\n                else\n                    change [playery v] by (-1)\n                end\n            end\n        end\n    end\nelse\n    start sound [Door v]\n    repeat until <(PlayerTimer) > [0.1]>\n        if <(Edit/PlayMode) = [0]> then\n            set [usingdoor v] to [0]\n            stop [this script v]\n        end\n        set [allowmovement v] to [0]\n        set [loadentitiesdelay v] to [30]\n    end\nend\nrepeat until <(PlayerTimer) > [0.13]>\n    if <(Edit/PlayMode) = [0]> then\n        set [usingdoor v] to [0]\n        stop [this script v]\n    end\nend\nif <(item (UsingDoorNo.) of [doortype v]) = [dv]> then\n    replace item (UsingDoorNo.) of [doortype v] with [dv4]\nend\nif <(item (UsingDoorNo.) of [doortype v]) = [ew]> then\n    replace item (UsingDoorNo.) of [doortype v] with [ew4]\nend\nset [playerx v] to ((item (ExitingDoorNo.) of [doorx v]) * (32))\nset [playery v] to (((item (ExitingDoorNo.) of [doory v]) * (32)) - (4))\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nFindAreaForY\nbroadcast (UpdateAreaSettings v)\nset [loadentitiesdelay v] to [8]\nwait (0) seconds\nif <not <<(CurrentMusic) = (PreviousMusic)> or <<<(StarTimer) > [0]> or <(PTimer) > [0]>> or <(Menu) = [Menu]>>>> then\n    stop all sounds\n    broadcast (PlayMusic v)\nend\nset [playerx v] to ((item (ExitingDoorNo.) of [doorx v]) * (32))\nset [playery v] to (((item (ExitingDoorNo.) of [doory v]) * (32)) - (4))\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nset [loadentitiesdelay v] to [0]\nif <<(item (ExitingDoorNo.) of [doortype v]) = [bb]> or <(item (ExitingDoorNo.) of [doortype v]) = [bc]>> then\n    if <(item (ExitingDoorNo.) of [doorextra v]) = [-90]> then\n        change [playerx v] by (-35.2)\n    else\n        if <(item (ExitingDoorNo.) of [doorextra v]) = [90]> then\n            change [playerx v] by (35.2)\n        else\n            if <(item (ExitingDoorNo.) of [doorextra v]) = [180]> then\n                change [playery v] by (-28)\n                change [playerx v] by (-16)\n            else\n                change [playery v] by (28)\n                if <not <<(Powerup) = [N]> or <(Powerup) = [M]>>> then\n                    change [playery v] by (-20)\n                end\n                change [playerx v] by (16)\n            end\n        end\n    end\n    set [mapx v] to (PlayerX)\n    set [usingpipe v] to [2]\n    wait until <(PlayerTimer) > [0.2]>\n    repeat (28)\n        set [allowmovement v] to [0]\n        if <(item (ExitingDoorNo.) of [doorextra v]) = [-90]> then\n            change [playerx v] by (1)\n        else\n            if <(item (ExitingDoorNo.) of [doorextra v]) = [90]> then\n                change [playerx v] by (-1)\n            else\n                if <(item (ExitingDoorNo.) of [doorextra v]) = [180]> then\n                    change [playery v] by (1)\n                else\n                    change [playery v] by (-1)\n                end\n            end\n        end\n    end\n    wait until <(PlayerTimer) > [0.26]>\nelse\n    set [usingpipe v] to [0]\n    repeat until <(PlayerTimer) > [0.26]>\n        if <(Edit/PlayMode) = [0]> then\n            set [usingdoor v] to [0]\n            stop [this script v]\n        end\n        set [allowmovement v] to [0]\n    end\nend\nif <(Edit/PlayMode) = [0]> then\n    set [usingdoor v] to [0]\n    stop [this script v]\nend\nset [allowmovement v] to [0]\nset [player movement v] to [0]\nset [player y movement v] to [0]\nset [xvelocity v] to [0]\nset [yvelocity v] to [-0.69]\nif <<(item (ExitingDoorNo.) of [doortype v]) = [dv]> or <(item (ExitingDoorNo.) of [doortype v]) = [ew]>> then\n    add [Explode] to [createparticletype v]\n    add (PlayerX) to [createparticlex v]\n    add ((PlayerY) + (16)) to [createparticley v]\n    replace item (ExitingDoorNo.) of [doortype v] with (join (item (ExitingDoorNo.) of [doortype v]) [4])\nend\nset [allowmovement v] to [1]\nset [usingdoor v] to [0]\nset [usingpipe v] to [0]\nif <<not <<(Powerup) = [N]> or <(Powerup) = [M]>>> and <(Holding) = [0]>> then\n    set [crouching v] to [1]\nend\n\nwhen I receive [death v]\nif <(HitGoal) = [1]> then\n    stop [this script v]\nend\nstop all sounds\nbroadcast (PlayMusic v)\nset [powerup v] to [N]\nset [invincible v] to [0]\nset [playertimer v] to [0]\nset [allowmovement v] to [0]\nset [dead v] to [1]\nset [playeryvelocity v] to [0]\nrepeat until <(PlayerTimer) > [0.1]>\n    if <<(Edit/PlayMode) = [0]> or <(Dead) = [0]>> then\n        stop [this script v]\n    end\n    set [allowmovement v] to [0]\n    set [loadentitiesdelay v] to [30]\nend\nset [playeryvelocity v] to [9]\nrepeat until <(PlayerTimer) > [0.4]>\n    if <<(Edit/PlayMode) = [0]> or <(Dead) = [0]>> then\n        stop [this script v]\n    end\n    set [allowmovement v] to [0]\n    set [loadentitiesdelay v] to [30]\n    change [playery v] by (PlayerYVelocity)\n    change [playeryvelocity v] by (-0.3)\n    if <(PlayerYVelocity) < [-8]> then\n        set [playeryvelocity v] to [-8]\n    end\nend\nif <(PlayingAMap) = [1]> then\n    change [lives v] by (-1)\n    if <(Lives) < [1]> then\n        set [edit/playmode v] to [1]\n        wait (1) seconds\n        set [menu v] to [Display]\n        set [lives v] to [5]\n        set [transitionprogress v] to [1]\n        set [transitiontype v] to [GameOver]\n        start sound [87 Game Over v]\n        stop [this script v]\n    end\nend\nbroadcast (StartLevel v)\nbroadcast (ResumeWithTransition v)\n\nwhen I receive [powerdown v]\nif <<(HitGoal) = [1]> and <not <<(Powerup) = [C]> and <(PlayerUnderwater) = [1]>>>> then\n    stop [this script v]\nend\nif <<(Invincible) = [0]> or <<(Powerup) = [C]> and <(PlayerUnderwater) = [1]>>> then\n    set [throwing v] to [0]\n    set [powerupvariable one v] to [0]\n    set [powerupvariable two v] to [0]\n    set [powerupvariable three v] to [0]\n    if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n        broadcast (Death v)\n    else\n        start sound [PowerDown v]\n        set [invincible v] to [1.5]\n        if <(Powerup) = [B]> then\n            set [powerup v] to [N]\n        else\n            set [powerup v] to [B]\n        end\n    end\nend\n\nwhen I receive [startlevel v]\nset [textinputmenu v] to [0]\nset [gametimer v] to [0]\nset [playerx v] to ((SpawnX) * (32))\nset [playery v] to (((SpawnY) * (32)) - (4))\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nset [playerdirection v] to [90]\nset [loadentitiesdelay v] to [8]\nFindAreaForY\nset [timeleft v] to (TimeLeftFull)\nbroadcast (ClearPlayerVariables v)\nbroadcast (UpdateAreaSettings v)\nwait (0) seconds\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\n\nwhen I receive [fullrestartlevel v]\ndelete all of [collectedkeycoins v]\nset [spawnx v] to (OGSpawnX)\nset [spawny v] to (OGSpawnY)\nbroadcast (StartLevel v)\n\nwhen I receive [resumegame v]\nstop all sounds\nif <(SaveMenuProgress) = [0.5]> then\n    set [savemenuprogress v] to [0]\nend\nset [loadentitiesdelay v] to [30]\nset [conversionprogress v] to [0]\nset [allowmovement v] to [0]\nConvertToPlay\nwait until <not <(ConversionProgress) < (length of [blty v])>>\nbroadcast (GameLoop v)\nbroadcast (UpdateAreaSettings v)\nset [edit/playmode v] to [1]\nset [invincible v] to [1]\nstop all sounds\nbroadcast (PlayMusic v)\nif <(ConversionProgress) < [8000]> then\n    wait (0.2) seconds\nelse\n    wait (0.1) seconds\nend\nset [allowmovement v] to [1]\n\nwhen I receive [clearplayervariables v]\nset [ptimer v] to [0]\nset [playerxvelocity v] to [0]\nset [playeryvelocity v] to [-0.79]\nset [sliding v] to [0]\nset [crouching v] to [0]\nset [player springx v] to [0]\nset [player movement v] to [0]\nset [player y movement v] to [0]\nset [usingdoor v] to [0]\nset [keys v] to [0]\nset [invincible v] to [0]\nset [dead v] to [0]\nset [skidding v] to [0]\nset [playerunderwater v] to [0]\nset [holding v] to [0]\nset [throwing v] to [0]\nset [kicking v] to [0]\nset [powerupvariable one v] to [0]\nset [powerupvariable two v] to [0]\nset [powerupvariable three v] to [0]\nset [usingpipe v] to [0]\nset [hitgoal v] to [0]\nset [camerashake v] to [0]\nset [powerup v] to [N]\nset [startimer v] to [0]\nset [hurriedup v] to [0]\nset [goalhitx v] to [0]\nset [on/off v] to [0]\nset [groundshaking v] to [0]\nif <(PlayingAMap) = [0]> then\n    set [coins v] to [0]\nend\n\nwhen I receive [resumewithtransition v]\nstop all sounds\nset [loadentitiesdelay v] to [30]\nset [transitionprogress v] to [1]\nset [transitiontype v] to [FadeIn]\nset [conversionprogress v] to [0]\nset [allowmovement v] to [0]\nbroadcast (CloseAllMenus v)\nwait (0) seconds\nConvertToPlay\nrepeat until <not <(ConversionProgress) < (length of [blty v])>>\n    set [transitionprogress v] to [1]\nend\nbroadcast (GameLoop v)\nbroadcast (UpdateAreaSettings v)\nset [edit/playmode v] to [1]\nset [invincible v] to [1]\nstop all sounds\nbroadcast (PlayMusic v)\nwait (1.2) seconds\nset [allowmovement v] to [1]\n\nwhen I receive [usedlockeddoor v]\nwait (0) seconds\nadd [af] to [createparticletype v]\nadd (PlayerX) to [createparticlex v]\nadd (PlayerY) to [createparticley v]\nbroadcast (UsedDoor v)\n\nwhen I receive [pause v]\nDoorChange\nset [edit/playmode v] to [0]\n\nwhen I receive [tpspawn v]\nset [playerdirection v] to [90]\nset [gametimer v] to [0]\nset [playerx v] to ((OGSpawnX) * (32))\nset [playery v] to (((OGSpawnY) * (32)) - (4))\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nFindAreaForY\nbroadcast (UpdateAreaSettings v)\nset [loadentitiesdelay v] to [8]\nwait (0) seconds\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nset [playerx v] to ((OGSpawnX) * (32))\nset [playery v] to (((OGSpawnY) * (32)) - (4))\n\nwhen I receive [tpgoal v]\nset [playerdirection v] to [90]\nset [gametimer v] to [0]\nset [playerx v] to ((GoalX) * (32))\nset [playery v] to (((GoalY) * (32)) - (4))\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nFindAreaForY\nbroadcast (UpdateAreaSettings v)\nset [loadentitiesdelay v] to [8]\nwait (0) seconds\nset [mapx v] to (PlayerX)\nset [mapy v] to (PlayerY)\nset [playerx v] to ((GoalX) * (32))\nset [playery v] to (((GoalY) * (32)) - (4))\n\nwhen I receive [hitgoal v]\nset [hitgoal v] to [1]\nset [gametimer v] to [0]\nset [invincible v] to [0.09]\nstop all sounds\nbroadcast (PlayMusic v)\nrepeat until <((GameTimer) - (<(GoalHitX) = [x]> / (1.8))) > [1]>\n    set [invincible v] to [0.09]\n    if <(Edit/PlayMode) = [0]> then\n        stop [this script v]\n    end\nend\nset [gametimer v] to [0]\nset [edit/playmode v] to [0]\nif <(PlayingAMap) = [1]> then\n    set [edit/playmode v] to [1]\n    set [transitionprogress v] to [1]\n    set [transitiontype v] to [FadeIn]\n    set [menu v] to [Map]\n    broadcast (PlayWorldMusic v)\nelse\n    if <(IAmTheEditor) = [1]> then\n        DoorChange\n        set [transitionprogress v] to [1]\n        set [transitiontype v] to [FadeIn]\n        wait (0) seconds\n        broadcast (TpSpawn v)\n        wait (0.5) seconds\n        if <(SaveMenuProgress) = [0.5]> then\n            set [savemenuprogress v] to [1]\n            set [savemenu v] to [0.01]\n        end\n    else\n        set [edit/playmode v] to [1]\n        broadcast (FlagClicked v)\n    end\nend\n\ndefine CreateSaveCode\nset [conversionprogress2 v] to [x]\nset [save code v] to []\n+S [\[b\]Title: ]\n+S (LevelName)\n+S [\[code\]]\n+S [¬]\n+S (LevelName)\n+S [¬]\nset [save progress v] to [0]\nset [conversionprogress2 v] to [0]\nset [#one v] to [0]\nrepeat until <(Save Progress) > ((length of [blty v]) - (1))>\n    change [save progress v] by (1)\n    set [#cus1 v] to (item (Save Progress) of [blty v])\n    if <<(join (#Cus1) (item (Save Progress) of [blco v])) = (join (item ((Save Progress) - (1)) of [blty v]) (item ((Save Progress) - (1)) of [blco v]))> and <<(Save Progress) > [1]> and <not <(Save Progress) > ((length of [blty v]) - (2))>>>> then\n        change [#one v] by (1)\n    else\n        if <(#One) > [0]> then\n            set [conversionprogress2 v] to [x]\n            +S [+]\n            set [conversionprogress2 v] to [0]\n            +S (#One)\n            set [#one v] to [0]\n        end\n        +S (#Cus1)\n        +S (item (Save Progress) of [blco v])\n    end\nend\nset [conversionprogress2 v] to [x]\n+S [¬]\nset [conversionprogress2 v] to [0]\nset [save progress v] to [0]\nset [#one v] to [0]\nrepeat until <(Save Progress) > ((length of [semi type v]) - (1))>\n    change [save progress v] by (1)\n    if <<(item (Save Progress) of [semi type v]) = (item ((Save Progress) - (1)) of [semi type v])> and <<(Save Progress) > [1]> and <not <(Save Progress) > ((length of [semi type v]) - (2))>>>> then\n        change [#one v] by (1)\n    else\n        if <(#One) > [0]> then\n            +S [+]\n            +S (#One)\n            set [#one v] to [0]\n        end\n        +S (item (Save Progress) of [semi type v])\n    end\nend\nset [conversionprogress2 v] to [x]\n+S [¬]\nset [conversionprogress2 v] to [0]\nset [save progress v] to [0]\nset [#one v] to [0]\nrepeat until <(Save Progress) > ((length of [track type v]) - (1))>\n    change [save progress v] by (1)\n    if <<(item (Save Progress) of [track type v]) = (item ((Save Progress) - (1)) of [track type v])> and <<(Save Progress) > [1]> and <not <(Save Progress) > ((length of [track type v]) - (2))>>>> then\n        change [#one v] by (1)\n    else\n        if <(#One) > [0]> then\n            +S [+]\n            +S (#One)\n            set [#one v] to [0]\n        end\n        +S (item (Save Progress) of [track type v])\n    end\nend\nset [conversionprogress2 v] to [x]\n+S [¬]\nset [conversionprogress2 v] to [0]\nset [save progress v] to [0]\nrepeat (length of [doorx v])\n    change [save progress v] by (1)\n    +S (item (Save Progress) of [doorx v])\n    +S (item (Save Progress) of [doory v])\n    +S (item (Save Progress) of [doortype v])\n    +S (item (Save Progress) of [doorextra v])\nend\nset [conversionprogress2 v] to [x]\n+S [¬]\nset [#eight v] to [0]\nrepeat (length of [areas v])\n    change [#eight v] by (1)\n    +S (item (#Eight) of [areas v])\n    +S [:]\nend\n+S [¬]\nset [conversionprogress2 v] to [0]\n+S (WorldHeight)\n+S (WorldWidth)\n+S (TimeLeftFull)\n+S (ShowTracks)\n+S (GoalX)\n+S (GoalY)\n+S (GoalArea)\n+S (OGSpawnX)\n+S (OGSpawnY)\n+S (UnloadTracks)\n+S (LevelCreator)\n+S (Goal2X)\n+S (Goal2Y)\n+S (Goal2Area)\n+S (Progressive)\n+S (AlternateLoading)\nset [conversionprogress2 v] to [x]\n+S [\[/code\]]\n+S [Description: ]\n+S (LevelDescription)\nif <(length of [level tags v]) > [0]> then\n    +S [   Tags: ]\n    +S (Level Tags)\nend\n\nwhen I receive [createsavecodeonly v]\nCreateSaveCode\nif <not <(SaveMenu) = [0]>> then\n    delete all of [save code v]\n    add (Save Code) to [save code v]\nend\n\nwhen I receive [createsaverestorepoint v]\nCreateSaveCode\n\nwhen I receive [loadrestorepoint v]\nset [createrestorepointtimer v] to [15]\nset [optionsmenu v] to [0]\nset [transitiontype v] to [FadeIn]\nset [transitionprogress v] to [1]\nLoadSaveCode\nif <(CurrentArea) > (length of [areas v])> then\n    set [currentarea v] to [1]\n    set [mapy v] to [-2000]\nend\nbroadcast (UpdateAreaSettings v)\nset [transitionprogress v] to [1]\n\nwhen I receive [createmapsavecode v]\nCreateWorldMapSave\nif <not <(MapSaveMenu) = [0]>> then\n    delete all of [save code v]\n    add (WorldMapSaveCode) to [save code v]\nend\n\nwhen I receive [loadmapsavecode v]\nset [menu v] to [Display]\nset [mapedit/playmode v] to [0]\nstop all sounds\nwait (0) seconds\nLoadWorldMapSave\nset [transitionprogress v] to [0]\nset [transitiontype v] to [DisplayName2]\nwait (3) seconds\nset [transitionprogress v] to [135]\nset [transitiontype v] to [DisplayName2]\nset [edit/playmode v] to [1]\nset [menu v] to [Map]\nbroadcast (PlayMapFromStart v)\n\nwhen I receive [flagclicked v]\nshow list [save code v]\nset [edit/playmode v] to [1]\nset [playingamap v] to [0]\nset [transitionprogress v] to [1]\nset [transitiontype v] to [FadeIn]\nset [conversionprogress v] to [0]\nchange [flagclicked v] by (1)\nset [menu v] to [Menu]\nset [menusubtype v] to [Main]\nwait (0) seconds\nset [#eight v] to (pick random (1) to (4))\nif <(#Eight) = [1]> then\n    set [save code v] to [\[b\]Title: Morton Koopa's Castle of Lifts and Grinders\[code\]¬Morton Koopa's Castle of Lifts and Grinders¬31a,i,+71,i,i,+26,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+61,31a,i,+3,i,i,+7,31a,i,+12,i,i,+61,31a,i,+3,i,i,+7,31a,i,+12,i,i,+61,31a,i,+3,i,i,+4,c,i,+1,i,i,31a,i,+12,i,i,+61,31a,i,+3,i,i,+2,bp,i,i,i,c,i,+1,i,i,31a,i,+12,i,i,+61,31a,i,+3,i,i,+4,c,i,+1,i,i,31a,i,+12,i,i,+61,31a,i,+3,i,i,+7,31a,i,+12,i,i,+61,31a,i,+3,i,i,+7,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+61,31a,i,+4,i,i,+2,d,i,i,i,+2,31a,i,+12,i,i,+61,31a,i,+4,i,i,+2,n,c,i,i,+2,31a,i,+12,i,i,+61,31a,i,+4,i,i,+2,d,i,i,i,+2,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+61,31a,i,+5,i,i,+5,31a,i,+12,i,i,+61,31a,i,+5,ay,",i,i,+4,31a,i,+12,i,i,+61,31a,i,+5,i,i,+5,31a,i,+12,i,i,+73,31a,i,+12,i,i,+74,31a,i,+11,i,i,+61,31a,i,+6,i,i,+6,31a,i,+10,i,i,+61,31a,i,+6,i,i,+6,31a,i,+10,i,i,+75,31a,i,+10,i,i,+75,31a,i,+10,i,i,+67,31a,i,+2,i,i,+4,31a,i,+10,i,i,+67,31a,i,+2,ds,!",i,i,+3,31a,i,+10,i,i,+67,31a,i,+2,i,i,+4,31a,i,+10,i,i,+75,31a,i,+10,i,i,+75,31a,i,+10,i,i,+61,31a,i,+8,i,i,+4,31a,i,+10,i,i,+61,31a,i,+8,i,i,+4,31a,i,+10,i,i,+61,31a,i,+8,i,i,c,i,i,i,d,i,i,i,31a,i,+10,i,i,+61,31a,i,+8,i,i,c,i,i,i,n,aq,i,i,31a,i,+10,i,i,+61,31a,i,+8,i,i,c,i,i,i,d,i,i,i,31a,i,+10,i,i,+61,31a,i,+8,ay,",i,i,+3,31a,i,+10,i,i,+61,31a,i,+8,i,i,+4,31a,i,+10,i,i,+75,31a,i,+10,i,i,+69,ds,!,i,i,+4,31a,i,+10,i,i,+75,31a,i,+10,i,i,+61,31a,i,+2,i,i,+3,31a,i,i,i,+4,31a,i,+11,i,i,+61,31a,i,+2,i,i,+2,31a,i,+1,i,i,+3,31a,i,+12,i,i,+61,31a,i,+2,i,i,+2,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+61,31a,i,+2,i,i,dq,i,i,i,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+61,31a,i,+2,i,i,+2,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+61,31a,i,+2,i,i,+2,31a,i,+1,i,i,+3,31a,i,+12,i,i,+61,31a,i,+2,i,i,+3,31a,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,s,!,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+69,31a,i,i,i,+2,31a,i,+12,i,i,+68,31a,i,+1,i,i,+3,31a,i,+11,i,i,+68,31a,i,+1,i,i,+1,n,bv,i,i,31a,i,+11,i,i,+68,31a,i,+1,i,i,+3,31a,i,+11,i,i,+69,31a,i,i,i,+2,31a,i,+12,i,i,+74,31a,i,+11,i,i,+75,31a,i,+10,i,i,+66,ds,!",i,i,+3,s,!£,i,i,+2,31a,i,+10,i,i,+75,31a,i,+10,i,i,+74,31a,i,+11,i,i,+67,31a,i,i,i,+4,31a,i,+12,i,i,+66,31a,i,+1,i,i,c,i,i,i,d,i,i,i,31a,i,+12,i,i,+66,31a,i,+1,i,i,c,i,i,i,n,aq,i,i,31a,i,+12,i,i,+66,31a,i,+1,i,i,c,i,i,i,d,i,i,i,31a,i,+12,i,i,+67,31a,i,i,i,+4,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,s,!,i,i,+4,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,31a,i,+1,i,i,+2,31a,i,+13,i,i,+67,31a,i,+1,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+1,c,i,+1,i,i,ds,!",i,i,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+1,c,i,+1,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+1,ds,!,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+1,c,i,+1,i,i,ds,!",i,i,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+65,31a,i,+3,i,i,+2,31a,i,+13,i,i,+67,31a,i,+1,i,i,+2,31a,i,+13,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+66,31a,i,i,i,+5,31a,i,+12,i,i,+65,31a,i,+1,i,i,+5,31a,i,+12,i,i,+65,31a,i,+1,i,i,+4,c,i,i,i,31a,i,+11,i,i,+65,31a,i,+1,i,i,+1,bp,i,i,i,+1,n,aq,i,i,31a,i,+11,i,i,+65,31a,i,+1,ay,",i,i,+3,c,i,i,i,31a,i,+11,i,i,+65,31a,i,+1,i,i,+5,31a,i,+12,i,i,+66,31a,i,i,i,+5,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,c,i,i,i,+3,31a,i,+12,i,i,+66,s,!",c,i,+2,i,i,+2,31a,i,+12,i,i,+68,c,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,bp,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,c,i,i,i,+3,31a,i,+12,i,i,+67,c,i,+2,s,!£,i,i,+1,31a,i,+12,i,i,+68,c,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,i,i,+1,c,i,i,i,31a,i,+12,i,i,+66,31a,i,+2,i,i,+1,n,c,i,i,31a,i,+12,i,i,+66,31a,i,+2,ay,",i,i,c,i,i,i,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+67,31a,i,+1,ay,",i,i,+2,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+66,c,i,+1,bp,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+66,c,i,+1,bp,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,ay,",i,i,+2,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,bp,!",i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,31a,i,i,i,+3,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+67,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+67,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+67,31a,i,+1,i,i,+1,c,i,i,i,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+68,31a,i,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+68,bp,!,i,i,+3,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,c,i,i,i,+4,31a,i,+12,i,i,+67,c,i,i,i,+4,31a,i,+12,i,i,+67,c,i,i,i,+4,31a,i,+12,i,i,+71,ds,i,i,i,31a,i,i,i,+2,31a,i,+8,i,i,+73,31a,i,i,i,dp,i,i,i,31a,i,+8,i,i,+77,31a,i,+8,i,i,+77,31a,i,+8,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+73,31a,i,+12,i,i,+67,31a,i,+1,i,i,+3,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+65,31a,i,+3,i,i,+3,31a,i,+12,i,i,+65,31a,i,+3,i,i,+4,31a,i,+11,i,i,+65,31a,i,+3,ci,i,i,i,+1,n,aq,i,i,+1,31a,i,+10,i,i,+65,31a,i,+3,i,i,+2,d,i,i,i,+1,31a,i,+10,i,i,+65,31a,i,+3,i,i,+4,31a,i,+11,i,i,+65,31a,i,+3,ay,",i,i,+2,31a,i,+12,i,i,+66,31a,i,+2,i,i,+3,31a,i,+12,i,i,+47,31a,i,+11,i,i,+7,31a,i,+1,ay,",i,i,+2,31a,i,+12,i,i,+47,31a,i,+11,i,i,+13,31a,i,+12,i,i,+47,31a,i,+11,i,i,+13,31a,i,+12,i,i,+47,31a,i,+11,i,i,+13,31a,i,+12,i,i,+47,31a,i,+11,i,i,+4,ds,!£,i,i,+1,do,i,i,i,+1,bp,!",i,i,+1,31a,i,+12,i,i,+47,31a,i,+3,i,i,+5,31a,i,+1,i,i,+13,31a,i,+12,i,i,+47,31a,i,+2,ds,i,i,i,+5,ds,i,31a,i,i,i,+13,31a,i,+12,i,i,+47,31a,i,+3,i,i,c,i,i,i,+3,31a,i,+1,i,i,+13,31a,i,+12,i,i,+47,31a,i,+3,i,i,c,i,i,i,+4,31a,i,i,i,+6,31a,i,i,i,+5,31a,i,+12,i,i,+47,31a,i,+3,i,i,c,i,i,i,+2,c,i,i,i,31a,i,i,i,+5,31a,i,+1,i,i,+2,n,b,i,i,+1,31a,i,+12,i,i,+47,31a,i,+3,i,i,+4,c,i,i,i,31a,i,i,i,+4,31a,i,+2,i,i,+5,31a,i,+12,i,i,+47,31a,i,+3,i,i,+2,s,!",i,i,c,i,i,i,31a,i,i,i,+3,31a,i,+3,i,i,+5,31a,i,+12,i,i,+47,31a,i,+3,i,i,+4,c,i,i,i,31a,i,i,i,+2,31a,i,+4,i,i,+5,31a,i,+12,i,i,+47,31a,i,+3,i,i,c,i,i,i,+2,c,i,i,i,31a,i,i,i,+1,31a,i,+5,i,i,+3,ab,bv,i,i,31a,i,+12,i,i,+47,31a,i,+3,cl,"dg,c,i,i,i,+4,31a,i,i,i,+1,31a,i,+71,i,i,31a,i,+3,i,i,c,i,i,i,+3,31a,i,+1,i,i,+74,31a,i,+2,ds,i,i,i,+5,ds,i,31a,i,i,i,+74,31a,i,+3,i,i,+5,31a,i,+1,i,i,+74,31a,i,+11,i,i,+74,31a,i,+11,i,i,+74,31a,i,+11,i,i,+74,31a,i,+11,i,i,+74,31a,i,+11,i,i,+2696,i,i,i,i,¬i,+,351,24e,+,7,i,+,513,24e,+,7,i,+,689,24e,+,5,i,+,167,24e,+,5,i,+,596,24e,+,5,i,+,2,24e,+,4,i,+,159,24e,+,5,i,+,2,24e,+,4,i,+,255,24e,+,4,i,+,516,24e,+,4,i,+,336,24e,+,3,i,24e,+,4,i,+,76,42b,i,+,346,42b,i,+,85,24e,+,3,i,24e,+,3,i,+,509,24e,+,6,i,+,1,24e,+,3,i,+,160,24e,+,6,i,+,1,24e,+,3,i,+,682,24e,+,4,i,+,1,24e,+,4,i,+,161,24e,+,4,i,+,1,24e,+,4,i,+,683,24e,+,3,i,+,3,24e,+,2,i,+,1040,42b,i,+,512,24e,+,3,i,+,3,24e,+,2,i,+,510,24e,+,3,i,+,1,24e,+,5,i,+,335,24e,+,3,i,+,1,24e,+,5,i,+,80,42b,i,+,1645,24e,+,4,i,+,2,24e,+,3,i,+,335,24e,+,4,i,+,2,24e,+,3,i,+,944,24e,+,4,i,+,2,24e,+,3,i,+,248,24e,+,4,i,+,2,24e,+,3,i,+,82,42b,i,+,860,24e,+,5,i,+,1,24e,+,3,i,+,335,24e,+,5,i,+,1,24e,+,3,i,+,857,24e,+,11,i,24e,+,2,i,+,592,24e,+,5,i,+,167,24e,+,3,i,+,3,24e,+,3,i,+,343,42b,i,+,77,24e,+,3,i,+,3,24e,+,3,i,+,161,24e,+,5,i,+,689,24e,+,4,i,+,3907,i,i,¬i,+,2266,7i,7b,+,2,7k,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7h,7b,+,2,7g,i,+,859,7c,7b,+,11,7a,i,+,861,7c,7y,i,+,86,7ad,7a,i,+,690,7i,7b,+,3,7k,i,+,80,7e,i,+,3,7e,i,+,80,7h,7b,+,3,7g,i,+,688,7c,7b,7y,i,+,86,7ad,7b,7a,i,+,434,7ac,7a,i,+,83,7aa,i,+,85,7e,i,+,85,7w,i,+,86,7ad,7a,i,+,171,7ac,7a,i,+,83,7aa,i,+,85,7e,i,+,85,7w,i,+,86,7ad,7a,i,+,171,7ac,7a,i,+,83,7aa,i,+,85,7e,i,+,85,7w,i,+,86,7ad,7a,i,+,1210,7i,7b,+,2,7k,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7h,7b,+,2,7g,i,+,516,7i,7b,+,2,7k,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7e,i,+,2,7e,i,+,81,7h,7b,+,2,7g,i,+,2084,7d,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7f,i,+,868,7p,i,+,84,7u,i,+,84,7aa,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7w,i,+,86,7v,i,+,86,7v,i,+,86,7v,i,+,86,7m,i,+,1123,7i,7b,+,4,7k,i,+,79,7e,i,+,4,7e,i,+,79,7e,i,+,4,7e,i,+,79,7e,i,+,4,7e,i,+,79,7h,7b,+,4,7g,i,+,156,7d,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7e,i,+,85,7f,i,+,3396,i,i,¬194,7,dv,-90,192,78,dv,-90,¬16,1,72,24,-8,2,0,0,:16,74,12,25,-8,76,0,0,:¬87,234,300,1,232,81,2,8,5,0,player0300,x,x,x,1,0,\[/code\]Description: None]\nend\nif <(#Eight) = [2]> then\n    set [save code v] to [\[b\]Title: Sunken Ghost House\[code\]¬Sunken Ghost House¬40c,i,40b,i,40f,i,+5,40d,i,+2,40b,i,40d,i,+8,40e,i,bd,i,+9,40g,i,40d,i,+3,40c,i,40d,i,+2,i,i,40d,i,+1,40e,i,i,i,+3,40g,i,40d,i,40b,i,40c,i,40d,i,+4,40f,i,+4,40e,i,i,i,+9,40g,i,40d,i,+5,40b,i,40d,i,i,i,40d,i,+1,40e,i,i,i,+3,40g,i,40d,i,+3,40c,i,40d,i,+2,40e,i,i,i,+14,40g,i,40d,i,+3,40b,i,40d,i,+2,i,i,40d,i,+1,40e,i,i,i,+3,40g,i,40f,i,40d,i,+6,40e,i,i,i,+14,40g,i,40d,i,+4,40b,i,40d,i,+1,i,i,40d,i,+1,40e,i,i,i,+4,40g,i,40d,i,+6,40e,i,i,i,bn,£,i,i,+12,40g,i,40d,i,+2,40b,i,40d,i,+2,40c,i,i,i,40d,i,+1,40e,i,i,i,+2,n,c,i,i,40g,i,40f,i,40d,i,+2,40c,i,40b,i,40d,i,40e,i,i,i,+6,40g,i,40f,i,+2,40e,i,i,i,+2,40g,i,40d,i,40b,i,40d,i,+5,i,i,40d,i,+1,40e,i,i,i,+2,d,db,i,i,+1,40g,i,40d,i,+4,40b,i,40e,i,i,i,+6,40g,i,40b,i,40d,i,+1,40e,i,i,i,+2,40g,i,40f,i,+2,40d,i,+4,i,i,40d,i,+1,40e,i,i,i,+2,n,c,i,i,+1,40g,i,40f,i,40d,i,+1,40b,i,40d,i,+1,40e,i,i,i,+6,40g,i,40f,i,+2,40e,i,i,i,+5,40g,i,40d,i,+4,i,i,40f,i,+2,40e,i,i,i,+5,40g,i,40d,i,+2,40c,i,40d,i,40e,i,i,i,+17,40g,i,40d,i,+4,i,i,40e,i,i,i,bl,£,i,i,+4,c,i,i,i,40g,i,40d,i,40b,i,40d,i,+2,40e,i,i,i,+7,bl,",i,i,+8,40g,i,40d,i,+4,i,i,40e,i,i,i,+5,c,i,i,i,+1,40g,i,40d,i,+4,40e,i,i,i,+5,d,i,i,i,+5,c,i,i,i,+3,40g,i,40d,i,+3,40b,i,i,i,40e,i,bl,",i,i,+7,40g,i,40b,i,40d,i,+3,40e,i,i,i,+5,n,c,i,i,+5,c,i,i,i,+3,40g,i,40c,i,40d,i,+3,i,i,40f,i,+5,40e,i,i,i,+2,40g,i,40d,i,+4,40e,i,i,i,+5,d,i,i,i,+5,c,i,i,i,+3,40g,i,40d,i,+1,40c,i,40b,i,40d,i,i,i,40d,i,+5,40e,i,i,i,+2,40g,i,40c,i,40d,i,+3,40e,i,i,i,+17,40g,i,40d,i,40b,i,40d,i,+2,i,i,40c,i,40d,i,+4,40e,i,i,i,+2,40g,i,40d,i,+4,40e,i,i,i,+1,bl,",i,i,+14,40g,i,40d,i,40c,i,40b,i,40d,i,+1,i,i,40d,i,40f,i,+4,40e,i,i,i,+2,40g,i,40d,i,+4,40e,i,i,i,+7,40g,i,40f,i,+1,40e,i,i,i,+5,40g,i,40b,i,40d,i,+1,40c,i,40d,i,i,i,40d,i,40e,i,i,i,+7,40g,i,40d,i,40c,i,40d,i,40b,i,40d,i,40f,i,+3,40e,i,i,i,+3,40g,i,40d,i,+1,40e,i,i,i,+5,40g,i,40d,i,+4,i,i,40d,i,40e,i,i,i,c,i,+1,i,i,+4,40g,i,40d,i,+3,40b,i,40d,i,+3,40e,i,i,i,+3,40g,i,40d,i,+1,40e,i,i,i,+5,40g,i,40f,i,+3,40d,i,i,i,40d,i,40e,i,i,i,c,i,+1,i,i,+4,40g,i,40d,i,+1,40b,i,40d,i,+5,40e,i,i,i,+1,bn,",i,i,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40c,i,i,i,40d,i,40e,i,i,i,c,i,+1,i,i,+4,40g,i,40d,i,+1,40c,i,40d,i,+5,40f,i,40e,i,i,i,+2,40g,i,40d,i,+1,40e,i,y,",i,i,+8,40g,i,40d,i,i,i,40d,i,40e,i,i,i,c,i,+1,i,i,+4,40g,i,40d,i,40b,i,40d,i,+1,40c,i,40d,i,+4,40e,i,i,i,+2,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40d,i,i,i,40b,i,40e,i,i,i,c,i,+1,i,i,+4,40g,i,40d,i,+1,40f,i,+5,40d,i,40b,i,40e,i,i,i,+2,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40b,i,i,i,40d,i,40e,i,i,i,+7,40g,i,40b,i,40d,i,40e,i,i,i,+3,40g,i,40d,i,+1,40e,i,i,i,+2,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40d,i,i,i,40d,i,40e,i,i,i,+1,40g,i,40f,i,40e,i,bl,",i,i,40g,i,40f,i,40d,i,+1,40e,i,i,i,+3,40g,i,40f,i,+1,40e,i,i,i,+2,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40d,i,i,i,40d,i,40e,i,i,i,+1,40g,i,40d,i,40e,i,i,i,+1,40g,i,40d,i,+2,40e,i,i,i,+1,d,i,i,i,+1,40g,i,40e,i,i,i,+3,40g,i,40c,i,40b,i,40e,i,i,i,+6,do,i,i,i,+1,40g,i,40d,i,i,i,40f,i,40e,i,i,i,+1,40g,i,40f,i,40e,i,i,i,+1,40g,i,40f,i,40d,i,+1,40e,i,bn,£,i,i,n,db,i,i,+1,40a,i,i,i,+4,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40d,i,i,i,40e,i,i,i,+8,40g,i,40d,i,+1,40e,i,i,i,+1,d,i,i,i,+1,40a,i,i,i,+3,40g,i,40f,i,40b,i,40d,i,40e,i,i,i,+1,y,",i,i,+6,40g,i,40d,i,i,i,40e,i,i,i,+8,40g,i,40c,i,40d,i,40e,i,i,i,+4,40a,i,i,i,+3,40g,i,40d,i,+1,40c,i,40e,i,i,i,+9,40g,i,40d,i,i,i,40e,i,i,i,+8,40g,i,40d,i,+1,40e,i,i,i,+9,40g,i,40b,i,40d,i,+1,40e,i,i,i,+9,40g,i,40d,i,i,i,40e,i,i,i,+6,bn,",i,i,40g,i,40d,i,+1,40e,i,i,i,+8,40g,i,40f,i,40d,i,+2,40e,i,i,i,+9,40g,i,40d,i,i,i,40e,i,i,i,+1,40g,i,40f,i,+1,40e,i,i,i,+2,40g,i,40d,i,40c,i,40e,i,i,i,+7,40g,i,40f,i,40d,i,+3,40e,i,i,i,+9,40g,i,40d,i,i,i,40e,i,i,i,+1,40g,i,40d,i,+1,40f,i,+4,40d,i,40b,i,40e,i,i,i,+6,40g,i,40f,i,40d,i,40f,i,+3,40e,i,i,i,+4,40g,i,40f,i,+4,40d,i,i,i,40e,i,i,i,+1,40g,i,40f,i,+5,40b,i,40d,i,+1,40e,i,i,i,+6,40g,i,40d,i,+1,40e,i,i,i,+8,40g,i,40d,i,+4,40b,i,i,i,40e,i,i,i,+4,d,i,i,i,+1,40g,i,40d,i,40b,i,40d,i,40e,i,i,i,+6,40g,i,40d,i,+1,40e,i,i,i,+8,40g,i,40f,i,+2,40d,i,+2,i,i,40e,i,i,i,+4,n,db,i,i,+1,40g,i,40d,i,+2,40e,i,i,i,+5,40g,i,40f,i,40d,i,40c,i,40e,i,bl,£,i,i,+10,40g,i,40d,i,40b,i,40d,i,i,i,40e,i,i,i,+4,d,i,i,i,+1,40g,i,40f,i,+2,40e,i,i,i,+2,bl,£,i,i,+1,40g,i,40d,i,+2,40e,i,i,i,+11,40g,i,40d,i,+2,i,i,+20,40g,i,40d,i,+2,40e,i,i,i,+11,40g,i,40b,i,40d,i,+1,i,i,+20,40g,i,40d,i,+2,40e,i,i,i,+11,40g,i,40d,i,+2,i,i,+3,bn,",i,i,+14,bl,",40g,i,40d,i,+2,40e,i,bl,",i,i,+10,40g,i,40d,i,+2,i,i,40f,i,40e,i,i,i,+7,bl,",i,i,+8,40g,i,40d,i,+2,40e,i,i,i,+5,c,i,i,i,+4,40g,i,40d,i,+2,i,i,40d,i,40f,i,+4,40e,i,i,i,+2,40g,i,40f,i,+9,40d,i,+1,40b,i,40e,i,i,i,+5,c,i,i,i,+4,40g,i,40c,i,40d,i,+1,i,i,40d,i,+5,40e,i,i,i,+2,40g,i,40c,i,40d,i,+6,40c,i,40d,i,+3,40e,i,i,i,+5,c,i,i,i,+4,40g,i,40d,i,+2,i,i,40c,i,40d,i,40b,i,40d,i,+2,40e,i,i,i,+2,40g,i,40d,i,40b,i,40d,i,+7,40c,i,40b,i,40d,i,40e,i,i,i,+11,40g,i,40d,i,+2,i,i,40b,i,40d,i,40c,i,40d,i,+2,40e,i,i,i,+2,40g,i,40d,i,+8,40b,i,40d,i,+2,40e,i,i,i,+11,40g,i,40d,i,40c,i,40b,i,i,i,40d,i,40b,i,40d,i,+3,40e,i,i,i,+2,40g,i,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+1,40e,i,bl,",i,i,+10,40g,i,40d,i,+2,i,i,40d,i,+5,40e,i,i,i,+2,40g,i,40d,i,+7,40b,i,40d,i,+1,40c,i,40d,i,40e,i,i,i,+11,40g,i,40d,i,40b,i,40d,i,i,i,40d,i,+2,40c,i,40d,i,+1,40e,i,i,i,bn,",i,i,40g,i,40d,i,+5,40b,i,40d,i,+5,40e,i,i,i,+11,40g,i,40d,i,+1,40c,i,i,i,40d,i,+4,40c,i,40e,i,i,i,+2,40g,i,40d,i,+1,40c,i,40d,i,+3,40b,i,40d,i,+4,40f,i,+2,40e,i,i,i,+8,40g,i,40b,i,40d,i,+1,i,i,40d,i,+5,40e,i,i,i,do,i,i,i,40g,i,40d,i,+3,40c,i,40b,i,40d,i,+2,40f,i,+6,40e,i,i,i,+8,40g,i,40d,i,+2,i,i,40d,i,+3,40b,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,+2,40b,i,40d,i,+4,40e,i,i,i,c,i,i,i,+5,dy,",i,i,nx,"c,i,i,+4,40g,i,40d,i,+2,i,i,40d,i,+4,40b,i,40f,i,+4,40d,i,+2,40c,i,40b,i,40d,i,+3,40e,i,i,i,c,i,i,i,+13,40g,i,40d,i,+2,i,i,40d,i,+2,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+2,40e,i,i,i,c,i,i,i,+13,40g,i,40d,i,+2,i,i,40d,i,+17,40c,i,40d,i,40e,i,i,i,+2,bn,",i,i,+11,40g,i,40d,i,+2,i,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+6,40e,i,i,i,c,i,i,i,+13,40g,i,40d,i,+2,i,i,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40e,i,i,i,c,i,i,i,+12,40g,i,40f,i,40c,i,40d,i,40b,i,i,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+6,40c,i,40e,i,i,i,c,i,i,i,+12,40g,i,40d,i,+3,i,i,40c,i,40d,i,+7,40b,i,40d,i,+8,40b,i,40e,i,i,i,c,i,bl,£,i,i,+3,dy,",i,i,nx,"db,i,i,+4,40g,i,40c,i,40d,i,40b,i,40d,i,i,i,40d,i,+1,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,+1,40e,i,i,i,c,i,i,i,+12,40g,i,40b,i,40d,i,40c,i,40d,i,i,i,40d,i,+7,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40e,i,i,i,+14,40g,i,40d,i,40b,i,40d,i,+1,i,i,40d,i,+5,40b,i,40d,i,+8,40b,i,40d,i,+2,40e,i,bl,",c,i,i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+2,40c,i,40b,i,40d,i,+8,40b,i,40d,i,+4,40e,i,i,i,c,i,i,i,+12,40g,i,40d,i,+2,40c,i,i,i,40d,i,+4,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+3,40e,i,i,i,c,i,i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,40c,i,40d,i,+3,40e,i,i,i,c,i,i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+3,40c,i,40d,i,+14,40e,i,i,i,bn,",i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+1,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+4,40e,i,i,i,+8,nx,"c,i,i,+4,40g,i,40d,i,+3,i,i,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+4,40c,i,40d,i,+2,40f,i,+4,40e,i,i,i,+9,40g,i,40d,i,+2,40b,i,i,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+2,40e,i,i,i,+9,40g,i,40d,i,+3,i,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+4,40e,i,i,i,+9,40g,i,40d,i,+1,40b,i,40d,i,i,i,40d,i,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+6,40e,i,i,i,+9,40g,i,40b,i,40c,i,40d,i,+1,i,i,40d,i,+7,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+4,40e,i,i,i,+9,40g,i,40d,i,40b,i,40d,i,+1,i,i,40c,i,40d,i,+4,40b,i,40d,i,+8,40b,i,40d,i,+3,40c,i,40f,i,+2,40e,i,i,i,+9,40g,i,40c,i,40d,i,+2,i,i,40d,i,+1,40c,i,40d,i,40b,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+6,40e,i,i,i,+12,40g,i,40d,i,+1,40c,i,40d,i,i,i,40d,i,+4,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,40e,i,i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+7,40e,i,i,i,bn,",i,i,+10,40g,i,40d,i,+3,i,i,40d,i,+2,40c,i,40d,i,+17,40e,i,i,i,+12,40g,i,40d,i,+2,40c,i,i,i,40d,i,+1,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+7,40e,i,i,i,+12,40g,i,40d,i,+3,i,i,40b,i,40d,i,+8,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,40e,i,i,i,+12,40g,i,40d,i,+2,40b,i,i,i,40d,i,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,+8,40f,i,40e,i,i,i,+12,40g,i,40d,i,+3,i,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,40e,i,i,i,+13,40g,i,40d,i,+1,40b,i,40d,i,i,i,40d,i,+6,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+2,40e,i,i,i,+1,bn,£,i,i,+10,40g,i,40b,i,40d,i,+2,i,i,40d,i,+7,40b,i,40d,i,+8,40b,i,40d,i,+1,40e,i,i,i,+13,40g,i,40d,i,40b,i,40d,i,+1,i,i,40d,i,+5,40b,i,40c,i,40d,i,+7,40b,i,40d,i,+3,40e,i,i,i,+13,40g,i,40d,i,+3,i,i,40d,i,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+2,40e,i,i,i,+6,cr,",i,i,+5,40g,i,40d,i,40c,i,40d,i,+1,i,i,40d,i,+4,40b,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+2,40c,i,40d,i,40f,i,40e,i,i,i,+12,40g,i,40d,i,+3,i,i,40c,i,40d,i,+1,40b,i,40d,i,+8,40b,i,40d,i,+6,40c,i,40e,i,i,i,+12,40g,i,40c,i,40d,i,+2,i,i,40d,i,+1,40c,i,40d,i,+6,40c,i,40d,i,+10,40e,i,i,i,+12,40g,i,40d,i,+1,40c,i,40d,i,i,i,40d,i,+1,40b,i,40d,i,+8,40b,i,40d,i,+6,40c,i,40d,i,40e,i,i,i,+12,40g,i,40d,i,+3,i,i,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40d,i,40e,i,i,i,bn,",i,i,+10,40g,i,40d,i,+2,40b,i,i,i,40d,i,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+8,40b,i,40e,i,i,i,+4,cr,",i,i,+6,40g,i,40d,i,+2,40c,i,i,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,+1,40e,i,i,i,+10,40g,i,40f,i,+1,40d,i,+1,40b,i,40d,i,i,i,40d,i,+6,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+3,40f,i,+6,40e,i,i,i,+3,40g,i,40d,i,+1,40b,i,40d,i,+2,i,i,40d,i,+3,40c,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40e,i,i,i,+3,40g,i,40d,i,+2,40b,i,40d,i,+1,i,i,40d,i,+5,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+1,40e,i,i,i,+3,40g,i,40c,i,40b,i,40d,i,+3,i,i,40d,i,+3,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,40f,i,+10,40e,i,i,i,+3,40g,i,40d,i,+5,i,i,40d,i,+4,40b,i,40d,i,+5,40f,i,+5,40e,i,i,i,+6,c,i,i,i,+6,40g,i,40b,i,40d,i,+4,i,i,40d,i,+2,40b,i,40d,i,+2,40c,i,40d,i,+3,40e,i,i,i,+12,c,i,i,i,+6,40g,i,40d,i,40c,i,40d,i,+3,i,i,40d,i,40c,i,40d,i,+6,40c,i,40d,i,+1,40e,i,ci,i,i,i,+11,c,i,i,i,+6,40g,i,40d,i,+2,40c,i,40d,i,+1,i,i,40d,i,+1,40b,i,40d,i,+7,40c,i,40e,i,i,i,+12,c,i,i,i,+6,40g,i,40d,i,+5,i,i,40b,i,40d,i,+8,40b,i,40d,i,40e,i,i,i,+3,40g,i,40f,i,40e,i,i,i,+2,40g,i,40f,i,+10,40d,i,+1,40c,i,40d,i,+1,40b,i,i,i,40d,i,40b,i,40c,i,40d,i,+6,40f,i,+1,40e,i,i,i,+3,40g,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,+6,40b,i,40d,i,+6,40c,i,40d,i,i,i,40d,i,+8,40b,i,40e,i,i,i,+5,40g,i,40f,i,40e,i,i,i,+2,40g,i,40f,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,i,i,40d,i,+6,40b,i,40d,i,+1,40e,i,i,i,+6,40a,i,i,i,+1,bn,",i,i,+1,40g,i,40d,i,+1,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,+2,i,i,40d,i,+2,40c,i,40d,i,+3,40b,i,40d,i,40e,i,i,i,+3,n,c,i,i,+1,40a,i,i,i,+1,do,i,i,i,+1,40g,i,40d,i,+2,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40c,i,i,i,40d,i,+4,40c,i,40b,i,40d,i,+2,40e,i,i,i,+3,n,db,i,i,+1,40a,i,i,i,+4,40g,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+3,i,i,40d,i,+3,40b,i,40d,i,+4,40e,i,i,i,+3,n,c,i,i,+1,40g,i,40f,i,+5,40d,i,+8,40b,i,40d,i,+5,i,i,40d,i,+3,40c,i,40b,i,40d,i,+3,40e,i,i,i,+6,40g,i,40d,i,+5,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+4,i,i,40d,i,+2,40b,i,40d,i,+1,40c,i,40d,i,+2,40e,i,i,i,+5,40g,i,40f,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,40c,i,40d,i,+4,i,i,40d,i,+7,40c,i,40d,i,40e,i,i,i,+5,40g,i,40d,i,+5,40c,i,40d,i,+15,i,i,40d,i,+1,40b,i,40d,i,+6,40e,i,i,i,+5,40g,i,40f,i,40d,i,+2,40f,i,+10,40d,i,40c,i,40d,i,+5,i,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40e,i,i,i,+6,40g,i,40d,i,40b,i,40d,i,40e,i,i,i,cr,£,i,i,+6,40g,i,40d,i,+2,40c,i,40d,i,+2,40b,i,i,i,40d,i,40b,i,40d,i,+6,40c,i,40e,i,i,i,+2,c,i,+1,i,i,+1,40g,i,40d,i,+1,40b,i,40e,i,i,i,+8,40g,i,40d,i,+4,40c,i,40d,i,+1,i,i,40d,i,+8,40b,i,40e,i,i,i,+2,c,i,+1,i,i,+1,40g,i,40b,i,40d,i,+1,40e,i,i,i,+8,40g,i,40d,i,+5,40b,i,40d,i,i,i,40c,i,40d,i,+5,40b,i,40d,i,+1,40e,i,i,i,+2,c,i,+1,i,i,+1,40g,i,40d,i,+1,40c,i,40e,i,i,i,+8,40g,i,40d,i,+3,40b,i,40d,i,+2,i,i,40d,i,+1,40c,i,40d,i,+4,40b,i,40d,i,40e,i,i,i,+5,bl,",40g,i,40d,i,+2,40e,i,i,i,+8,40g,i,40d,i,+4,40b,i,40c,i,40d,i,i,i,40d,i,+5,40b,i,40d,i,+2,40e,i,i,i,+5,40g,i,40f,i,40d,i,40c,i,40d,i,40e,i,i,i,+2,40g,i,40f,i,40e,i,i,i,+2,40g,i,40d,i,+2,40b,i,40d,i,+3,i,i,40d,i,+3,40b,i,40f,i,+4,40e,i,i,i,+5,40g,i,40d,i,+3,40e,i,i,i,+2,40g,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,40b,i,40d,i,+5,i,i,40d,i,+2,40c,i,40d,i,40e,i,i,i,+5,bl,",i,i,+3,40g,i,40d,i,+3,40e,i,i,i,+2,40g,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,+1,40b,i,40d,i,+3,40c,i,i,i,40d,i,+2,40b,i,40d,i,40e,i,i,i,c,i,+1,i,i,+7,40g,i,40d,i,+3,40e,i,i,i,+2,40g,i,40d,i,40e,i,i,i,+2,40g,i,40b,i,40d,i,+6,i,i,40d,i,+4,40e,i,i,i,c,i,+1,i,i,+7,40g,i,40d,i,+3,40e,i,i,i,+2,40g,i,40f,i,40e,i,i,i,+2,40g,i,40d,i,+7,i,i,40d,i,+1,40b,i,40d,i,40c,i,40e,i,i,i,+10,40g,i,40d,i,+3,40e,i,i,i,+8,40g,i,40c,i,40d,i,+6,i,i,40b,i,40d,i,+3,40f,i,+5,40e,i,i,i,+4,40g,i,40f,i,+3,40e,i,i,i,+6,cr,",i,i,40g,i,40d,i,+1,40c,i,40d,i,+3,40b,i,i,i,40d,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40e,i,i,i,+13,40g,i,40f,i,40e,i,i,i,+2,40g,i,40d,i,+7,i,i,40d,i,+8,40b,i,40d,i,40e,i,i,i,+13,40g,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,40c,i,40d,i,+3,40b,i,40d,i,i,i,40d,i,+6,40b,i,40d,i,+2,40e,i,i,i,cr,",i,i,+11,40g,i,40b,i,40e,i,i,i,+2,40g,i,40d,i,+2,40c,i,40b,i,40d,i,+2,i,i,40d,i,40c,i,40d,i,+5,40b,i,40c,i,40d,i,40f,i,40e,i,i,i,+12,40g,i,40d,i,40e,i,i,i,+2,40g,i,40d,i,+4,40b,i,40d,i,+1,i,i,40d,i,+5,40b,i,40d,i,+3,40c,i,40f,i,+14,40c,i,40e,i,i,i,+2,40g,i,40d,i,+2,40b,i,40d,i,+3,i,i,40c,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+2,40e,i,i,i,+2,40g,i,40d,i,40b,i,40d,i,+1,40c,i,40d,i,+2,i,i,40d,i,+1,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,+1,40e,i,i,i,+2,40g,i,40d,i,+1,40b,i,40d,i,+2,40c,i,40d,i,i,i,40d,i,+2,40b,i,40d,i,+7,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,40e,i,i,i,+2,40g,i,40b,i,40d,i,+6,i,i,40d,i,+21,40c,i,40d,i,+4,40e,i,i,i,+2,40g,i,40d,i,+7,i,i,40d,i,+1,40b,i,40c,i,40d,i,+7,40b,i,40d,i,+8,40f,i,+5,40e,i,cr,",i,i,+1,40g,i,40d,i,+6,40c,i,i,i,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,40e,i,i,i,+8,40g,i,40d,i,+6,40b,i,i,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40e,i,i,i,+8,40g,i,40d,i,+7,i,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,40f,i,40e,i,i,i,+8,40g,i,40c,i,40d,i,+4,40b,i,40d,i,i,i,40d,i,+5,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+2,40e,i,i,i,+9,40g,i,40d,i,+1,40c,i,40d,i,40b,i,40d,i,+2,i,i,40f,i,+13,40d,i,+1,40f,i,+4,40e,i,i,i,+9,40g,i,40d,i,+4,40b,i,40d,i,+1,i,i,+2,bl,£,+1,i,i,+8,40g,i,40d,i,+1,40e,i,i,i,+2,bl,£,i,i,+10,40g,i,40d,i,40c,i,40d,i,40b,i,40d,i,+3,i,i,+13,40g,i,40b,i,40d,i,40e,i,i,i,+12,cr,",i,i,40g,i,40d,i,40b,i,40d,i,40c,i,40d,i,+3,i,i,+1,c,i,i,i,+10,40g,i,40f,i,+1,40e,i,i,i,+14,40g,i,40d,i,+1,40b,i,40d,i,+1,40c,i,40d,i,+1,i,i,+8,40g,i,40f,i,40e,i,i,i,+16,40g,i,40f,i,+3,40b,i,40d,i,+6,i,i,+1,do,i,i,i,+5,40g,i,40d,i,40e,i,i,i,+16,40g,i,40c,i,40d,i,+6,40c,i,40d,i,+2,i,i,+8,40g,i,40d,i,40e,i,i,i,+11,bn,",i,i,40g,i,40f,i,+2,40d,i,+1,40c,i,40b,i,40d,i,+5,40c,i,40d,i,i,i,+1,c,i,i,i,+5,40g,i,40d,i,40e,i,i,i,+2,bl,",i,i,+9,40g,i,40d,i,+3,40b,i,40d,i,+8,40b,i,i,i,bl,",i,i,+3,bl,",i,i,+1,40g,i,40d,i,40f,i,+15,40d,i,+3,40c,i,40b,i,40d,i,+8,i,i,40f,i,+3,40e,i,i,i,+2,40g,i,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,i,i,40d,i,+3,40f,i,40e,i,i,i,+1,40g,i,40f,i,40d,i,+2,40c,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40d,i,+2,i,i,40d,i,+4,40e,i,i,i,+2,40g,i,40d,i,+4,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,+1,i,i,40d,i,+3,40c,i,40e,i,i,i,+2,40g,i,40f,i,40d,i,+4,40b,i,40d,i,+7,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,i,i,40d,i,+3,40b,i,40e,i,i,i,+3,40g,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40c,i,40d,i,+4,i,i,40d,i,+4,40e,i,i,i,+3,40g,i,40f,i,40d,i,+2,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+8,40b,i,40d,i,+4,i,i,40d,i,+2,40b,i,40d,i,40f,i,40e,i,bn,",i,i,+2,40g,i,40d,i,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+5,i,i,40d,i,+5,40e,i,i,i,+3,40g,i,40f,i,+21,40d,i,+1,40c,i,40d,i,+3,i,i,40d,i,40c,i,40b,i,40d,i,+2,40f,i,40e,i,i,i,c,i,i,i,+5,c,i,i,i,+2,bl,£,i,i,+2,c,i,i,i,+4,n,db,i,i,+1,40g,i,40d,i,+3,40c,i,40d,i,+1,i,i,40b,i,40d,i,+5,40e,i,i,i,c,i,i,i,+22,40g,i,40d,i,+5,40b,i,i,i,40c,i,40b,i,40d,i,+4,40e,i,i,i,c,i,i,i,+22,40g,i,40d,i,+2,40c,i,40d,i,+2,i,i,40f,i,+6,40e,i,i,i,c,i,i,i,+5,bl,",i,i,+2,c,i,i,i,+2,bl,",i,i,+4,n,bv,i,i,+1,40g,i,40d,i,+4,40b,i,40d,i,i,i,+3,bl,£,i,i,+7,40g,i,40f,i,+20,40d,i,+2,40b,i,40d,i,+2,i,i,+1,c,i,i,i,+9,40g,i,40d,i,+4,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+1,i,i,+1,c,i,i,i,+9,40g,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+2,40c,i,i,i,+1,c,i,i,i,+7,bn,",i,i,40g,i,40c,i,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40d,i,+5,i,i,+5,bl,",i,i,+5,40g,i,40f,i,+1,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+4,i,i,40f,i,+5,40e,i,i,i,+6,40g,i,40d,i,+7,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+6,i,i,40d,i,+5,40e,i,i,i,+6,40g,i,40d,i,+19,40c,i,40d,i,+4,i,i,40d,i,+1,40b,i,40d,i,+2,40e,i,i,i,+6,40g,i,40d,i,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+7,i,i,40f,i,+5,40e,i,i,i,+6,40g,i,40d,i,+2,40c,i,40d,i,40b,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,i,i,+14,40g,i,40d,i,+5,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,i,i,+14,40g,i,40d,i,+1,40c,i,40d,i,40b,i,40d,i,+8,40b,i,40d,i,+7,40c,i,40b,i,40d,i,i,i,40f,i,+4,40e,i,i,i,+1,cr,",i,i,+4,40g,i,40d,i,+1,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,+8,40b,i,40d,i,+2,i,i,40c,i,40d,i,+3,40e,i,i,i,+7,40g,i,40f,i,+2,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+1,i,i,40d,i,+1,40c,i,40d,i,+1,40e,i,i,i,+10,40g,i,40f,i,+10,40d,i,+1,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,i,i,40d,i,+3,40b,i,40e,i,i,i,+21,40g,i,40f,i,+1,40d,i,+2,40b,i,40d,i,+5,i,i,40d,i,+4,40e,i,i,i,+23,40g,i,40d,i,+3,40b,i,40d,i,+4,i,i,40d,i,+2,40b,i,40d,i,40f,i,+1,40e,i,i,i,+21,40g,i,40d,i,40c,i,40b,i,40d,i,+5,40c,i,i,i,40d,i,+4,40c,i,40d,i,40f,i,+7,40e,i,i,i,+4,bl,",i,i,+7,40g,i,40f,i,+9,i,i,40d,i,+1,40b,i,40d,i,+8,40b,i,40d,i,+1,40f,i,+9,40e,i,i,i,+15,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,+8,40b,i,40d,i,+3,40e,i,i,i,+15,40d,i,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,+2,40e,i,i,i,+15,40d,i,+7,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40e,i,i,i,+15,40d,i,+6,40b,i,40d,i,+8,40b,i,40c,i,40d,i,40f,i,+4,40e,i,i,i,+15,40d,i,+6,40c,i,40b,i,40d,i,+8,40b,i,40f,i,40e,i,i,i,+20,40d,i,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40f,i,40e,i,i,i,+8,c,i,i,i,+11,40d,i,+3,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+1,40f,i,40e,i,i,i,+4,bn,",i,i,+4,c,i,i,i,+10,40c,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,40e,i,c,i,+2,i,i,+7,c,i,i,i,+11,40d,i,+1,40c,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+2,40e,i,c,i,+2,i,i,+20,40d,i,+11,40c,i,40d,i,+2,40f,i,40e,i,c,i,+2,i,i,+20,40d,i,+1,40b,i,40d,i,+8,40b,i,40d,i,+2,40e,i,i,i,+24,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,+4,40e,i,i,i,+24,40d,i,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+1,40e,i,i,i,+24,40d,i,+8,40b,i,40d,i,+4,40c,i,40e,i,i,i,c,i,i,i,+2,bn,",i,i,+18,40d,i,+3,40c,i,40d,i,+1,40b,i,40f,i,+7,40e,i,i,i,c,i,i,i,+9,cr,",i,i,+11,40d,i,+5,40c,i,40d,i,40e,i,i,i,+4,bl,£,i,i,+2,c,i,i,i,+22,40d,i,+5,40b,i,40d,i,40e,i,i,i,+8,c,i,i,i,+22,40d,i,+3,40b,i,40d,i,+2,40e,i,i,i,+8,c,i,i,i,+22,40d,i,+4,40b,i,40d,i,40c,i,40e,i,i,i,+2,bl,",i,i,+14,cr,",i,i,+1,nx,"db,i,i,+9,40d,i,40c,i,40d,i,40b,i,40d,i,+3,40e,i,i,i,+2,40g,i,40f,i,+2,40e,i,i,i,+3,bn,£,i,i,+19,40d,i,+7,40e,i,i,i,dq,i,i,i,40g,i,40d,i,+2,40e,i,i,i,+24,40c,i,40d,i,40b,i,40d,i,+4,40e,i,i,i,+2,40g,i,40d,i,+2,40e,i,i,i,+11,c,i,i,i,+11,40b,i,40d,i,40c,i,40d,i,+4,40f,i,+4,40d,i,+2,40e,i,i,i,c,i,+2,i,i,+7,cr,",c,i,i,i,+10,40d,i,40b,i,40d,i,+8,40b,i,40c,i,40d,i,+2,40f,i,40e,i,c,i,+2,i,i,+8,c,i,i,i,+10,40d,i,+8,40b,i,40d,i,+6,40e,i,c,i,+2,i,i,+7,c,i,i,i,+11,40d,i,+2,40c,i,40d,i,+2,40b,i,40d,i,+8,40f,i,+3,40e,i,i,i,+1,bn,£,i,i,+16,40d,i,+4,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40e,i,i,i,+19,40d,i,+5,40b,i,40d,i,+7,40c,i,40b,i,40d,i,+3,40f,i,+6,40e,i,i,i,+12,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,+8,40b,i,40c,i,40d,i,+1,40e,i,i,i,+12,40d,i,+4,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+8,40b,i,40d,i,+1,40e,i,i,i,+12,40d,i,+2,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+2,40e,i,i,i,+12,40d,i,+17,40c,i,40d,i,+4,40f,i,+3,40e,i,i,i,+12,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+8,40b,i,40d,i,40e,i,i,i,+16,40f,i,+10,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+2,40e,i,i,i,+26,40g,i,40b,i,40d,i,+6,40c,i,40d,i,40b,i,40d,i,+1,40e,i,bl,",i,i,+3,c,i,i,i,+20,40g,i,40d,i,+7,40b,i,40d,i,40c,i,40d,i,+1,40e,i,i,i,+4,c,i,i,i,+20,40g,i,40d,i,+5,40b,i,40d,i,+5,40e,i,i,i,+4,c,i,i,i,+20,40g,i,40d,i,40c,i,40d,i,+4,40b,i,40d,i,40c,i,40d,i,+2,40e,i,i,i,+2,c,i,i,i,+22,40g,i,40d,i,+4,40b,i,40d,i,+4,40c,i,40d,i,40e,i,i,i,+2,c,i,i,i,+10,40g,i,i,i,+10,40g,i,40d,i,+2,40b,i,40d,i,+8,40e,i,bl,",i,i,+5,c,i,i,i,+5,40g,i,40f,i,i,i,+10,40g,i,40d,i,+1,40c,i,40d,i,40b,i,40d,i,+7,40e,i,i,i,+6,c,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+1,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40e,i,i,i,+6,c,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+12,40e,i,i,i,+6,c,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,40b,i,40d,i,40c,i,40d,i,+6,40b,i,40d,i,40e,i,bl,",i,i,+7,dy,",i,i,+3,40g,i,40d,i,i,i,+10,40g,i,40d,i,+4,40c,i,40d,i,+2,40b,i,40d,i,+2,40e,i,i,i,+13,40g,i,40b,i,i,i,+10,40g,i,40b,i,40d,i,+5,40c,i,40d,i,+1,40b,i,40d,i,+1,40f,i,+7,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+7,40b,i,40d,i,+7,40c,i,40b,i,40d,i,+1,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+5,40b,i,40d,i,+8,40b,i,40d,i,+3,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40c,i,40d,i,+5,40b,i,40c,i,40d,i,+6,40c,i,40b,i,40d,i,+2,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+4,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+1,40c,i,40d,i,+1,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+2,40b,i,40d,i,+8,40b,i,40d,i,+5,40c,i,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,40c,i,40d,i,+1,40b,i,40d,i,+3,40c,i,40d,i,+3,40b,i,40d,i,+5,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40d,i,+1,40b,i,40d,i,+7,40c,i,40b,i,40d,i,+5,40c,i,40d,i,40e,i,i,i,+5,40g,i,40d,i,i,i,+10,40g,i,40f,i,+7,40d,i,+12,40e,i,i,i,+5,40g,i,40c,i,i,i,+18,40g,i,40d,i,+2,40b,i,40d,i,+8,40e,i,i,i,+5,40g,i,40d,i,i,i,+18,40g,i,40d,i,40b,i,40d,i,+1,40c,i,40d,i,+5,40b,i,40d,i,40e,i,i,i,+4,40g,i,40f,i,40b,i,i,i,+18,40g,i,40d,i,+1,40b,i,40d,i,+2,40c,i,40d,i,+4,40b,i,40e,i,i,i,+3,40g,i,40f,i,40d,i,+1,i,i,+18,40g,i,40b,i,40d,i,+8,40b,i,40d,i,+1,40e,i,i,i,+2,40g,i,40f,i,40d,i,40b,i,40d,i,i,i,+18,40g,i,40d,i,+4,40c,i,40d,i,+1,40b,i,40d,i,+3,40e,i,bd,i,+2,40g,i,40b,i,40d,i,+2,i,i,+18,40g,i,40f,i,+12,40e,i,i,i,+2,40g,i,40f,i,+3,i,i,+250,i,i,i,i,¬i,+,21,51l,+,3,51k,i,+,36,51l,+,3,51k,i,+,31,51l,+,2,51k,50e,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50g,i,+,11,51m,i,+,23,51l,+,2,51k,50g,i,+,4,51a,50e,i,+,3,51m,51l,i,+,7,51l,+,1,51k,50e,i,+,11,51l,+,2,51k,50g,i,+,4,51a,50g,i,+,13,51l,+,1,51k,50g,i,+,11,51l,+,2,51k,50g,i,+,4,51a,50g,i,+,4,51m,i,+,7,51l,+,1,51k,50f,i,+,11,51l,+,2,51k,50g,i,+,4,51a,50g,i,+,29,51l,+,2,51k,50g,i,+,4,51a,50g,i,+,29,51l,+,2,51k,50g,i,+,4,51a,50g,i,+,3,51m,51l,i,+,23,51l,+,2,51k,50g,i,+,4,51a,50f,i,+,29,51l,+,2,51k,50f,i,+,6,51l,+,1,51k,50e,i,+,10,51l,+,3,51k,50e,i,+,12,51l,+,3,i,+,3,51l,+,1,51k,50g,i,+,10,51l,+,3,51k,50g,i,+,12,50e,i,+,6,51l,+,1,51k,50f,i,+,10,51l,+,3,51k,50g,i,+,12,50f,i,+,21,51l,+,3,51k,50g,i,+,13,51m,51l,+,1,i,+,18,51l,+,3,51k,50g,i,+,13,51m,51l,+,1,i,+,18,51l,+,3,51k,50g,i,+,13,51m,51l,+,1,i,+,18,51l,+,3,51k,50f,i,+,5,51l,+,3,i,+,3,51m,51l,+,1,i,+,30,51l,+,3,i,+,3,51m,51l,+,1,i,+,3,51l,51k,50e,i,+,23,51l,+,4,i,+,9,51l,51k,50g,i,+,23,51l,+,4,i,+,9,51l,51k,50g,i,+,23,51l,+,4,i,+,9,51l,51k,50g,i,+,23,51l,+,4,i,+,9,51l,51k,50f,i,+,23,51l,+,3,51k,50b,i,+,35,51l,+,2,51k,50b,i,+,23,51l,+,1,i,+,10,51l,+,1,51k,50b,i,+,24,51l,+,1,i,+,10,51l,51k,50b,i,+,25,51l,+,1,i,+,10,51k,50b,i,+,39,50e,i,+,9,51l,+,4,51k,50e,i,+,23,50g,i,+,9,51l,+,4,51k,50g,i,+,23,50f,i,+,9,51l,+,4,51k,50f,i,+,9,51k,50e,i,+,39,51k,50g,i,+,39,51k,50f,i,+,22,51l,+,2,51k,50e,i,+,36,51l,+,2,51k,50g,i,+,18,50e,i,+,16,51l,+,2,51k,50g,i,+,18,50f,i,+,16,51l,+,2,51k,50g,i,+,18,51l,+,2,i,+,14,51l,+,2,51k,50f,i,+,18,51l,+,2,i,+,38,51l,+,2,i,+,38,51l,+,2,i,+,14,51l,51k,50e,i,+,38,51l,51k,50f,i,+,202,51l,+,5,51k,50e,i,+,33,51l,+,5,51k,50g,i,+,33,51l,+,5,51k,50g,i,+,33,51l,+,5,51k,50f,i,+,159,51l,+,4,51k,50e,i,+,34,51l,+,4,51k,50g,i,+,34,51l,+,4,51k,50g,i,+,34,51l,+,4,51k,50f,i,+,165,50e,i,+,40,50g,i,+,40,50g,i,+,40,50g,i,+,40,50g,i,+,40,50f,i,+,79,51l,+,2,51k,50e,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50g,i,+,36,51l,+,2,51k,50f,i,+,119,51l,+,3,51k,50e,i,+,35,51l,+,3,51k,50g,i,+,35,51l,+,3,51k,50g,i,+,35,51l,+,3,51k,50f,i,+,120,51l,+,3,51k,50e,i,+,35,51l,+,3,51k,50g,i,+,35,51l,+,3,51k,50g,i,+,35,51l,+,3,51k,50f,i,+,452,51l,+,2,i,+,38,51l,+,2,i,+,38,51l,+,2,i,+,29,51l,+,6,i,51l,+,4,i,+,28,51l,+,6,i,51l,+,4,i,+,28,51l,+,6,i,51l,+,4,i,+,28,51l,+,6,i,+,34,51l,+,6,i,+,172,51l,+,2,51k,i,+,25,51l,51k,i,+,9,51l,+,2,51k,i,+,25,51l,51k,i,+,9,51l,+,3,51k,i,+,24,51l,51k,i,+,9,51l,+,3,51k,i,+,36,51l,+,3,51k,i,+,36,51l,+,2,i,+,38,51l,+,2,i,+,21,51l,+,3,51k,i,+,11,51l,+,2,i,+,21,51l,+,3,51k,i,+,11,51l,+,2,i,+,21,51l,+,2,51k,i,+,12,51l,+,2,i,+,21,51l,+,2,51k,i,+,12,51l,+,3,51k,i,+,25,51l,+,4,i,+,5,51l,+,3,51k,i,+,25,51l,+,13,i,+,27,51l,+,13,i,+,27,51l,+,13,i,+,28,51l,+,12,i,+,290,51m,51l,+,3,51k,i,+,35,51m,51l,+,3,51k,i,+,35,51l,+,4,51k,i,+,34,51m,51l,+,2,51k,i,+,36,51m,51l,+,2,51k,i,+,14,51l,+,4,51k,i,+,10,51l,+,3,51k,i,+,19,51l,+,3,51k,i,+,11,51l,+,3,51k,i,+,19,51l,+,3,51k,i,+,11,51l,+,3,51k,i,+,19,51l,+,2,51k,i,+,6,51l,+,6,51k,i,+,22,51l,+,3,51k,i,+,5,51l,+,6,51k,i,+,22,51l,+,3,51k,i,+,5,51l,+,7,51k,i,+,21,51l,+,2,51k,i,+,6,51l,+,7,51k,i,+,21,51l,+,2,51k,i,+,381,51l,+,17,51k,50e,i,+,21,51l,+,17,51k,50f,i,+,21,51l,+,16,51k,50e,i,+,22,51l,+,16,51k,50f,i,+,14,51l,+,6,51k,i,+,33,51l,+,6,51k,i,+,33,51l,+,6,51k,i,+,33,51l,+,6,51k,i,+,33,51l,+,6,51k,i,+,40,51l,+,6,i,+,34,51l,+,6,i,+,34,51l,+,6,i,+,34,51l,+,6,i,+,27,51l,+,4,51k,i,+,35,51l,+,4,51k,i,+,41,51l,+,7,i,+,33,51l,+,7,i,+,33,51l,+,10,i,+,30,51l,+,21,i,+,19,51l,+,23,i,+,247,51k,i,+,40,51k,i,+,35,51l,+,4,51k,i,+,34,51l,+,5,51k,i,+,74,51l,+,7,51k,i,+,32,51l,+,7,51k,i,+,73,51l,+,9,51k,i,+,30,51l,+,9,51k,i,+,30,51l,+,9,51k,i,+,72,51l,+,9,51k,i,+,22,51l,+,17,51k,i,+,22,51l,+,17,51k,i,+,64,51l,+,16,51k,i,+,23,51l,+,2,i,+,4,51l,+,8,51k,i,+,23,51l,+,2,i,+,4,51l,+,8,51k,i,+,23,51l,+,2,i,+,4,51l,+,8,51k,i,+,116,51l,+,8,51k,i,+,35,51l,+,4,51k,i,+,35,51l,+,4,51k,i,+,248,51k,i,+,40,51k,i,+,40,51l,+,3,51k,i,+,36,51l,+,3,51k,i,+,36,51l,+,3,51k,i,+,36,51l,+,1,51k,i,+,38,51l,+,1,51k,i,+,38,51l,+,5,51k,i,+,34,51l,+,5,51k,i,+,34,51l,+,5,51k,i,+,34,51l,+,5,51k,i,+,973,i,i,¬i,+,10119,i,i,¬153,81,dv,-90,147,80,dv,-90,122,77,dv,-90,135,76,dv,-90,122,80,dv,-90,111,78,dv,-90,147,76,dv,-90,155,81,dv,-90,134,81,aj,-90,123,80,aj,-90,163,78,dv,-90,169,80,dv,-90,169,77,dv,-90,187,77,dv,-90,170,80,aj,-90,194,77,aj,-90,¬21,1,41,8,26,-8,0,0,:¬42,241,300,0,227,36,1,3,4,1,player0300,x,x,x,0,0,\[/code\]Description: None]\nend\nif <(#Eight) = [3]> then\n    set [save code v] to [\[b\]Title: Mario's Grand Sky Adventure\[code\]¬Mario's Grand Sky Adventure¬70b,i,+2,70c,i,i,i,+5,ab,bv,i,i,+73,70b,i,+2,70c,i,i,i,+80,70b,i,+1,72b,i,72aa,i,72an,i,df,",i,i,+78,70b,i,+1,72b,i,+1,72u,i,i,i,+79,70b,i,+1,72b,i,72ab,i,72am,i,i,i,+79,70b,i,+2,70c,i,i,i,+80,70b,i,+2,70c,i,i,i,+80,70b,i,+2,70c,i,i,i,c,i,+1,i,i,+77,72b,i,+2,72r,i,i,i,c,i,+1,i,i,+77,72b,i,+1,72ab,i,72am,i,i,i,c,i,+1,i,i,+77,70b,i,+1,70c,i,i,i,+1,c,i,+1,i,i,+77,70e,i,+1,70d,i,i,i,+255,awz,i,70p,i,i,i,+80,awz,i,aw,i,+1,70o,i,i,i,+78,awz,i,aw,i,+3,70o,i,i,i,+1,n,b,i,i,+78,awz,i,aw,i,70o,i,i,i,+83,70n,i,i,i,+168,cy,",i,i,+163,70i,i,+2,71j,i,i,i,+80,70b,i,+2,70c,i,i,i,+9,72x,i,70i,i,+3,70j,i,i,i,+64,70b,i,+2,70c,i,i,i,+1,d,i,i,i,+6,72y,i,70b,i,+3,70c,i,i,i,+64,70b,i,+2,70c,i,i,i,+1,n,c,i,i,+5,awz,i,70g,i,70b,i,+3,70c,i,i,i,+64,70b,i,+1,72b,i,72c,i,i,i,+1,d,i,i,i,+3,awz,i,aw,i,+1,70g,i,70b,i,+3,70c,i,i,i,+64,70b,i,+1,72b,i,72c,i,i,i,+7,awz,i,aw,i,70f,i,70e,i,+3,70d,i,i,i,+64,70b,i,+1,72b,i,72c,i,i,i,+80,72b,i,+2,72aa,i,72an,i,i,i,c,i,+1,i,i,+4,dp,i,i,i,+70,72b,i,+3,72t,i,i,i,c,i,+1,i,i,+76,70b,i,+1,72b,i,+1,72c,i,ay,",c,i,+1,i,i,+76,72b,i,+3,72r,i,i,i,c,i,+1,i,i,+76,70e,i,72e,i,+2,72q,i,i,i,c,i,+1,i,i,+167,cy,",i,i,+162,19i,i,+5,19j,i,i,i,+77,19e,i,+5,19d,i,i,i,+88,19h,i,19i,i,+19,19j,i,i,i,+61,bo,%,19f,i,19e,i,+19,19d,i,i,i,+51,19i,i,+5,19j,i,i,i,+77,19e,i,+5,19d,i,i,i,+166,70p,i,i,i,c,i,+1,i,i,+80,70o,i,i,i,c,i,+1,i,i,+80,70o,i,i,i,c,i,+1,i,i,+80,70n,i,i,i,c,i,+1,i,i,+333,awz,i,aw,i,+2,70p,i,i,i,+78,awz,i,aw,i,+3,70o,i,i,i,+1,d,i,i,i,+8,71h,i,70i,i,+9,70j,i,i,i,+57,awz,i,aw,i,70o,i,i,i,+1,n,ap,i,i,+5,awz,i,aw,i,+1,70g,i,70b,i,+9,70c,i,i,i,+53,71ar,i,i,i,+3,72x,i,70c,i,i,i,+1,n,c,i,i,+4,awz,i,aw,i,+2,70g,i,70b,i,+9,70c,i,i,i,+53,70c,i,i,i,+3,72z,i,70c,i,i,i,+1,d,i,i,i,+7,awz,i,70f,i,70e,i,+9,70d,i,i,i,+53,70c,i,i,i,dp,i,i,i,+1,72v,i,70c,i,i,i,+77,70c,i,i,i,+4,70n,i,i,i,+77,71aq,i,i,i,+3,awz,i,awy,i,i,i,+81,awz,i,aw,i,awy,i,i,i,+1,c,i,+1,i,i,+76,awz,i,aw,i,+1,awy,i,i,i,+1,c,i,+1,i,i,+73,70i,i,+6,72s,i,h,",c,i,+1,i,i,+73,70b,i,72b,i,+5,72u,i,i,i,c,i,+1,i,i,+73,70e,i,+2,72e,i,+3,72q,i,i,i,+246,19i,i,+3,19as,i,22h,i,22j,i,i,i,+77,19e,i,+3,19av,i,22g,i,22c,i,i,i,+80,awz,i,aw,i,22g,i,22c,i,i,i,c,i,+1,i,i,+3,70h,i,70i,i,+8,70j,i,i,i,+61,awz,i,aw,i,+1,22g,i,22c,i,i,i,c,i,+1,i,i,+2,awz,i,70g,i,70b,i,+8,70c,i,i,i,+63,awz,i,22g,i,22c,i,i,i,c,i,+1,i,i,awz,i,aw,i,+1,70g,i,70b,i,+8,70c,i,i,i,+64,22g,i,22c,i,i,i,c,i,+1,i,i,+3,71f,i,70e,i,+8,70d,i,i,i,+59,19i,i,+3,19as,i,22g,i,22c,i,ay,",+2,i,i,+74,19e,i,+3,19av,i,22f,i,22d,i,i,i,+332,72i,i,+4,72s,i,i,i,+9,72x,i,70i,i,+11,70j,i,i,i,+54,72b,i,+4,72t,i,i,i,+1,d,i,i,i,+6,72y,i,70b,i,+11,70c,i,i,i,+54,70b,i,+4,70c,i,i,i,+1,n,c,i,i,+2,awz,i,aw,i,+2,72g,i,70b,i,+11,70c,i,i,i,+54,70b,i,+4,70c,i,i,i,+1,d,i,i,i,+4,awz,i,aw,i,72g,i,70b,i,+11,70c,i,i,i,+54,70b,i,+4,70c,i,i,i,+9,71f,i,70e,i,+11,70d,i,i,i,+54,70b,i,+4,70c,i,h,",i,i,+77,70b,i,+4,70c,i,i,i,+66,70i,i,+2,70j,i,i,i,70h,i,70i,i,+3,i,i,+1,70b,i,+4,70c,i,19i,i,19j,i,bo,$,i,i,+63,70e,i,+2,70d,i,k,i,70f,i,70e,i,+1,70b,i,+1,i,i,+1,70b,i,+4,70c,i,19e,i,19d,i,i,i,+67,k,i,i,i,+3,71f,i,70b,i,i,i,+1,70b,i,+4,70c,i,i,i,+66,e,i,i,i,+1,l,i,i,i,+4,70g,i,i,i,+1,70e,i,+4,70d,i,i,i,+3,c,i,+1,i,i,+60,k,i,i,i,+1,l,i,i,i,+1,k,i,i,i,+1,70g,i,i,i,+1,19i,i,+7,19j,i,i,i,c,i,+1,i,i,+60,k,i,i,i,+1,e,i,i,i,+1,k,i,i,i,+1,70g,i,i,i,+1,19e,i,+7,19d,i,i,i,c,i,+1,i,i,+60,k,i,i,i,+4,k,i,i,i,+1,70g,i,i,i,+1,70i,i,+4,70j,i,i,i,+3,c,i,+1,i,i,+6,22h,i,22j,i,i,i,+51,70j,i,cd,",i,i,+3,l,i,i,i,71h,i,70b,i,i,i,+1,70b,i,+4,70c,i,i,i,+12,22g,i,22c,i,i,i,+51,70c,i,cd,",i,i,71h,i,70aj,i,71l,i,70k,i,u,£,70f,i,70e,i,i,i,+1,70b,i,+4,70c,i,19i,i,19j,i,bw,$,i,i,+9,22g,i,22c,i,i,i,+51,70c,i,cd,",i,i,70f,i,70d,i,cd,£,i,i,+2,19h,i,i,i,+1,70b,i,+4,70c,i,19e,i,19d,i,i,i,+8,72x,i,72i,i,70i,i,+5,70j,i,i,i,+46,70c,i,l,i,k,i,+2,cd,£,i,i,+2,19f,i,i,i,+1,70b,i,+4,70c,i,i,i,+10,72y,i,70b,i,+6,70c,i,i,i,+46,70c,i,l,i,k,i,bv,",k,i,cd,£,i,i,+2,70h,i,i,i,+1,72b,i,+4,72r,i,i,i,+6,awz,i,aw,i,+2,72g,i,70b,i,+6,70c,i,i,i,+46,70d,i,l,i,k,i,+2,cd,£,u,£,+2,70f,i,i,i,+1,72b,i,+3,72ab,i,72am,i,i,i,+7,awz,i,aw,i,+1,70g,i,70b,i,+6,70c,i,i,i,+46,19i,i,+4,19j,i,i,i,+2,j,i,i,i,+1,70b,i,+3,70c,i,i,i,c,i,+1,i,i,+7,71h,i,70b,i,+7,70c,i,i,i,+46,19e,i,+4,19d,i,i,i,+2,j,i,i,i,+1,70b,i,+3,70c,i,i,i,c,i,+1,72x,i,70i,i,+6,70b,i,+8,70c,i,i,i,+46,70i,i,+9,i,i,+1,70b,i,+3,70c,i,i,i,c,i,+1,72y,i,70b,i,+15,70c,i,i,i,+46,70b,i,+9,i,i,+1,70b,i,+3,70c,i,i,i,c,i,+1,71g,i,70b,i,+15,70c,i,i,i,+46,70b,i,+9,i,i,+1,70b,i,+3,70c,i,i,i,+2,71f,i,70e,i,+4,70b,i,+10,70c,i,i,i,+46,70e,i,+9,i,i,+1,70b,i,+3,70c,i,i,i,+8,71f,i,70b,i,+9,70c,i,i,i,+58,70b,i,+2,71b,i,71aa,i,71ar,i,i,i,+1,bo,",i,i,+5,72g,i,70b,i,+8,70c,i,i,i,+58,70b,i,+4,70aa,i,70i,i,70j,i,22h,i,22j,i,i,i,+4,72w,i,70b,i,+8,70c,i,i,i,+58,70e,i,+6,70d,i,22g,i,22c,i,i,i,+4,72v,i,70b,i,+8,70c,i,i,i,+58,19i,i,+7,40g,i,40e,i,19i,i,19j,i,bo,$,i,i,+2,70g,i,70b,i,+7,70c,i,i,i,+58,19e,i,+7,40g,i,40e,i,19e,i,19d,i,i,i,+3,70g,i,70b,i,+7,70c,i,i,i,+74,71f,i,70e,i,+7,70d,i,i,i,+143,70i,i,+7,71j,i,i,i,+75,70b,i,+7,70c,i,i,i,ci,i,i,i,+73,70b,i,+7,70c,i,i,i,+75,70b,i,+7,70c,i,i,i,+75,70b,i,+7,70c,i,i,i,c,i,+1,i,i,+72,70b,i,+7,70c,i,i,i,c,i,+1,i,i,+72,70b,i,+7,70c,i,i,i,c,i,+1,i,i,+72,70b,i,+5,72b,i,+1,72r,i,i,i,+75,70e,i,+7,72q,i,i,i,+253,66x,i,34i,i,34j,i,i,i,c,i,+1,i,i,+78,66y,i,65ab,i,65aq,i,i,i,c,i,+1,i,i,+77,66x,i,34b,i,34c,i,i,i,+1,c,i,+1,i,i,+77,66y,i,34b,i,34c,i,i,i,+1,c,i,+1,i,i,+76,66x,i,34b,i,+1,34c,i,i,i,+80,66y,i,34b,i,+1,34c,i,i,i,+79,66x,i,34b,i,+2,34c,i,i,i,+79,66y,i,66b,i,+2,66c,i,i,i,+78,66x,i,66b,i,+3,66c,i,i,i,+2,h,",i,i,+74,66y,i,66b,i,+3,66c,i,i,i,+77,66x,i,66b,i,+4,66c,i,i,i,+77,66y,i,66b,i,+4,66c,i,i,i,c,i,+1,i,i,+3,n,ap,i,i,+68,66x,i,66b,i,+5,66r,i,i,i,c,i,+1,i,i,+73,66y,i,66b,i,+4,66ab,i,66am,i,i,i,c,i,+1,i,i,+72,66x,i,66b,i,+5,66c,i,i,i,+1,c,i,+1,i,i,+72,66y,i,66b,i,+4,65b,i,65aa,i,65ar,i,i,i,+75,66g,i,66b,i,+4,65b,i,+1,65c,i,cu,i,i,i,+74,66g,i,66b,i,+4,65b,i,65ab,i,65aq,i,i,i,+75,66g,i,66b,i,+4,65b,i,65c,i,i,i,+76,66g,i,66b,i,+5,66c,i,i,i,+76,66g,i,66b,i,+5,66c,i,i,i,+3,c,i,+1,i,i,+70,66g,i,66b,i,+5,66c,i,i,i,+2,as,",c,i,+1,i,i,+70,66g,i,66b,i,+5,66c,i,i,i,+3,c,i,+1,i,i,+70,66g,i,66b,i,+5,66c,i,i,i,+76,66g,i,66b,i,+5,66c,i,i,i,+76,66g,i,66b,i,+5,66c,i,i,i,+76,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,+73,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,66x,i,66j,i,i,i,+2,65h,i,34i,i,+1,66s,i,i,i,+63,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,66y,i,34c,i,i,i,+2,34f,i,34e,i,66b,i,66t,i,i,i,+63,66g,i,66b,i,+5,66c,i,i,i,+3,66g,i,66c,i,i,i,+2,be,i,i,i,34g,i,34c,i,i,i,+1,ab,c,i,i,+60,66g,i,66b,i,+5,66c,i,i,i,+3,66g,i,66c,i,i,i,+4,34g,i,34c,i,i,i,+3,34p,i,i,i,+58,66g,i,66b,i,+5,66c,i,i,i,+2,dk,^,66g,i,66c,i,i,i,+2,34h,i,34i,i,34b,i,34c,i,i,i,+3,34o,i,i,i,+58,66g,i,66b,i,+5,66c,i,i,i,+2,dk,&,66g,i,66c,i,i,i,+2,34f,i,34e,i,34b,i,34c,i,i,i,+3,34o,i,i,i,+58,66g,i,66b,i,+5,66c,i,h,",i,i,+2,66g,i,66c,i,i,i,+2,be,i,i,i,34g,i,34ac,i,34l,i,+3,34ac,i,34k,i,i,i,+57,66g,i,66b,i,+5,66c,i,i,i,+3,34g,i,34c,i,i,i,+4,34g,i,34c,i,i,i,+3,34o,i,i,i,+58,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,34g,i,66c,i,i,i,+2,34h,i,34i,i,34b,i,34c,i,i,i,+3,34o,i,i,i,+58,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,34g,i,34c,i,i,i,dp,i,i,i,34g,i,34b,i,+1,34c,i,i,i,+3,34n,i,i,i,+58,66g,i,66b,i,+5,66c,i,i,i,c,i,+1,i,i,34f,i,34d,i,i,i,+2,34g,i,34b,i,+1,34c,i,ay,",i,i,+62,66g,i,66b,i,+5,66r,i,i,i,c,i,+1,i,i,u,%,i,i,+3,34g,i,34b,i,+1,34c,i,i,i,+1,dp,i,i,i,+60,66g,i,66b,i,+4,66ab,i,66am,i,i,i,+3,u,%,i,i,+3,34g,i,34b,i,+1,34c,i,i,i,+63,34g,i,34b,i,+4,34c,i,i,i,+4,34h,i,34i,i,+3,34b,i,+2,34c,i,i,i,+63,34g,i,34b,i,+4,34c,i,i,i,+4,34g,i,34b,i,+6,34c,i,i,i,+63,34g,i,34b,i,+4,34c,i,as,",i,i,+3,34g,i,34b,i,+6,34c,i,i,i,+63,34g,i,34b,i,+4,34c,i,i,i,+1,n,ap,i,i,+1,34g,i,34b,i,+6,34c,i,i,i,+63,34g,i,34b,i,+4,34c,i,i,i,+4,34g,i,34b,i,+6,34c,i,i,i,+1,ab,c,i,i,+60,34g,i,34b,i,+4,34c,i,i,i,+4,34g,i,34b,i,+6,34c,i,i,i,+3,34p,i,i,i,+58,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,i,i,+1,34g,i,34b,i,+6,34c,i,ay,",i,i,+2,34o,i,i,i,+58,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,i,i,+1,34g,i,34b,i,+6,34c,i,i,i,+3,34o,i,i,i,+58,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,i,i,+1,34g,i,34b,i,+6,34ac,i,34l,i,+3,34ac,i,34k,i,i,i,+57,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,i,i,66x,i,34b,i,+7,34c,i,i,i,+3,34o,i,i,i,+58,34g,i,34b,i,+4,34c,i,i,i,+3,66y,i,34b,i,+7,34c,i,i,i,+3,34o,i,i,i,+58,34g,i,34b,i,+3,34ab,i,34d,i,i,i,+3,34f,i,34e,i,+7,34d,i,i,i,+3,34n,i,i,i,+58,34g,i,34b,i,+3,34c,i,e,i,i,i,+77,34g,i,34b,i,+3,34c,i,e,i,i,i,+5,c,i,+1,i,i,+69,34g,i,34b,i,+3,34c,i,e,i,i,i,+5,c,i,+1,i,i,+69,34g,i,34b,i,+3,34aa,i,34i,i,+4,34j,i,i,i,c,i,+1,i,i,+69,34g,i,34b,i,+9,34c,i,i,i,c,i,+1,i,i,+69,34g,i,34b,i,+9,34c,i,i,i,c,i,+1,i,i,+69,34g,i,34b,i,+9,34c,i,i,i,+72,34g,i,34b,i,+9,34c,i,bha,i,bh,bg,i,i,+70,34g,i,34b,i,+9,34c,i,i,i,+72,34g,i,34b,i,+9,34c,i,i,i,+72,34g,i,34b,i,+9,34c,i,ay,",i,i,+71,34g,i,34b,i,+9,34c,i,bhb,i,+1,bha,i,bh,bg,i,i,+68,34g,i,34b,i,+9,34aa,i,34i,i,+2,34j,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,+68,34g,i,34b,i,+12,65b,i,65aa,i,65ar,i,i,i,+67,34g,i,34b,i,+12,65b,i,+1,65c,i,cu,i,i,i,+66,34g,i,34b,i,+12,65b,i,65ab,i,65aq,i,i,i,+67,34g,i,34b,i,+13,34c,i,i,i,+68,34g,i,34b,i,+2,65b,i,+1,34b,i,+1,65b,i,+1,34b,i,+4,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+2,65b,i,34b,i,65b,i,+3,34b,i,+4,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,65b,i,34b,i,65b,i,34b,i,+1,65b,i,+2,34b,i,+4,34c,i,i,i,c,i,+1,as,",i,i,+1,n,ap,i,i,+61,34g,i,34b,i,+13,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,c,i,+1,i,i,+65,34g,i,34b,i,+13,34c,i,i,i,+68,34g,i,34b,i,+12,65b,i,65aa,i,65ar,i,i,i,+67,34g,i,34b,i,+12,65b,i,+1,65c,i,cu,i,i,i,+66,34g,i,34b,i,+10,65b,i,+1,34b,i,65ab,i,65aq,i,i,i,+67,34g,i,34b,i,+13,34c,i,i,i,+68,34g,i,34b,i,+4,34ab,i,34e,i,+7,34d,i,i,i,+68,34g,i,34b,i,+4,34c,i,i,i,+12,65h,i,34i,i,+9,34j,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,+8,df,$,i,i,+1,65h,i,34b,i,+10,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,+10,65h,i,34b,i,+11,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,+3,65h,i,34i,i,+5,34b,i,+12,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,+3,34g,i,34b,i,+18,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,i,i,34g,i,34b,i,+18,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,dk,^,34g,i,34b,i,+18,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,c,i,+1,dk,&,34g,i,34b,i,+18,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,h,",c,i,+1,i,i,34g,i,34b,i,+18,34c,i,i,i,+52,34g,i,34b,i,+4,34c,i,i,i,+3,34g,i,34b,i,+18,34c,i,i,i,+52,66w,i,34b,i,+4,34c,i,i,i,+3,65f,i,34e,i,+18,34d,i,i,i,+52,66v,i,34b,i,+3,66b,i,66c,i,i,i,+78,66w,i,34b,i,+2,66b,i,66aa,i,66an,i,i,i,+77,66v,i,34b,i,66b,i,34b,i,66b,i,+1,66t,i,i,i,+78,66w,i,34b,i,+3,34c,i,i,i,+78,66v,i,34b,i,+2,65b,i,65c,i,i,i,+79,66w,i,34b,i,+1,65b,i,65c,i,bha,i,bh,bg,i,i,+77,66v,i,34b,i,+1,65b,i,65c,i,i,i,+80,66w,i,34b,i,+1,34c,i,i,i,c,i,+1,i,i,+77,66v,i,34b,i,+1,34c,i,i,i,c,i,+1,i,i,+78,66w,i,34b,i,34c,i,i,i,c,i,+1,i,i,+78,66v,i,34b,i,34c,i,i,i,c,i,+1,i,i,+79,66w,i,65aa,i,65ar,i,i,i,+81,66v,i,34e,i,34d,i,i,i,+159,70i,i,+4,72s,i,i,i,+3,h,",i,i,+73,70b,i,+2,72b,i,+1,72t,i,i,i,+78,70b,i,+4,70c,i,i,i,+78,70b,i,+4,70c,i,i,i,+78,70b,i,+4,70c,i,i,i,+78,70b,i,+4,70c,i,i,i,+78,70b,i,+3,72b,i,72aa,i,72an,i,i,i,+77,70b,i,+3,72b,i,+1,72u,i,i,i,+77,70b,i,+3,72b,i,72ab,i,72am,i,i,i,+77,70b,i,+4,70c,i,i,i,+6,72x,i,70i,i,+8,70j,i,i,i,+60,70b,i,+4,70c,i,i,i,+6,72y,i,70b,i,+8,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+3,awz,i,aw,i,+1,70g,i,70b,i,+8,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+4,awz,i,aw,i,70g,i,70b,i,+8,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+1,awz,i,aw,i,+3,70g,i,70b,i,+8,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+5,71h,i,70b,i,+9,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+5,71g,i,70b,i,+9,70c,i,i,i,+60,70b,i,+4,70c,i,i,i,+5,71f,i,70b,i,+3,70ab,i,70e,i,+4,70d,i,i,i,+60,70b,i,+1,70ab,i,70e,i,+1,70d,i,i,i,+6,70g,i,70b,i,+2,70c,i,i,i,+66,70e,i,+1,70d,i,i,i,+9,70f,i,70e,i,+2,70d,i,i,i,+234,i,i,i,i,¬i,+,2,73g,73b,+,2,73c,i,+,79,73g,73b,+,2,73c,i,+,79,73g,73b,+,2,73c,i,+,80,73e,+,2,73d,i,+,80,75e,i,+,83,75f,i,+,337,75e,i,+,83,75f,i,+,335,73i,+,4,73j,i,+,78,73b,+,4,73c,i,+,78,73b,+,4,73c,i,+,78,73b,+,4,73c,i,+,78,73e,+,4,73d,i,+,336,75b,i,+,83,73h,73i,+,10,73j,i,+,71,73g,73b,+,10,i,+,72,73g,73b,+,10,i,+,72,73g,73b,+,10,i,+,72,73f,73e,+,10,73d,i,+,72,75e,i,+,83,75g,i,+,83,75f,i,+,1184,73i,+,3,73j,i,+,79,73b,+,3,73c,i,+,79,73b,+,3,73c,i,+,79,73e,+,3,73d,i,+,334,73i,+,5,73j,75b,i,+,76,73b,+,5,73aa,73i,+,13,73j,i,+,62,73b,+,19,i,+,64,73b,+,19,i,+,64,73b,+,5,73ab,73e,+,13,73d,i,+,62,73b,+,5,73c,i,+,77,73b,+,5,73c,i,+,77,73b,+,5,73c,i,+,77,73b,+,5,73c,i,+,77,73b,+,5,73c,i,+,77,73e,+,5,73d,75e,i,+,83,75g,i,+,83,75f,i,+,336,73p,i,+,78,73i,+,4,73aa,73i,+,17,73j,i,+,59,73b,+,14,i,+,8,73c,i,+,59,73b,+,14,i,+,8,73c,i,+,59,73e,+,4,73ab,73e,+,17,73d,i,+,64,73n,i,+,422,73h,73i,+,11,73j,i,+,71,73b,+,11,i,+,72,73b,+,11,i,+,72,73b,+,11,i,+,72,73e,+,11,73d,i,+,157,75e,i,+,65,73i,+,9,i,+,7,75f,i,+,65,73b,+,7,i,+,76,73b,+,8,i,+,75,73b,+,9,i,+,74,73b,+,9,i,+,74,73b,+,9,i,+,74,73b,+,9,i,+,74,73b,+,8,i,+,8,75e,i,+,65,73b,+,3,73ab,73e,+,4,i,+,7,75g,i,+,65,73b,+,3,73c,i,+,12,75f,i,+,6,73h,73i,+,2,73j,i,+,53,73b,+,3,73c,i,+,19,73h,73b,+,3,i,+,54,73b,+,3,73c,i,+,11,75b,i,+,5,73h,73b,+,4,i,+,54,73e,+,3,73d,i,+,10,73h,73i,+,6,73b,+,5,i,+,70,73g,73b,+,11,i,+,71,73g,73b,+,3,73ab,73e,+,2,73b,+,2,i,+,72,73g,73b,+,3,i,+,79,73g,73b,+,3,i,+,79,73g,73b,+,3,73ac,73l,+,1,73k,i,+,75,73g,73b,+,3,73c,i,+,2,73h,73b,i,+,73,73g,73b,+,3,73c,i,+,1,73h,73b,+,2,i,+,73,73b,+,3,73aa,73i,+,1,73b,+,3,i,+,73,73g,73b,+,9,i,+,72,73h,73b,+,11,i,+,67,73i,+,3,73b,+,12,i,+,67,73e,+,16,73d,i,+,158,73h,73i,73j,i,+,82,73b,73c,i,+,82,73e,73d,i,+,168,75e,i,+,83,75f,i,+,252,75b,i,+,85,61j,i,+,83,61c,i,+,83,61d,i,+,83,47e,i,+,83,47g,i,+,83,47g,i,+,83,47f,i,+,168,63h,63i,63j,i,+,81,63g,63b,63c,i,+,81,63g,63b,63c,i,+,80,62p,63f,63e,63d,i,+,80,62af,62i,+,3,62j,i,+,78,62g,62b,+,3,62c,i,+,78,62f,62e,+,3,62d,i,+,163,47e,i,+,83,47g,i,+,83,47g,i,+,83,47f,i,+,167,63i,+,2,63j,i,+,80,63b,+,2,63c,i,+,80,63b,+,2,63c,i,+,80,63b,+,2,63c,i,+,80,63e,+,2,63d,i,+,335,62i,+,11,62j,47e,i,+,70,62b,+,11,i,47g,i,+,70,62b,+,11,62c,47f,i,+,70,62b,+,11,62aa,62j,i,44b,44e,+,1,i,+,66,62b,+,11,i,62c,i,+,1,44b,44e,i,+,66,62b,+,11,i,62c,44b,44e,+,2,i,+,66,62b,+,12,62c,i,+,70,62b,+,12,62c,i,44b,44e,+,1,i,+,66,62b,+,11,i,62c,44b,44e,+,2,i,+,66,62b,+,10,i,+,1,62c,i,+,1,44b,44e,i,+,66,62b,+,10,i,+,1,62c,47e,i,+,69,62b,+,10,i,+,1,62c,47g,i,+,68,62g,62b,+,10,i,+,1,62c,47g,i,+,68,62g,62b,+,7,62ab,62e,i,+,2,62d,47f,i,+,68,62g,62b,+,5,i,+,77,62b,+,6,i,+,77,62b,+,6,i,+,77,62b,+,6,i,+,77,62g,62b,+,5,i,+,8,44b,44e,+,1,i,+,65,62g,62b,+,5,i,+,7,44b,44e,+,2,i,+,65,62g,62b,+,5,i,+,9,44b,44e,i,+,65,62g,62b,+,5,i,+,77,62g,62b,+,4,i,+,8,47e,44b,44e,+,1,i,+,65,62g,62b,+,4,i,+,8,47g,i,+,1,44b,i,+,65,62g,62b,+,3,62ab,62d,i,+,7,47f,i,44b,44e,i,+,64,62h,62b,+,4,62c,i,+,77,62f,62b,+,4,62c,i,+,78,62g,62b,+,3,62c,i,+,78,62f,62e,+,3,62d,47e,i,+,83,47g,i,+,83,47g,i,+,83,47g,i,+,83,47f,i,+,682,47e,i,+,83,47g,i,+,83,47f,i,+,337,62h,62i,+,1,62j,i,+,80,62g,62b,+,1,62c,i,+,80,62g,62b,+,1,62c,i,+,80,62g,62b,+,1,62c,i,+,80,62f,62e,+,1,62d,i,+,251,47e,i,+,83,47g,i,+,83,47g,i,+,83,47f,i,+,73,62h,62i,+,13,62j,i,+,68,62g,62b,+,12,i,+,70,62g,62b,+,11,i,+,71,62g,62b,+,10,i,+,72,62g,62b,+,4,i,+,78,62g,62b,+,4,i,+,78,62g,62b,+,4,i,+,78,62g,62b,+,4,i,+,78,62g,62b,+,4,i,+,78,62g,62b,+,4,i,+,78,62f,62e,+,5,62d,i,+,77,47e,i,+,83,47g,i,+,83,47f,i,+,509,47e,i,+,83,47g,i,+,83,47g,i,+,83,47f,i,+,83,61j,i,+,83,61c,i,+,79,75e,i,+,2,61c,i,+,79,75f,i,+,2,61d,i,+,420,75e,i,+,83,75g,i,+,83,75f,i,+,82,73h,73i,+,7,73j,i,+,74,73g,73b,+,7,i,+,75,73g,73b,+,7,i,+,75,73g,73b,+,7,i,+,75,73g,73b,+,7,i,+,75,73f,73e,+,6,i,+,579,i,i,¬i,+,21332,i,i,¬90,10,bb,180,93,82,bb,0,98,80,bb,180,90,20,bb,90,¬22,1,72,16,-8,-8,0,0,:22,74,10,20,-8,-8,6,5,:¬85,251,400,0,237,10,1,8,5,1,player0300,x,x,x,1,0,\[/code\]Description: None]\nend\nif <(#Eight) = [4]> then\n    set [save code v] to [¬Iggy's Fleet of Doom¬70b,i,+3,70c,i,i,i,+2,72g,i,72b,i,+9,72c,i,i,i,+72,65g,i,34b,i,+2,65b,i,65c,i,i,i,+57,34b,i,+2,34c,i,22g,i,22c,i,34g,i,34b,i,+7,34c,i,i,i,+56,70ab,i,70e,i,70b,i,70ab,i,70e,i,+3,70b,i,+4,70c,i,o,i,70g,i,70b,i,+54,ib,i,i,i,72b,i,+1,72c,i,i,i,+4,71g,i,72b,i,+7,70b,i,71b,i,+4,71c,i,i,i,+49,70b,i,72b,i,+2,72c,i,i,i,+2,72g,i,72b,i,+9,72c,i,i,i,+72,65g,i,34b,i,65ab,i,34e,i,65e,i,65c,i,i,i,+57,34b,i,+2,34c,i,22f,i,22d,i,34g,i,34b,i,+7,34c,i,i,i,+56,70c,i,o,i,70f,i,70c,i,i,i,+3,70g,i,70ab,i,70e,i,+2,70d,i,o,i,70g,i,70b,i,+54,ib,i,i,i,72ab,i,72e,i,72c,i,i,i,+4,71g,i,72b,i,72ab,i,72e,i,72b,i,+4,70b,i,71b,i,+4,71c,i,i,i,+49,72ab,i,72e,i,70e,i,72b,i,72c,i,i,i,+2,72g,i,72b,i,+9,72c,i,i,i,+72,65g,i,34b,i,34c,i,q,i,+1,65o,i,i,i,+57,34b,i,+2,34c,i,i,i,+1,34g,i,34b,i,+7,34c,i,i,i,+56,70c,i,o,i,+1,70o,i,i,i,+3,70g,i,70c,i,o,i,+4,70g,i,70b,i,+54,ib,i,i,i,72c,i,o,i,72o,i,i,i,+4,71g,i,72b,i,72c,i,o,i,72g,i,72b,i,+3,70b,i,71b,i,+4,71c,i,i,i,+49,70c,i,o,i,+1,72g,i,72c,i,i,i,+2,72g,i,72b,i,72ab,i,72e,i,+1,72b,i,+5,72c,i,i,i,+72,65g,i,34b,i,65aa,i,34i,i,65i,i,65c,i,i,i,+57,34e,i,+2,34c,i,i,i,+1,34g,i,34b,i,+1,34ab,i,34e,i,+2,34b,i,+1,34c,i,i,i,+56,70aa,i,70i,i,+1,70c,i,i,i,+3,70g,i,70c,i,o,i,+4,70g,i,70b,i,+54,ib,i,i,i,72aa,i,72i,i,72c,i,i,i,+4,71g,i,72b,i,72aa,i,72i,i,72b,i,70ab,i,72e,i,70b,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+49,71c,i,o,i,+1,72g,i,72c,i,i,i,+2,72g,i,72b,i,72c,i,o,i,+1,72g,i,72b,i,+1,72ab,i,72e,i,+1,72c,i,i,i,+72,65g,i,34b,i,+1,65b,i,+1,65c,i,i,i,+57,1aj,i,1l,i,1k,i,34o,i,i,i,+1,34g,i,34b,i,+1,34c,i,i,i,1m,i,1j,i,34g,i,34b,i,34c,i,i,i,+56,70e,i,+2,70d,i,i,i,+3,70f,i,70ad,i,70l,i,+4,70e,i,+55,ib,i,i,i,72b,i,+1,72c,i,i,i,+4,71g,i,72b,i,+3,72c,i,o,i,72g,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+49,70c,i,o,i,+1,70g,i,70c,i,i,i,+2,72g,i,72b,i,72aa,i,72j,i,o,i,72g,i,72b,i,+1,72c,i,o,i,+1,72o,i,i,i,+65,c,i,i,i,+5,65g,i,34b,i,65ab,i,34e,i,65e,i,65c,i,i,i,+57,1d,i,34h,i,34i,i,34c,i,i,i,+1,34g,i,34b,i,+1,34aa,i,34i,i,34j,i,1o,i,34g,i,34b,i,34c,i,i,i,+129,72ab,i,72e,i,72c,i,i,i,+4,71g,i,72b,i,+3,70aa,i,72i,i,70b,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+49,70c,i,o,i,+1,70g,i,70c,i,i,i,+2,72g,i,72b,i,+1,72aa,i,72i,i,72b,i,+1,70b,i,70aa,i,70i,i,+1,70c,i,i,i,+65,c,i,i,i,+5,65g,i,34b,i,34c,i,q,i,+1,65o,i,i,i,+57,34i,i,34b,i,+1,34c,i,c,i,i,i,34g,i,34b,i,+3,34c,i,1o,i,34g,i,34b,i,34c,i,i,i,+129,72c,i,o,i,72o,i,i,i,+4,71g,i,72b,i,72ab,i,72e,i,72b,i,+4,70b,i,71b,i,+4,71c,i,i,i,+49,70aa,i,70i,i,+1,70b,i,70c,i,i,i,+2,72g,i,72b,i,+6,70b,i,+2,70c,i,i,i,+65,c,i,i,i,+5,65g,i,34b,i,65aa,i,34i,i,65i,i,65c,i,i,i,+57,34b,i,+2,34c,i,c,i,i,i,34ag,i,34e,i,+1,34b,i,+1,34c,i,1n,i,34g,i,34b,i,34c,i,i,i,+59,34p,i,i,i,+68,72c,i,o,i,72o,i,i,i,+4,71g,i,72b,i,72c,i,o,i,72f,i,72b,i,+3,70b,i,71b,i,+4,71c,i,i,i,+49,70b,i,70ab,i,70e,i,70b,i,70c,i,i,i,+2,72w,i,72b,i,+6,70b,i,+2,70c,i,i,i,+72,65g,i,34b,i,+1,65b,i,+1,65c,i,i,i,+57,34b,i,+2,34c,i,c,i,i,i,34o,i,1m,i,1k,i,34g,i,34b,i,34aa,i,34i,i,34b,i,+1,34c,i,i,i,+58,65h,i,34c,i,i,i,+68,72aa,i,72i,i,72c,i,i,i,+4,71g,i,72b,i,72c,i,o,i,+1,72g,i,72b,i,+2,70b,i,71b,i,+4,71c,i,i,i,+49,70b,i,70c,i,o,i,70g,i,70c,i,c,i,i,i,+1,72v,i,72b,i,+2,72ab,i,72e,i,72b,i,+1,70b,i,+2,70c,i,i,i,+72,65g,i,34b,i,65ab,i,34e,i,65e,i,65c,i,i,i,+57,34b,i,+2,34c,i,c,i,i,i,34af,i,34i,i,+1,34b,i,+5,34c,i,i,i,+57,65h,i,34b,i,34c,i,i,i,+68,72b,i,+1,72c,i,c,i,i,i,+3,71g,i,72b,i,72ac,i,72l,i,72i,i,72b,i,+3,70b,i,71b,i,+4,71c,i,i,i,+49,70b,i,70aa,i,70i,i,70b,i,70c,i,c,i,i,i,+2,72w,i,72b,i,+1,72c,i,o,i,72g,i,72b,i,70b,i,+2,70c,i,i,i,+72,65g,i,34b,i,34c,i,q,i,+1,65o,i,i,i,+57,34b,i,+2,34c,i,c,i,i,i,34g,i,34b,i,+7,34c,i,i,i,+57,65ag,i,34e,i,34c,i,c,i,+1,34p,i,c,i,+1,34ai,i,34l,i,+1,34i,i,+58,ib,i,i,i,72ab,i,72e,i,72c,i,c,i,i,i,+3,71g,i,72b,i,72c,i,o,i,72g,i,72b,i,+1,70b,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+49,70ab,i,70e,i,70b,i,+1,70c,i,c,i,i,i,+2,72v,i,72b,i,+1,72c,i,o,i,72g,i,72b,i,70b,i,+2,70c,i,i,i,+67,c,i,i,i,+3,65f,i,34b,i,65aa,i,34i,i,65i,i,65c,i,i,i,+57,34b,i,+2,34c,i,i,i,+1,34f,i,34e,i,+2,34ab,i,34e,i,+2,34b,i,34c,i,i,i,+57,65o,i,q,i,34o,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+57,ibbb,i,i,i,71c,i,o,i,72o,i,c,i,i,i,+3,71g,i,72b,i,72aa,i,72i,i,72ab,i,72e,i,+1,70e,i,70b,i,+1,71b,i,+4,71c,i,i,i,+49,70c,i,o,i,72g,i,72b,i,72c,i,i,i,+4,72w,i,72b,i,72c,i,o,i,72g,i,72ab,i,72e,i,70b,i,+1,70c,i,i,i,+67,c,i,i,i,+4,65f,i,34b,i,+1,65b,i,65c,i,i,i,+57,34b,i,+2,34c,i,i,i,+1,n,bv,i,i,+2,34o,i,1m,i,1l,i,1k,i,34g,i,34c,i,i,i,+57,65af,i,65i,i,65c,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+58,ib,i,i,i,72aa,i,72i,i,72r,i,c,i,i,i,+3,71f,i,72b,i,+2,72c,i,o,i,+2,72g,i,70b,i,71b,i,+4,71c,i,i,i,+49,72aa,i,70i,i,72b,i,+1,72c,i,p,",i,i,+3,72v,i,72b,i,72aa,i,72i,i,72b,i,72c,i,o,i,70g,i,70b,i,70c,i,i,i,+67,c,i,i,i,+5,65f,i,34b,i,65b,i,65c,i,i,i,+57,34b,i,+2,34c,i,i,i,+5,34af,i,34i,i,+2,34b,i,34c,i,i,i,+57,65g,i,65b,i,65c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+58,ib,i,i,i,72b,i,72ab,i,72am,i,i,i,+5,71f,i,72b,i,+1,72aa,i,72i,i,+1,70i,i,70b,i,+1,71b,i,+4,71c,i,i,i,+49,70e,i,+3,70d,i,i,i,+1,c,i,i,i,+2,72w,i,72b,i,+2,72aa,i,72i,i,70b,i,+1,70c,i,i,i,+67,c,i,i,i,+6,65f,i,65b,i,65c,i,i,i,y,",i,i,+55,34b,i,+2,34c,i,i,i,+1,c,i,i,i,c,i,i,i,34g,i,34b,i,+3,34c,i,i,i,+57,65ag,i,65e,i,65c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+57,ib,i,i,i,72b,i,72r,i,i,i,+7,71f,i,72b,i,+3,70b,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+57,c,i,i,i,+1,72v,i,72e,i,+4,70e,i,+1,70d,i,i,i,+76,65f,i,65c,i,i,i,+57,34b,i,34ab,i,34e,i,34c,i,i,i,+1,c,i,i,i,c,i,i,i,34g,i,34ab,i,34e,i,34b,i,+1,34c,i,i,i,+57,65o,i,q,i,65o,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+58,ib,i,i,i,72ab,i,72am,i,i,i,+1,65p,i,i,i,+5,72w,i,72b,i,+2,70b,i,72b,i,70b,i,71b,i,+4,71c,i,i,i,+57,c,i,i,i,+88,65o,i,i,i,+57,34b,i,34c,i,1p,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,34g,i,34c,i,1p,i,34g,i,34b,i,34c,i,i,i,+57,65af,i,65i,i,65c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+60,ib,i,i,i,72d,i,i,i,+2,65o,i,i,i,+5,72v,i,72b,i,+1,70ab,i,72e,i,70b,i,+1,71b,i,+4,71c,i,i,i,+57,c,i,i,i,+88,65o,i,i,i,+57,34b,i,34c,i,1o,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,34f,i,34d,i,1n,i,34g,i,34b,i,34c,i,i,i,+57,65g,i,65b,i,65c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+59,i,i,+4,65o,i,i,i,+6,72w,i,72b,i,72c,i,o,i,72g,i,71b,i,+5,71c,i,i,i,+53,70p,i,i,i,+1,c,i,i,i,+75,1j,i,i,i,+3,c,i,i,i,+7,65o,i,i,i,+57,34b,i,34c,i,1o,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,o,i,+2,34ag,i,34e,i,34c,i,i,i,+57,65ag,i,65e,i,65c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+58,i,i,+3,65h,i,65c,i,c,i,i,i,+5,72v,i,72b,i,70aa,i,72i,i,70ab,i,70e,i,+1,71b,i,+3,71c,i,i,i,+52,71h,i,70c,i,i,i,+3,72x,i,72j,i,o,i,72h,i,72i,i,70i,i,+4,70j,i,i,i,+63,1c,i,i,i,+3,c,i,i,i,+7,65o,i,i,i,+57,34b,i,34c,i,1o,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,o,i,p,",o,i,34o,i,dd,!",34o,i,i,i,+57,65o,i,q,i,65o,i,c,i,+1,34n,i,c,i,+1,34ae,i,34l,i,+1,34e,i,+58,ibb,i,i,i,+2,65h,i,65b,i,65c,i,c,i,i,i,+6,72w,i,72b,i,70b,i,70c,i,o,i,+1,71g,i,71b,i,+2,71c,i,i,i,+51,71h,i,70ab,i,70d,i,i,i,+3,72y,i,72aa,i,72aj,i,72e,i,+1,70b,i,+4,70c,i,i,i,+63,1c,i,ba,!,i,i,dq,!,i,i,c,i,i,i,+7,65o,i,i,i,+57,34ab,i,34d,i,1o,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,o,i,+2,34af,i,34i,i,34c,i,i,i,+57,65af,i,65i,i,65c,i,i,i,+69,65h,i,34b,i,65b,i,65c,i,c,i,i,i,+6,72v,i,72b,i,+1,70aa,i,70i,i,+1,71b,i,+3,71c,i,i,i,+51,71g,i,70c,i,o,i,p,",i,i,+2,72g,i,72b,i,72c,i,o,i,+1,70g,i,70b,i,+3,70c,i,i,i,+63,1c,i,i,i,+3,c,i,i,i,+7,65n,i,i,i,+57,34c,i,1m,i,1d,i,34o,i,i,i,+1,c,i,i,i,c,i,i,i,o,i,+2,34g,i,34b,i,34c,i,i,i,+57,65f,i,65b,i,65c,i,i,i,+69,65ag,i,34e,i,65e,i,65c,i,c,i,i,i,+7,72w,i,72b,i,70ab,i,70e,i,71b,i,+4,71c,i,i,i,+51,71f,i,70aa,i,70j,i,i,i,+3,72w,i,72b,i,72aa,i,72i,i,+1,70b,i,+4,70c,i,i,i,+63,1d,i,i,i,+3,c,i,i,i,+66,34aa,i,34i,i,+1,34c,i,i,i,+1,c,i,i,i,c,i,i,i,o,i,p,",o,i,34g,i,34b,i,34c,i,i,i,+58,65f,i,65c,i,i,i,+69,65o,i,q,i,+1,65o,i,c,i,i,i,+7,72v,i,72b,i,72c,i,o,i,71g,i,71b,i,+3,71c,i,i,i,+52,71f,i,70c,i,i,i,+3,72v,i,72e,i,+3,70e,i,+4,70d,i,i,i,+136,34b,i,+2,34c,i,i,i,+5,o,i,+2,34g,i,34b,i,34c,i,i,i,+59,65n,i,i,i,+69,65af,i,34i,i,65i,i,65c,i,i,i,+1,n,c,i,i,+6,71f,i,70aa,i,70i,i,71b,i,+4,71c,i,i,i,+53,70n,i,i,i,+1,c,i,i,i,+148,34b,i,+2,34c,i,o,i,+8,34g,i,34b,i,34c,i,i,i,+130,65g,i,34b,i,65b,i,65c,i,i,i,+1,d,i,i,i,+1,d,i,i,i,+4,71f,i,71b,i,+5,71c,i,i,i,+57,c,i,i,i,+147,34b,i,+2,34c,i,o,i,p,",o,i,+1,p,",o,i,+1,p,",o,i,34g,i,34b,i,34c,i,i,i,+130,65ag,i,34e,i,65e,i,65c,i,c,i,i,i,n,c,i,i,+1,n,b,i,i,+5,71f,i,70b,i,71b,i,+3,71c,i,i,i,+50,ba,!,i,i,do,!,i,i,+3,c,i,i,i,+78,c,i,i,i,+1,d,i,i,i,+64,34b,i,34ab,i,34e,i,34c,i,o,i,+8,34g,i,34b,i,34c,i,i,i,+61,34p,i,i,i,+67,65o,i,q,i,+1,65o,i,c,i,i,i,d,i,i,i,+1,d,i,i,i,+6,71f,i,71b,i,+3,71c,i,i,i,+53,72p,i,i,i,+1,c,i,i,i,+79,c,i,i,i,+1,n,c,i,i,+64,34b,i,34c,i,1a,i,34o,i,c,i,i,i,+3,34h,i,34i,i,+2,34b,i,+1,34c,i,i,i,+60,65h,i,34c,i,i,i,+67,65af,i,34i,i,65i,i,65c,i,c,i,i,i,n,c,i,i,+10,71f,i,71b,i,+2,71c,i,i,i,+52,72x,i,72c,i,i,i,+3,72x,i,72aj,i,72l,i,+1,70i,i,+5,70j,i,i,i,+67,c,i,i,i,+1,d,i,i,i,+64,34b,i,34aa,i,34i,i,34c,i,c,i,i,i,+3,34g,i,34b,i,+4,34c,i,i,i,+59,65h,i,34b,i,34c,i,i,i,+67,65g,i,34b,i,65b,i,65c,i,c,i,i,i,+13,71f,i,71b,i,+1,71c,i,i,i,+52,72y,i,72c,i,p,",i,i,+2,72y,i,72c,i,o,i,+1,70g,i,70b,i,+4,70c,i,i,i,+136,34b,i,+2,34c,i,c,i,i,i,+3,34ag,i,34e,i,+3,34b,i,34c,i,i,i,+58,65h,i,34b,i,+1,34c,i,i,i,+67,65ag,i,34e,i,65e,i,65c,i,p,",i,i,+14,71f,i,70b,i,70c,i,i,i,+52,72w,i,72c,i,i,i,+3,72w,i,72aa,i,72i,i,+1,70b,i,+5,70c,i,i,i,+136,34e,i,34b,i,+1,34c,i,c,i,i,i,+3,34o,i,1ai,i,1l,i,+1,1k,i,34g,i,34c,i,i,i,+57,65h,i,34b,i,+2,34c,i,c,i,+1,34p,i,c,i,+1,34h,i,34i,i,+41,34j,i,i,i,+18,65o,i,q,i,+1,65o,i,i,i,+16,71f,i,70c,i,i,i,+52,72v,i,72c,i,i,i,+3,72v,i,72e,i,+2,70e,i,+5,70d,i,i,i,+136,1j,i,34g,i,34b,i,34c,i,i,i,+4,34o,i,1o,i,34h,i,34i,i,+1,34b,i,34c,i,i,i,+57,65g,i,34ab,i,34e,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+18,65af,i,34i,i,65i,i,65c,i,i,i,+2,34h,i,34i,i,+10,65i,i,65j,i,i,i,71n,i,i,i,+53,72n,i,i,i,+1,c,i,i,i,+148,1c,i,34g,i,34b,i,34c,i,i,i,ba,!,i,i,dp,!,i,i,34o,i,1n,i,34g,i,34b,i,+2,34c,i,i,i,+57,65g,i,34c,i,q,i,+1,34o,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+18,65g,i,65b,i,+1,65c,i,i,i,+2,34ag,i,34e,i,+1,34b,i,34ab,i,34e,i,+1,34b,i,+2,65b,i,+2,65c,i,i,i,+59,c,i,i,i,+79,c,i,i,i,+66,1c,i,34g,i,34b,i,34c,i,i,i,+4,34af,i,34i,i,34b,i,+3,34c,i,i,i,+57,65g,i,34aa,i,34i,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+18,65ag,i,34e,i,65e,i,65c,i,i,i,+2,34o,i,q,i,+1,34g,i,34c,i,q,i,+1,34g,i,34b,i,+1,65b,i,+2,65c,i,i,i,+55,34p,i,dk,",i,i,c,i,i,i,+80,c,i,i,i,+66,1c,i,34g,i,34b,i,34c,i,19i,i,19j,i,i,i,+2,34g,i,34b,i,+4,34c,i,i,i,+57,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+39,34c,i,i,i,+18,65o,i,q,i,+1,65o,i,i,i,+2,34af,i,34i,i,+1,34b,i,34aa,i,34i,i,+1,34b,i,+2,65b,i,+2,65c,i,i,i,+53,65h,i,65i,i,34c,i,i,i,+2,d,i,i,i,+79,c,i,i,i,+66,1d,i,34g,i,34b,i,34c,i,19e,i,19d,i,i,i,+2,34g,i,34b,i,+4,34c,i,i,i,+57,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+38,34c,i,i,i,+18,65ae,i,34i,i,+1,34aa,i,34aj,i,34l,i,+1,34b,i,+9,65b,i,+2,65c,i,i,i,+52,66ai,i,66e,i,34b,i,34c,i,i,i,+2,n,c,i,i,+79,c,i,i,i,+66,34i,i,34b,i,+1,34aa,i,34i,i,+4,34b,i,+5,34c,i,i,i,+57,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+39,34c,i,i,i,+19,65f,i,65b,i,+1,65c,i,q,i,+1,34g,i,34b,i,+4,65b,i,34b,i,+1,65b,i,34b,i,65b,i,+1,65c,i,i,i,+52,65o,i,q,i,34g,i,34c,i,i,i,+2,d,i,i,i,+79,c,i,i,i,+66,34b,i,+14,34c,i,i,i,+57,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+17,bd,i,+2,65f,i,34b,i,34aa,i,34i,i,+1,65b,i,+8,34b,i,65b,i,+2,65c,i,bd,i,+49,i,i,+2,65af,i,34i,i,34b,i,34c,i,i,i,+2,n,c,i,i,+147,34b,i,+2,34ab,i,34e,i,+3,34b,i,+6,34c,i,i,i,+57,65g,i,34ab,i,34e,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+21,65f,i,34e,i,+14,65e,i,65d,i,i,i,+52,65g,i,66b,i,+1,66r,i,i,i,+2,d,i,i,i,+147,34e,i,34b,i,+1,34c,i,1m,i,1l,i,+1,1k,i,34g,i,34b,i,+3,34ab,i,34e,i,34ad,i,34l,i,+55,i,i,+1,65g,i,34c,i,q,i,+1,34o,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65ag,i,34e,i,66ab,i,66am,i,i,i,+152,34f,i,34e,i,34ad,i,34l,i,+3,34e,i,+4,34d,i,i,i,+59,65g,i,34aa,i,34i,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65o,i,q,i,34o,i,bha,i,bh,bg,i,i,+77,bd,i,+71,i,i,+74,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65af,i,65i,i,65c,i,i,i,+226,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+39,34c,i,i,i,+92,65g,i,65b,i,65c,i,i,i,+226,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+38,34c,i,i,i,+92,65g,i,65b,i,65c,i,i,i,+226,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+39,34c,i,i,i,+92,65ag,i,65e,i,65c,i,i,i,+2,c,i,i,i,+222,65g,i,34ab,i,34e,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65o,i,q,i,65o,i,as,",i,i,+1,c,i,i,i,+222,65g,i,34c,i,q,i,+1,34o,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65af,i,65i,i,65c,i,i,i,+2,c,i,i,i,+222,65g,i,34aa,i,34i,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+92,65f,i,65b,i,65c,i,i,i,+2,c,i,i,i,+222,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+93,65f,i,34ad,i,34l,i,34k,i,i,i,+224,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+100,c,i,i,i,+220,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+41,34c,i,i,i,+100,c,i,i,i,+220,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+39,34c,i,i,i,+100,c,i,i,i,+220,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+38,34aa,i,34i,i,+11,34j,i,i,i,+86,c,i,i,i,+221,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+52,34c,i,i,i,+83,71p,i,i,i,c,i,i,i,+222,65g,i,34ab,i,34e,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+54,34c,i,i,i,+82,71ai,i,70d,i,i,i,+3,72x,i,72j,i,o,i,72h,i,72i,i,+1,70i,i,+3,70j,i,i,i,+209,65g,i,34c,i,q,i,+1,34o,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+54,34c,i,i,i,+81,71h,i,71c,i,o,i,i,i,+3,72y,i,72aa,i,72aj,i,72e,i,+2,70b,i,+3,70c,i,i,i,+209,65g,i,34aa,i,34i,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+54,34c,i,i,i,+81,71f,i,70aa,i,70j,i,p,",i,i,+2,72w,i,72b,i,72c,i,o,i,+2,70g,i,70b,i,+2,70c,i,i,i,+209,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+54,34c,i,i,i,+82,71f,i,71c,i,i,i,+3,72v,i,72e,i,72ad,i,72l,i,+2,70e,i,+3,70d,i,i,i,+209,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34ag,i,34e,i,+1,34b,i,+52,34c,i,i,i,+83,71n,i,i,i,+1,c,i,i,i,+221,65g,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34o,i,q,i,+1,34g,i,34b,i,+51,34c,i,i,i,+87,c,i,i,i,+220,65f,i,34b,i,+2,34c,i,c,i,+1,34o,i,c,i,+1,34af,i,34i,i,+1,34b,i,+52,34c,i,i,i,+87,c,i,i,i,+221,65f,i,34b,i,+1,34c,i,c,i,+1,34o,i,c,i,+1,34g,i,34b,i,+54,34c,i,i,i,+86,c,i,i,i,+223,65f,i,34b,i,34c,i,c,i,+1,34n,i,c,i,+1,34f,i,34e,i,+54,34d,i,i,i,+82,71h,i,71i,i,70j,i,i,i,+226,65f,i,34c,i,i,i,+143,71h,i,71b,i,+1,71c,i,i,i,+3,72x,i,72i,i,+3,70i,i,+3,70j,i,i,i,+213,34n,i,i,i,+142,71h,i,70ab,i,70e,i,71e,i,71c,i,i,i,+3,72y,i,72b,i,72ab,i,72e,i,+1,70b,i,+3,70c,i,i,i,+356,71h,i,71b,i,71c,i,o,i,+1,71o,i,i,i,+3,72g,i,72b,i,72c,i,o,i,+1,70g,i,70b,i,+2,70c,i,i,i,+356,71f,i,70b,i,70c,i,o,i,+1,71o,i,i,i,+3,72g,i,72b,i,72c,i,o,i,72h,i,70b,i,+3,70c,i,i,i,+357,71f,i,70aa,i,70i,i,71i,i,71c,i,p,",i,i,+2,72w,i,72b,i,72aa,i,72i,i,70b,i,+4,70c,i,i,i,+208,70i,i,+3,70j,i,bv,!,i,i,+143,71f,i,71b,i,+1,71c,i,i,i,+3,72v,i,72e,i,+3,70e,i,+3,70d,i,i,i,+208,70e,i,+1,70b,i,+1,70c,i,c,i,i,i,+144,71f,i,71e,i,70d,i,i,i,c,i,i,i,+220,o,i,+1,70g,i,70b,i,70c,i,c,i,i,i,+140,19i,i,19j,i,i,i,+6,c,i,i,i,+219,o,i,70ai,i,70e,i,70b,i,70c,i,c,i,i,i,+140,19e,i,19d,i,i,i,+6,c,i,i,i,+219,70i,i,70c,i,o,i,70g,i,70c,i,c,i,i,i,+149,c,i,i,i,+219,70b,i,70c,i,o,i,70g,i,70c,i,c,i,i,i,+143,71h,i,70i,i,70j,i,i,i,+1,c,i,i,i,+220,70b,i,70c,i,o,i,70f,i,70c,i,c,i,i,i,+142,71ai,i,70e,i,+1,70c,i,i,i,+5,72x,i,72i,i,+3,70i,i,+2,70j,i,i,i,+208,70b,i,70aa,i,70j,i,o,i,70o,i,c,i,i,i,+141,71h,i,70c,i,o,i,+1,70o,i,i,i,+5,72y,i,72ab,i,72e,i,+2,70b,i,+2,70c,i,i,i,+208,70ab,i,70e,i,70aa,i,70i,i,70c,i,c,i,i,i,+141,71f,i,70aa,i,70j,i,o,i,70o,i,p,",i,i,+4,72w,i,72c,i,o,i,+2,70g,i,70b,i,+1,70c,i,i,i,+208,70c,i,o,i,70g,i,70b,i,70c,i,c,i,i,i,+142,71f,i,70c,i,o,i,70o,i,i,i,+5,72v,i,72ad,i,72l,i,+2,70e,i,+2,70d,i,i,i,+208,70aa,i,70i,i,70b,i,+1,70c,i,c,i,i,i,+143,71ae,i,70l,i,70d,i,i,i,c,i,i,i,+221,70e,i,+3,70d,i,bv,!,i,i,+148,c,i,i,i,+220,bd,i,+71,i,i,+82,c,i,i,i,+371,71p,i,i,i,+1,c,i,i,i,+371,71h,i,71c,i,i,i,+3,71h,i,70i,i,70aj,i,70l,i,70i,i,+6,70j,i,i,i,+357,71h,i,70ab,i,70d,i,i,i,+3,71g,i,70b,i,70c,i,o,i,70f,i,70b,i,+5,70c,i,i,i,+357,71f,i,71c,i,o,i,i,i,+3,71g,i,70b,i,70c,i,o,i,+1,70g,i,72b,i,+2,70b,i,+1,70c,i,i,i,+358,71ae,i,70j,i,p,",i,i,+2,71f,i,70e,i,70ad,i,70l,i,+1,70e,i,+5,70d,i,i,i,+359,71n,i,i,i,+1,c,i,i,i,+376,c,i,i,i,+375,c,i,i,i,+370,34h,i,34j,i,dk,",i,i,+4,70m,i,70l,i,70i,i,+1,70aj,i,70l,i,70i,i,+2,70j,i,i,i,+358,34g,i,34c,i,i,i,+4,19h,i,19i,i,+1,70g,i,70b,i,70c,i,o,i,70f,i,70e,i,70b,i,70c,i,i,i,+357,65h,i,34b,i,34c,i,i,i,+4,19f,i,19e,i,+1,70g,i,70b,i,70c,i,o,i,+2,70g,i,70c,i,i,i,+356,65h,i,34b,i,65ab,i,65aq,i,i,i,+5,70m,i,70l,i,70e,i,+1,70ad,i,70l,i,+2,70e,i,70d,i,i,i,+356,65ag,i,34e,i,34c,i,i,i,+373,34o,i,q,i,34o,i,i,i,+373,65af,i,65i,i,65c,i,i,i,+2,d,i,i,i,+369,65g,i,65b,i,65c,i,c,i,i,i,+1,n,ap,i,i,+29,34ai,i,34l,i,+4,34j,i,i,i,+332,65ag,i,65e,i,65c,i,c,i,i,i,+1,d,i,i,i,+29,34o,i,y,",i,i,+3,34o,i,i,i,+332,65o,i,q,i,65o,i,c,i,i,i,+32,34o,i,y,",i,i,+3,34o,i,i,i,+332,65af,i,65i,i,65c,i,c,i,i,i,+2,as,",i,i,+28,34o,i,y,",i,i,+3,34o,i,i,i,+332,65g,i,65b,i,65c,i,i,i,+33,34o,i,y,",i,i,+3,34o,i,i,i,+332,65g,i,34b,i,65aa,i,65ar,i,i,i,+2,bha,i,bh,bg,i,i,+27,65ae,i,34l,i,+4,65d,i,i,i,+332,65f,i,65b,i,+1,65c,i,i,i,+373,65f,i,34b,i,34c,i,i,i,+32,34m,i,34l,i,34i,i,34aj,i,34l,i,+1,65j,i,i,i,+334,34f,i,34c,i,ci,i,i,i,+33,34f,i,34c,i,y,",i,i,34o,i,i,i,+335,34n,i,i,i,+33,65a,i,i,i,34o,i,y,",i,i,34o,i,i,i,+369,34a,i,i,i,+1,65ae,i,34l,i,+1,65d,i,i,i,+335,65p,i,dk,",i,i,+373,34h,i,65c,i,i,i,+35,65ai,i,34l,i,+1,34k,i,i,i,+333,65h,i,65b,i,65c,i,i,i,+32,34m,i,34l,i,+1,34c,i,y,",i,i,+334,65ai,i,34e,i,65ab,i,65aq,i,i,i,+35,65ae,i,34l,i,+1,34k,i,i,i,+332,65o,i,q,i,65o,i,i,i,+373,65af,i,34i,i,34c,i,i,i,+373,65ag,i,34e,i,34c,i,i,i,+33,65ai,i,34l,i,+1,34aj,i,34l,i,+1,65j,i,i,i,+332,65o,i,q,i,34o,i,i,i,+33,34o,i,y,",i,i,34o,i,y,",i,i,34o,i,i,i,+332,65af,i,65i,i,65c,i,as,",i,i,+32,34o,i,y,",i,i,34n,i,y,",i,i,34o,i,i,i,+332,65ag,i,65e,i,65c,i,c,i,i,i,+2,c,i,i,i,+28,65ae,i,34l,i,34k,i,i,i,34m,i,34l,i,65d,i,i,i,+332,65o,i,q,i,65o,i,c,i,i,i,+2,c,i,i,i,+368,65ae,i,65i,i,65c,i,c,i,i,i,+2,c,i,i,i,+28,65ai,i,34l,i,+4,65j,i,i,i,+333,65f,i,34c,i,i,i,+33,34o,i,y,",i,i,+3,34o,i,i,i,+334,65ae,i,65k,i,bha,i,bh,bg,i,i,+2,c,i,i,i,+26,34o,i,y,",i,i,+3,34o,i,i,i,+342,c,i,i,i,+25,65ae,i,34l,i,+4,65d,i,i,i,+342,c,i,i,i,+374,c,i,i,i,+26,34m,i,34l,i,+3,34aj,i,34k,i,i,i,+339,71p,i,i,i,+33,34n,i,y,",i,i,+338,71h,i,71c,i,i,i,+4,72x,i,72i,i,+3,70i,i,+3,70j,i,i,i,+17,34a,i,y,",i,i,+338,71h,i,71b,i,71c,i,i,i,+2,d,i,i,i,72y,i,72b,i,+2,70b,i,+4,70c,i,i,i,+16,34p,i,y,",i,i,+338,71ai,i,70e,i,71e,i,71c,i,i,i,+2,n,c,i,i,72g,i,72b,i,+1,72ab,i,72e,i,70b,i,+3,70c,i,i,i,+13,34m,i,34l,i,+1,34ad,i,34l,i,+1,34k,i,i,i,+335,71h,i,71c,i,o,i,+1,71o,i,p,",i,i,+1,d,i,i,i,72g,i,72b,i,+1,72c,i,o,i,70g,i,70b,i,+2,70c,i,i,i,+356,71g,i,70c,i,o,i,70h,i,71c,i,c,i,i,i,+3,72g,i,72b,i,+1,72c,i,o,i,70g,i,70b,i,+2,70c,i,i,i,+13,65ai,i,34l,i,+1,34aj,i,34l,i,+1,65j,i,i,i,+335,71f,i,70aa,i,70i,i,71b,i,71c,i,c,i,i,i,+3,72g,i,72b,i,72ab,i,72ad,i,72i,i,70b,i,+3,70c,i,i,i,+13,34o,i,y,",i,i,34o,i,y,",i,i,34o,i,i,i,+336,71f,i,71b,i,+1,71c,i,c,i,i,i,+1,d,i,i,i,72g,i,72b,i,72c,i,o,i,72g,i,70b,i,+3,70c,i,i,i,+13,34o,i,y,",i,i,34o,i,y,",i,i,34o,i,i,i,+337,71f,i,71b,i,71c,i,i,i,+2,n,c,i,i,72w,i,72b,i,72aa,i,72i,i,70b,i,+4,70c,i,i,i,+13,34o,i,y,",i,i,34n,i,y,",i,i,34o,i,i,i,+338,71f,i,71c,i,i,i,+2,d,i,i,i,72v,i,72e,i,+3,70e,i,+3,70d,i,i,i,+13,34n,i,y,",i,i,+3,34n,i,i,i,+336,34p,i,i,i,+1,71n,i,i,i,+371,65h,i,34c,i,i,i,+373,65h,i,34b,i,34c,i,i,i,+31,34p,i,y,",i,i,65ai,i,34l,i,+1,34j,i,i,i,+333,65h,i,34b,i,+1,34c,i,i,i,+31,34o,i,y,",i,i,34o,i,y,",i,i,34o,i,i,i,+332,65h,i,34ab,i,34e,i,+1,34c,i,i,i,+31,34o,i,y,",i,i,34o,i,y,",i,i,34o,i,i,i,+332,65g,i,34c,i,q,i,+1,34o,i,i,i,+31,65ae,i,34l,i,+1,34d,i,y,",i,i,34n,i,i,i,+332,65g,i,34aa,i,34i,i,+1,34c,i,i,i,+371,65g,i,34b,i,+2,34c,i,c,i,i,i,+370,65g,i,34b,i,+2,34c,i,c,i,i,i,+370,65g,i,34b,i,+2,34c,i,c,i,i,i,+30,34m,i,34l,i,+1,34aj,i,34l,i,+1,65j,i,i,i,+332,65g,i,34b,i,+2,34c,i,i,i,+2,d,i,i,i,+30,34o,i,y,",i,i,34o,i,i,i,+332,65g,i,34ab,i,34e,i,+1,34c,i,c,i,i,i,+1,n,c,i,i,+30,34o,i,y,",i,i,34o,i,i,i,+332,65g,i,34c,i,q,i,+1,34o,i,c,i,i,i,+1,d,i,i,i,+30,34n,i,y,",i,i,34o,i,i,i,+332,65g,i,34aa,i,34i,i,+1,34c,i,c,i,i,i,+36,34n,i,i,i,+332,65g,i,34b,i,+2,34c,i,i,i,+371,65g,i,34b,i,+2,34c,i,bhb,i,bha,i,bh,bg,i,i,+28,34m,i,34l,i,+1,34aj,i,34l,i,+1,65j,i,i,i,+332,65g,i,34b,i,+2,34c,i,i,i,+34,34o,i,y,",i,i,34o,i,i,i,+332,65g,i,34b,i,+2,34c,i,i,i,+34,34o,i,y,",i,i,34o,i,i,i,+332,65g,i,34ab,i,34e,i,+1,34c,i,i,i,+2,c,i,i,i,d,i,i,i,+25,34m,i,34l,i,+1,34ad,i,34l,i,+1,65d,i,i,i,+332,65g,i,34c,i,q,i,+1,34o,i,i,i,+2,c,i,i,i,n,ap,i,i,+365,65g,i,34aa,i,34i,i,+1,34c,i,i,i,+2,c,i,i,i,d,i,i,i,+365,65g,i,34b,i,+2,34c,i,i,i,+31,34m,i,34l,i,+3,34aj,i,34k,i,i,i,+332,65g,i,34b,i,+2,34c,i,i,i,+36,34n,i,y,",i,i,+332,65g,i,34ab,i,34e,i,+1,34c,i,i,i,+4,34h,i,34i,i,+8,34j,i,i,i,+19,34a,i,y,",i,i,+333,65g,i,34c,i,q,i,+1,34o,i,i,i,+4,34g,i,34ab,i,34e,i,+1,34b,i,+5,34c,i,i,i,+18,34p,i,y,",i,i,+29,34j,i,i,i,34p,i,i,i,34p,i,i,i,34p,i,i,i,34h,i,34i,i,i,i,+294,65g,i,34aa,i,34i,i,+1,34c,i,i,i,+4,34g,i,34c,i,q,i,+1,34g,i,34b,i,+4,34c,i,i,i,+15,34m,i,34l,i,+1,34ad,i,34l,i,+1,34k,i,i,i,+27,34ad,i,34l,i,34ad,i,34l,i,34ad,i,34l,i,34ad,i,34l,i,34e,i,34b,i,i,i,+294,65g,i,65b,i,34b,i,65b,i,65c,i,i,i,+4,34g,i,34aa,i,34i,i,+1,34b,i,+5,34c,i,i,i,+59,34g,i,i,i,+294,65g,i,34b,i,+2,34aa,i,34i,i,+4,34b,i,+9,34c,i,i,i,+58,dk,&,34g,i,i,i,+294,65g,i,34b,i,+4,34ab,i,34e,i,+1,34b,i,+10,34c,i,i,i,+59,34g,i,i,i,+294,65g,i,34b,i,+4,34c,i,q,i,+1,34g,i,34b,i,+9,34c,i,i,i,+59,34g,i,i,i,+293,65l,i,34b,i,+5,34aa,i,34i,i,+1,34b,i,+2,65b,i,+1,34b,i,+5,34ac,i,34l,i,+49,i,i,34i,i,34j,i,i,i,+5,34h,i,34b,i,i,i,+294,65f,i,34e,i,+18,34d,i,i,i,+50,34b,i,34c,i,i,i,+5,34g,i,34b,i,i,i,+366,34b,i,34c,i,i,i,+5,34g,i,34b,i,i,i,+366,34b,i,34c,i,i,i,+5,34g,i,34b,i,i,i,+366,34e,i,34d,i,i,i,+5,34f,i,34b,i,i,i,+375,34g,i,i,i,+375,34g,i,i,i,+368,dw,"af,i,i,+4,dk,^,34g,i,i,i,+375,34g,i,i,i,+366,34l,i,34aj,i,34l,i,34aj,i,34l,i,34aj,i,34l,i,34aj,i,34l,i,34b,i,i,i,+367,34n,i,i,i,34n,i,i,i,34n,i,i,i,34n,i,i,i,34f,i,i,i,+6700,i,i,i,i,¬i,+,3,73g,73b,+,3,i,+,74,6b,+,2,6c,41g,i,+,71,74b,+,1,i,+,141,73b,+,5,73c,i,+,68,73g,73b,+,3,i,+,74,6b,+,2,6c,41g,i,+,71,74b,+,1,i,+,140,73b,+,6,73c,i,+,1,73h,i,+,62,73i,+,1,i,73b,+,4,i,+,74,6e,+,2,6d,41f,i,+,71,74b,+,1,i,+,139,73b,+,7,73aa,i,+,1,73g,73b,i,+,60,73b,+,8,i,+,1,73i,+,1,i,+,147,74b,+,1,i,+,140,73b,73ab,73e,+,5,i,+,1,73g,i,+,1,73b,i,+,58,73b,+,8,i,73b,+,2,73c,i,+,69,4i,4j,47l,+,6,i,+,64,62o,74g,i,74b,+,1,i,+,3,74b,+,2,i,+,134,73c,i,+,9,73b,+,2,i,+,57,73b,+,2,73ab,73e,+,4,i,+,1,73b,+,1,73c,i,+,69,4b,4c,i,+,74,74b,+,1,i,+,5,74b,i,+,133,73g,73c,75e,i,+,9,73b,i,+,58,73b,+,2,73c,i,75e,i,+,5,73b,i,+,70,4b,4c,i,+,74,74b,+,1,i,+,5,74b,i,+,132,73i,73b,73c,75f,i,+,6,73b,i,+,62,73b,+,1,i,+,1,75f,i,+,77,4b,4c,i,+,74,74b,+,1,i,+,5,74b,i,+,132,73b,+,1,73c,i,+,6,73g,73b,+,1,i,+,62,73b,i,+,80,4e,4d,47l,+,6,i,+,67,74b,+,1,i,74b,+,1,i,+,137,73ab,73d,75b,i,+,5,73g,73b,+,2,i,+,60,73b,+,1,73c,i,75b,i,+,6,73b,i,+,146,74b,+,1,i,+,141,74h,74i,+,5,i,73g,73b,+,1,i,+,62,73b,i,74h,74i,+,4,i,+,1,73b,+,1,73c,i,+,68,5i,+,2,5j,41e,i,+,71,74b,+,1,i,+,70,62i,+,1,i,62i,+,1,i,+,64,73c,74g,74b,+,5,i,73g,73b,+,1,i,+,61,73b,i,+,1,74g,74b,+,4,i,+,1,73b,+,1,73c,i,+,68,5b,+,2,5c,41g,i,+,71,74b,+,1,i,+,68,62g,i,62b,+,1,i,62b,+,1,i,62c,i,+,61,73b,73c,74g,74b,+,5,i,+,1,73b,i,73b,+,2,i,+,57,73b,+,2,i,74g,74b,+,4,74c,i,73b,+,1,73aa,i,73i,i,+,66,5b,+,2,5c,41g,i,+,71,74b,+,5,i,74b,+,1,74c,i,+,60,62g,62b,+,2,i,62b,+,1,i,+,64,73d,74f,74e,+,5,i,+,2,73b,+,4,i,+,57,73e,i,+,1,74g,74b,+,4,74aa,i,+,1,73b,i,73e,+,1,73d,i,+,65,5b,+,2,5c,41g,i,+,71,74b,+,5,i,+,65,62b,+,2,i,62b,+,1,i,+,65,75b,i,+,9,73b,+,2,i,+,61,74f,74e,+,5,74d,i,+,71,5b,+,2,5c,41g,i,+,71,74b,+,5,i,+,64,62g,62b,+,2,i,62b,+,1,i,62c,i,+,62,75e,i,+,155,5e,+,2,5d,41f,i,+,71,74b,+,5,i,+,64,62g,62b,+,2,i,62b,+,1,i,+,64,75f,i,+,2,41e,i,+,4,73f,i,+,220,74g,i,74b,+,5,i,+,1,74b,i,+,61,62g,62b,+,2,i,62b,+,1,i,+,68,41g,i,+,151,6i,+,3,6j,41e,i,+,68,74g,i,74b,+,5,i,+,1,74b,i,+,62,62b,+,2,i,62b,+,1,i,+,68,41g,i,+,70,73h,73j,47l,+,14,i,+,63,6b,+,3,6c,41g,i,+,68,74g,i,74b,+,8,i,+,61,62g,62b,+,2,i,62b,+,1,i,62c,i,+,66,41g,i,+,69,73h,73b,73c,74h,74i,+,2,74j,i,73h,73i,+,2,73j,i,+,67,6b,+,3,6c,41g,i,+,68,74g,i,74b,+,8,i,74c,i,+,59,62f,62e,+,2,i,62e,+,1,i,+,68,41g,i,+,68,73h,73b,i,73c,74g,74b,+,2,74c,i,73g,73b,+,1,i,+,69,6b,+,3,6c,41g,i,+,68,74g,i,74b,+,8,i,+,137,41g,i,+,68,73g,73b,+,1,73c,74g,74b,+,2,74c,i,73g,73b,+,2,i,+,68,6b,+,3,6c,41g,i,+,67,62o,74g,i,74b,+,8,i,+,137,41g,i,+,68,73f,73b,i,73c,74g,74b,+,2,74c,i,+,1,73b,+,1,i,+,69,6b,+,3,6c,41g,i,+,70,74b,+,8,i,+,137,41f,i,+,69,73f,73b,73c,74f,74e,+,2,74d,i,73f,73e,+,2,73d,i,+,67,6e,+,3,6d,41f,i,+,70,74b,+,8,i,+,136,62h,62i,+,1,62j,47e,i,+,67,73f,73d,47l,+,14,i,+,140,74b,+,8,i,+,136,62g,62b,+,1,62c,47g,i,+,64,36a,47e,i,+,81,4i,+,2,4j,41e,i,+,71,74b,+,8,i,+,136,62g,62b,+,1,62c,47g,i,47l,i,+,62,36a,47g,i,+,81,4b,+,2,4c,41g,i,+,71,74b,+,8,i,+,136,62g,62b,+,1,62c,47g,i,+,64,36a,47f,i,73h,73j,47l,+,14,i,+,63,4b,+,2,4c,41g,i,+,69,74g,i,74b,+,4,i,+,140,62f,62e,+,1,62d,47f,i,+,66,73h,73b,73c,74h,74i,+,2,74j,73h,73i,73j,i,+,70,4b,+,2,4c,41g,i,+,71,74b,+,4,i,+,141,41e,i,+,68,73h,73b,+,1,73c,74g,74b,+,2,74c,73g,73b,73c,i,+,70,4e,+,2,4d,41f,i,+,71,74b,+,4,i,+,141,41g,i,+,68,73f,73b,+,1,73c,74g,74b,+,2,74c,i,73e,73d,i,+,147,74b,+,4,i,74b,+,2,74c,i,+,64,62i,+,1,i,62i,+,1,i,+,66,41f,i,+,69,73f,73b,73c,74f,74e,+,2,74d,i,+,150,74b,+,4,i,74b,i,+,67,62b,+,1,i,62b,+,1,i,+,64,62h,62i,+,3,i,+,68,73f,73d,47l,+,14,i,+,63,5i,+,3,5j,41e,i,+,70,74b,+,4,i,74b,i,+,67,62b,+,1,i,62b,+,1,i,+,65,62b,+,3,i,+,149,5b,+,3,5c,41g,i,+,70,74b,+,4,i,+,69,62b,+,1,i,62b,+,1,i,+,64,62g,62b,+,3,i,+,70,41e,i,+,77,5b,+,3,5c,41g,i,+,70,74b,+,4,i,+,69,62b,+,1,i,62b,+,1,i,+,64,62g,62b,+,3,i,+,70,41g,i,+,77,5b,+,3,5c,41g,i,+,70,74b,+,4,i,+,69,62b,+,1,i,62b,+,1,i,+,140,41g,i,+,77,5b,+,3,5c,41g,i,+,145,62b,+,1,i,62b,+,1,i,+,140,41g,i,+,77,5b,+,3,5c,41g,i,+,145,62b,+,1,i,62b,+,1,i,+,140,41f,i,+,77,5e,+,3,5d,41f,i,+,145,62b,+,1,i,62b,+,1,i,+,139,41e,i,+,155,54b,+,2,54k,i,+,70,62b,+,1,i,62b,+,1,i,+,139,41g,i,+,230,62b,+,1,i,62b,+,1,i,+,139,41g,i,+,230,62b,+,1,i,62b,+,1,i,+,139,41g,i,+,230,62b,+,1,i,62b,+,1,i,+,139,41g,i,+,230,62b,+,1,i,62b,+,1,i,+,139,41f,i,+,230,62b,+,1,i,62b,+,1,i,+,139,62h,62i,62j,47e,i,+,227,62b,+,1,i,62b,+,1,i,+,139,62g,62b,62c,47g,i,+,227,62b,+,1,i,62b,+,1,i,+,139,62g,62b,62c,47g,i,+,227,62b,+,1,i,62b,+,1,i,+,139,62f,62e,62d,47f,i,+,227,62b,+,1,i,62b,+,1,i,+,141,41b,i,+,228,62b,+,1,i,62b,+,1,i,+,371,62b,+,1,i,62b,+,1,i,+,371,62b,+,1,i,62b,+,1,i,+,371,62b,+,1,i,62b,+,1,i,62i,+,1,i,+,368,62b,+,1,i,62b,+,1,i,+,139,73h,73j,47l,+,13,i,+,215,62b,+,1,i,62b,+,1,i,+,138,73h,73b,73c,74h,74i,+,3,74j,73h,73i,+,2,73j,i,+,218,62b,+,1,i,62b,+,1,i,+,137,73h,73b,+,1,73c,74g,74b,+,3,i,73g,73b,+,2,i,+,219,62b,+,1,i,62b,+,1,i,+,137,73f,73b,i,73c,74g,74b,+,3,i,73f,73b,+,1,73ab,73ad,i,+,218,62b,+,1,i,62b,+,1,i,+,138,73f,73b,73c,74f,74e,+,3,74ad,74k,73f,73e,73d,i,+,219,62b,+,1,i,62b,+,1,i,+,139,73f,73d,47l,+,13,i,+,215,62b,+,1,i,62b,+,1,i,62b,+,1,i,+,368,62b,+,1,i,62b,+,1,i,+,371,62b,+,1,i,62b,+,1,i,+,371,62e,+,1,i,62e,+,1,i,+,138,73h,73j,i,+,1,47l,+,12,i,+,358,73h,73b,i,+,2,74h,74i,+,3,74aj,74l,+,3,74j,i,+,359,73h,73b,i,73aa,73i,73j,74g,74b,+,3,i,+,1,73i,+,1,i,+,361,73g,i,73b,+,2,73c,74g,74b,+,3,i,73g,73b,+,1,73c,i,+,360,73g,i,73b,+,2,73c,74g,74b,+,3,i,73g,73b,+,1,i,+,361,73f,73b,i,73b,+,1,73c,74g,74b,+,3,i,+,1,73e,i,+,363,73f,73b,i,+,1,73d,74f,74e,+,3,74ad,74l,+,3,74d,i,+,211,73i,+,1,i,+,147,73f,73d,i,+,1,47l,+,12,i,+,209,73b,+,2,i,+,373,73b,+,2,i,+,373,73b,+,2,73c,i,+,373,73b,+,1,73c,i,+,144,73h,73i,+,1,73j,47l,+,13,i,+,210,73b,+,1,73c,i,+,143,73h,73b,+,2,73c,74h,74i,+,4,74aj,74l,+,4,74j,i,+,212,73b,73c,i,+,143,73g,73b,+,2,73c,74g,74b,+,4,74c,i,73i,+,2,i,+,213,73b,i,73c,i,+,143,73g,i,73b,+,1,73c,74g,74b,+,4,74c,73f,73b,+,2,73c,i,+,211,73b,+,2,i,+,144,73f,73b,+,1,73ab,73d,74f,74e,+,4,74ad,74k,73f,73e,+,1,73d,74n,i,+,211,73e,i,+,146,73f,73e,73d,47l,+,14,i,+,1113,73h,73j,47l,+,14,i,+,358,73h,73b,73c,74h,74i,+,4,74j,i,+,365,73h,73b,i,73c,74g,74b,+,3,i,74c,73h,73i,i,+,363,73f,73b,+,1,73c,74g,74b,+,3,i,74c,73f,73e,73d,i,+,363,73f,73b,73c,74f,74e,+,4,74d,i,+,367,73f,73d,47l,+,14,i,+,1115,41e,i,+,375,41g,i,+,375,41f,i,+,374,41e,i,+,375,41g,i,+,375,41g,i,+,374,41g,+,1,i,+,374,41g,+,1,i,+,374,41f,+,1,i,+,33,74b,+,4,i,+,336,62h,62i,+,1,62j,47e,i,+,29,74b,+,4,i,+,336,62g,62b,+,1,62c,47g,i,+,29,74b,+,4,i,+,336,62g,62b,+,1,62c,47g,i,+,29,74b,+,4,i,+,336,62f,62e,+,1,62d,47f,i,+,28,74f,i,+,4,74d,i,+,336,41e,i,+,375,41g,i,+,37,62j,i,+,336,41g,i,+,31,62g,62b,i,+,1,62b,+,1,i,+,337,41f,i,+,31,62g,62b,+,1,i,62b,+,1,i,+,371,62e,+,2,i,+,1,62d,i,+,336,41e,i,+,375,41g,i,+,31,45h,45i,+,2,i,+,339,41f,i,+,35,45b,+,1,45c,i,+,335,41e,i,+,32,45f,45e,+,2,i,+,337,41g,+,1,i,+,375,41g,i,+,375,41g,i,+,32,63h,i,+,4,63j,i,+,335,41g,i,+,33,63b,+,1,i,63b,+,1,i,+,335,41f,+,1,i,+,33,63b,+,1,i,63b,+,1,i,+,335,62h,62i,+,2,62j,47e,i,+,28,63f,i,+,1,63e,i,+,1,63d,i,+,334,62g,62b,+,2,62c,47g,i,+,370,62g,62b,+,2,62c,47g,i,+,28,54h,i,+,4,54j,i,+,335,62e,+,2,62d,47f,i,+,29,54b,+,4,i,+,371,54b,+,4,i,+,370,54f,i,+,4,54d,i,+,1092,73h,73j,75b,i,+,27,4g,4b,+,3,i,4c,i,+,337,73h,73b,73c,74h,74i,+,7,74l,74k,i,+,17,4g,4b,+,2,i,4b,4c,i,+,336,73h,73b,i,73c,74g,74b,+,4,i,+,22,4g,4b,+,1,i,4b,+,1,4c,i,+,335,73h,73b,+,2,73c,74g,74b,+,4,i,+,2,74h,i,+,360,73h,73b,+,3,73c,74g,74b,+,4,i,+,1,74b,+,1,74c,i,+,359,73g,73b,+,3,73c,74g,74b,+,4,i,+,1,74b,74ab,74d,i,+,17,76h,i,+,4,76j,i,+,334,73f,73b,i,73b,i,73c,74g,74b,+,4,i,+,1,74b,+,1,i,+,19,76b,+,1,i,76b,+,1,i,+,336,73f,73b,i,+,1,73c,74g,74b,+,4,i,74b,+,2,i,+,19,76b,+,1,i,76b,+,1,i,+,337,73f,73b,i,73c,74g,74b,+,4,i,+,1,74b,i,+,20,76b,+,1,i,76b,+,1,i,+,338,73f,73b,73c,74f,74e,+,7,74l,74k,i,+,18,76e,+,4,i,+,338,41e,73f,73d,i,+,373,41g,i,+,375,41g,i,+,31,6i,+,2,i,+,340,41g,i,+,31,6b,+,1,i,6b,+,1,i,+,338,41g,i,+,31,6b,+,1,i,6b,+,1,i,+,338,41g,i,+,30,6f,i,+,2,6e,+,1,i,+,338,41g,i,+,375,41g,i,+,375,41g,i,+,375,41g,i,+,36,32j,i,+,337,41g,i,+,30,32g,32b,+,1,i,32b,+,1,i,+,338,41g,i,+,30,32g,32b,+,1,i,32b,+,1,i,+,338,41g,i,+,30,32g,32b,+,1,i,32b,+,1,i,+,338,41g,i,+,30,32f,32e,+,4,i,+,338,41g,i,+,413,5j,i,+,337,41g,i,+,30,5g,5b,+,1,i,5b,+,1,i,+,338,41f,i,+,30,5g,5b,+,1,i,5b,+,1,i,+,338,62h,62i,62j,47e,i,+,33,5d,i,+,337,62g,62b,62c,47g,i,+,372,62f,62e,62d,47f,i,+,372,41e,i,+,375,41f,i,+,30,68g,68b,+,3,i,68c,i,+,337,62h,62i,+,2,62j,i,+,26,68g,68b,+,2,i,68b,68c,i,+,337,62g,62b,+,2,62c,i,+,26,68g,68b,+,1,i,68b,+,1,68c,i,+,337,62g,62b,+,2,62c,i,+,371,62f,62e,+,2,62d,i,+,61,61l,61p,i,+,374,61l,61o,i,+,374,61l,61o,i,+,374,61l,61n,i,+,376,47e,i,+,375,47g,i,+,375,47g,i,+,375,47g,i,+,375,47f,i,+,373,61l,61p,i,+,374,61l,61o,i,+,374,61l,61o,i,+,374,61l,61n,i,+,7462,i,i,¬i,+,6956,8d,i,+,372,7d,i,+,1,8f,i,+,289,7l,i,8c,8a,i,+,78,7e,i,+,375,7e,i,+,375,7e,i,+,375,7e,i,+,375,8e,i,+,374,8c,8g,i,+,208,7l,i,8c,8a,i,+,2418,7l,i,8c,8a,i,+,13640,7l,i,+,4145,7l,i,+,42739,i,i,¬73,3,bb,180,3,162,bb,-90,36,164,bb,180,92,10,bb,0,2,235,aj,-90,28,93,aj,-90,34,309,dv,-90,2,6,dv,-90,161,7,dv,-90,168,80,dv,-90,168,76,aj,-90,2,89,dv,-90,¬22,1,72,26,-8,-8,0,0,:18,74,10,25,-8,-8,0,0,:1,85,72,2,-8,-8,0,0,:18,158,72,10,-8,-8,0,0,:5,231,72,6,-8,-8,5,0,:5,304,72,26,-8,-8,0,0,:¬377,193,300,0,36,93,3,6,307,1,DryBonesFan,74,239,5,0,0,]\nend\nLoadSaveCode\ndelete all of [placex v]\ndelete all of [placey v]\nset [mapx v] to [256]\nset [mapy v] to [160]\nset [mousestartx v] to [x]\nset [textinputmenu v] to [0]\nbroadcast (FullRestartLevel v)\nbroadcast (ResumeWithTransition v)\n\nwhen I receive [editleveldescription v]\nset [textinputmenu v] to [1]\nask [Enter Level Description:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nset [leveldescription v] to (#Eight)\n\nwhen I receive [editlevelname v]\nask [Enter Level Name:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nset [levelname v] to (#Eight)\n\nwhen I receive [verifycode v]\nif <(Menu) = [Map]> then\n    if <not <(MapSaveMenu) = [0]>> then\n        ask [Paste the save code you copied here to verify it was copied correctly:] and wait\n        set [textinputmenu v] to [0]\n        if <not <(MapSaveMenu) = [0]>> then\n            if <(answer) = (WorldMapSaveCode)> then\n                set [savemenuprogress v] to [2]\n            else\n                set [savemenuprogress v] to [1.5]\n                broadcast (VerifyCode v)\n            end\n        end\n    end\nelse\n    if <not <(SaveMenu) = [0]>> then\n        ask [Paste the save code you copied here to verify it was copied correctly:] and wait\n        set [textinputmenu v] to [0]\n        if <not <(SaveMenu) = [0]>> then\n            if <(answer) = (Save Code)> then\n                set [savemenuprogress v] to [3]\n            else\n                set [savemenuprogress v] to [2.5]\n                broadcast (VerifyCode v)\n            end\n        end\n    end\nend\nset [textinputmenu v] to [0]\n\nwhen I receive [loadingalevelfrommap v]\nset [menu v] to [Display]\nstop all sounds\nstart sound [LevelEnter v]\nwait (0) seconds\nLoadSaveCode\nset [transitionprogress v] to [0]\nset [transitiontype v] to [DisplayName]\nwait (3) seconds\nset [edit/playmode v] to [1]\nset [menu v] to [Game]\nbroadcast (FullRestartLevel v)\nbroadcast (ResumeWithTransition v)\n\nwhen I receive [invalidsavecode v]\nstop [other scripts in sprite v]\nreset timer\nwait (0) seconds\nbroadcast (GameLoop v)\nset [transitionprogress v] to [1]\nset [transitiontype v] to [DisplayName]\nrepeat (90)\n    reset timer\n    set [levelname v] to [Invalid Save Code]\n    set [levelcreator v] to [Invalid]\nend\nif <(PlayingAMap) = [1]> then\n    set [transitionprogress v] to [1]\n    set [transitiontype v] to [FadeIn]\n    set [menu v] to [Map]\n    broadcast (PlayWorldMusic v)\nelse\n    broadcast (FlagClicked v)\nend\n\nwhen I receive [loadlevelcode v]\nset [menu v] to [Display]\nstop all sounds\nwait (0) seconds\nLoadSaveCode\nset [transitionprogress v] to [0]\nset [transitiontype v] to [DisplayName]\nwait (3) seconds\nset [edit/playmode v] to [1]\nset [menu v] to [Game]\nbroadcast (FullRestartLevel v)\nbroadcast (ResumeWithTransition v)\n\nwhen I receive [editworldname v]\nask [Enter World Name:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nset [worldname v] to (#Eight)\n\nwhen I receive [editworlddescription v]\nset [textinputmenu v] to [1]\nask [Enter World Description:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nset [worlddescription v] to (#Eight)\n\nwhen I receive [askloadlevel v]\nset [textinputmenu v] to [1]\nask [Enter LEVEL Save Code:] and wait\nset [textinputmenu v] to [0]\nif <(length of (answer)) > [12]> then\n    set [iamtheeditor v] to [0]\n    set [save code v] to (answer)\n    broadcast (LoadLevelCode v)\nend\n\nwhen I receive [askloadworld v]\nset [textinputmenu v] to [1]\nask [Enter WORLD Save Code:] and wait\nset [textinputmenu v] to [0]\nif <(length of (answer)) > [12]> then\n    set [iamtheeditor v] to [0]\n    set [worldmapsavecode v] to (answer)\n    broadcast (LoadMapSaveCode v)\nend\n\ndefine CheckCharacters\nset [#eight v] to (answer)\nif <<(length of (answer)) < [2]> or << (answer) contains [`]?> or < (answer) contains [¬]?>>> then\n    set [#eight v] to [None]\nend\n\nwhen [up arrow v] key pressed\nif <not <key (up arrow v) pressed?>> then\n    if <(Menu) = [Game]> then\n        if <(InventoryMenu) > [0]> then\n            set [inventoryscroll v] to (round (InventoryScrollAim))\n            change [inventoryscrollaim v] by (-1)\n        end\n        if <(MusicMenu) > [0]> then\n            change [musicscroll v] by (-1)\n            if <(MusicScroll) < [0]> then\n                set [musicscroll v] to [0]\n            end\n        end\n        if <(AreaMenu) > [0]> then\n            set [currentarea v] to (round ((CurrentArea) - (1)))\n            if <(CurrentArea) < [1]> then\n                set [currentarea v] to [1]\n            else\n                broadcast (UpdateAreaSettings v)\n                change [mapy v] by (-900000)\n            end\n        end\n        if <(BackgroundMenu) > [0]> then\n            change [currentbackground v] by (-1)\n            if <(CurrentBackground) < [1]> then\n                set [currentbackground v] to [1]\n            end\n            broadcast (ReplaceBackground v)\n        end\n    end\nend\n\nwhen [down arrow v] key pressed\nif <not <key (down arrow v) pressed?>> then\n    if <(Menu) = [Game]> then\n        if <(InventoryMenu) > [0]> then\n            set [inventoryscroll v] to (round (InventoryScrollAim))\n            change [inventoryscrollaim v] by (1)\n        end\n        if <(MusicMenu) > [0]> then\n            change [musicscroll v] by (1)\n            if <(MusicScroll) > ((length of [musiclist v]) - (7))> then\n                set [musicscroll v] to ((length of [musiclist v]) - (7))\n            end\n        end\n        if <(AreaMenu) > [0]> then\n            set [currentarea v] to (round ((CurrentArea) + (1)))\n            if <(CurrentArea) > (length of [areas v])> then\n                set [currentarea v] to (length of [areas v])\n            else\n                broadcast (UpdateAreaSettings v)\n                change [mapy v] by (-900000)\n            end\n        end\n        if <(BackgroundMenu) > [0]> then\n            change [currentbackground v] by (1)\n            if <(CurrentBackground) > [28]> then\n                set [currentbackground v] to [28]\n            end\n            broadcast (ReplaceBackground v)\n        end\n    end\nend\n\nwhen [i v] key pressed\nif <(Menu) = [Game]> then\n    if <(Edit/PlayMode) = [0]> then\n        if <(length of [placex v]) = [0]> then\n            set [placetool v] to [3]\n        end\n    end\nend\n\nwhen I receive [editlevelcreator v]\nask [Enter Level Creator Name:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nif <(#Eight) = [BenjaminWins11]> then\n    set [#eight v] to [A liar.]\nend\nset [levelcreator v] to (#Eight)\n\nwhen I receive [editworldcreator v]\nask [Enter World Creator Name:] and wait\nset [textinputmenu v] to [0]\nCheckCharacters\nif <(#Eight) = [BenjaminWins11]> then\n    set [#eight v] to [A liar.]\nend\nset [worldcreator v] to (#Eight)\n\n@Empty\n\nwhen I receive [flagclicked v]\nhide\n\nset [flagclicked v] to [0]\nset [save code v] to []\nset [worldmapsavecode v] to []\ndelete all of [save code v]\ndelete all of [map type extras v]\ndelete all of [map type v]\ndelete all of [blco v]\ndelete all of [blcoga v]\ndelete all of [blstga v]\ndelete all of [blty v]\ndelete all of [bltyga v]\ndelete all of [entity list type v]\ndelete all of [semi type v]\ndelete all of [unique type v]\ndelete all of [track type v]\ngo to x: (0) y: (0)\nset size to (100) %\nshow\n\nset [shadows v] to [1]\n\n@Blocks\n\ndefine CostumeUnique (type) (entity) (shadow) (no.)\nset rotation style [don't rotate v]\nif <(letter (2) of (type)) = [x]> then\n    set [#five v] to (letter (1) of (type))\nelse\n    set [#five v] to (join (letter (1) of (type)) (join (letter (2) of (type)) (letter (3) of (type))))\nend\nif <<<<<(#Five) = [n]> or <(#Five) = [ej]>> or <<(#Five) = [d]> or <<(#Five) = [c]> and <(entity) = []>>>> or <<(#Five) = [e]> or <(#Five) = [z]>>> or <<<(#Five) = [j]> or <(#Five) = [ci]>> or <<(#Five) = [t]> or <(#Five) = [v]>>>> then\n    if <(entity) = [1]> then\n        set [#four v] to (item (no.) of [ent state v])\n        if <not <(length of [deleteentitylist v]) = [0]>> then\n            if <[deleteentitylist v] contains (no.)?> then\n                set [#four v] to [0]\n            end\n        end\n    else\n        set [#four v] to (item (no.) of [blstga v])\n    end\n    if <(#Five) = [v]> then\n        if <not <(#Four) = [0]>> then\n            change [#four v] by (1)\n        end\n    else\n        if <<(#Four) < [8]> and <not <<(#Four) = [0]> or <(#Four) = []>>>> then\n            if <not <(#Five) = [ci]>> then\n                change y by (([sin v] of (((#Four) + (2)) * (18)) ) * (12))\n            end\n            if <(shadow) = []> then\n                change [#four v] by (1)\n                if <(#Four) > [7]> then\n                    set [#four v] to [i]\n                end\n            end\n        end\n    end\n    if <(entity) = [1]> then\n        replace item (no.) of [ent state v] with (#Four)\n    else\n        replace item (no.) of [blstga v] with (#Four)\n    end\nend\nif <(entity) = [1]> then\n    set [#fourteen v] to (item (no.) of [ent bon v])\nelse\n    set [#fourteen v] to (item (no.) of [blcoga v])\nend\nset [#eight v] to [0]\nset [state v] to (item (no.) of [ent state v])\nif <<<(#Five) = [c]> and <<(PTimer) = [0]> or <(entity) = [1]>>> or <<<<(#Five) = [d]> and <(#Fourteen) = [i]>> and <(PTimer) > [0]>> or <<<(#Five) = [af]> or <(#Five) = [dz]>> or <<(#Five) = [do]> or <<(#Five) = [dp]> or <(#Five) = [dq]>>>>>> then\n    if <(#Five) = [d]> then\n        set [#five v] to [c]\n    end\n    if <(#Five) = [dz]> then\n        if <(PTimer) = [0]> then\n            switch costume to (invis v)\n            stop [this script v]\n        end\n    end\n    set [#eight v] to [1]\n    if <(entity) = [1]> then\n        if <(State) > [150]> then\n            if <(State) > [180]> then\n                if <([floor v] of (((GameTimer) * (60)) mod (2)) ) = [1]> then\n                    switch costume to (invis v)\n                end\n            else\n                if <(22Mod2+1) = [1]> then\n                    switch costume to (invis v)\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(#Five) = [c]> then\n    set [#five v] to [d]\nend\nif <<<(#Five) = [d]> or <(#Five) = [ba]>> or <<(#Five) = [e]> or <<(#Five) = [n]> or <(#Five) = [aw]>>>> then\n    set [#eight v] to [1]\n    stop [this script v]\nend\nif <<(#Five) = [cp]> or <(#Five) = [ds]>> then\n    Cost [32] [4]\n    stop [this script v]\nend\nif <<(#Five) = [g]> or <<(#Five) = [cd]> or <(#Five) = [fb]>>> then\n    set [#one v] to ((100) * (<(#Five) = [cd]> + (1)))\n    if <(PTimer) > [0]> then\n        set [#one v] to [0]\n    end\n    if <(#Fourteen) = [£]> then\n        set [#one v] to ((#One) * (-1))\n    end\n    if <<(#Five) = [fb]> and <(On/Off) = [1]>> then\n        switch costume to (join [fb] (([floor v] of (((GameTimer) * ((#One) * (-1))) mod (4)) ) + (5)))\n    else\n        Cost (#One) [4]\n    end\n    stop [this script v]\nend\nif <(#Five) = [dt]> then\n    switch costume to (dt1 v)\n    stop [this script v]\nend\nif <<(#Five) = [j]> or <<(#Five) = [k]> or <(#Five) = [l]>>> then\n    if <(On/Off) = [0]> then\n        switch costume to (#Five)\n    else\n        switch costume to (join (#Five) [2])\n    end\n    stop [this script v]\nend\nif <(#Five) = [m]> then\n    Cost [40] [8]\n    stop [this script v]\nend\nif <(#Five) = [r]> then\n    if <<(State) > [270]> and <(State) < [330]>> then\n        change y by (([cos v] of (((State) - (270)) * (60)) ) * (3))\n    end\n    set [#eight v] to [2]\n    stop [this script v]\nend\nif <<<(#Five) = [s]> or <(#Five) = [bp]>> or <<(#Five) = [ez]> or <(#Five) = [fa]>>> then\n    if <<(item (no.) of [ent bon v]) = [i]> or <((item (no.) of [ent x v v]) + (item (no.) of [ent y v v])) = [0]>> then\n        switch costume to (join (#Five) [1])\n    else\n        if <(item (no.) of [ent dir v]) < [0]> then\n            switch costume to (join (#Five) ((5) - (22Mod4+1)))\n        else\n            switch costume to (join (#Five) (22Mod4+1))\n        end\n    end\n    stop [this script v]\nend\nif <<(#Five) = [u]> or <(#Five) = [eu]>> then\n    set rotation style [all around v]\n    if < (#Fourteen) contains [£]?> then\n        point in direction (-90)\n    else\n        if < (#Fourteen) contains [$]?> then\n            point in direction (180)\n        else\n            if < (#Fourteen) contains [%]?> then\n                point in direction (0)\n            else\n                point in direction (90)\n            end\n        end\n    end\n    if <(#Five) = [eu]> then\n        if <(#Five) = [eu]> then\n            set [#cus3 v] to (((GameTimer) + (1.5)) mod (2.1))\n            if <(#Cus3) < [1]> then\n                set [#twelve v] to ([floor v] of (((GameTimer) * (44)) mod (2)) )\n                if <<(#Cus3) < [0.05]> or <(#Cus3) > [0.95]>> then\n                    switch costume to (join [eu] ((#Twelve) + (2)))\n                else\n                    if <<(#Cus3) < [0.1]> or <(#Cus3) > [0.9]>> then\n                        switch costume to (join [eu] ((#Twelve) + (4)))\n                    else\n                        switch costume to (join [eu] ((#Twelve) + (6)))\n                    end\n                end\n                stamp\n                switch costume to (large v)\n            end\n        end\n        switch costume to (eu v)\n    else\n        set [#eight v] to [1]\n    end\n    stop [this script v]\nend\nif <(#Five) = [v]> then\n    if <(#Four) = [0]> then\n        switch costume to (v1 v)\n    else\n        if <(#Four) < [30]> then\n            if <(State) < [2]> then\n                switch costume to (v2 v)\n            else\n                if <(State) < [6]> then\n                    switch costume to (v3 v)\n                else\n                    switch costume to (v2 v)\n                end\n            end\n            if <(State) > [6]> then\n                replace item (no.) of [ent state v] with [0]\n            end\n        else\n            if <(State) < [32]> then\n                switch costume to (v4 v)\n            else\n                if <(State) < [36]> then\n                    switch costume to (v5 v)\n                else\n                    switch costume to (v4 v)\n                end\n            end\n            if <(State) > [36]> then\n                replace item (no.) of [ent state v] with [0]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<<(#Five) = [awy]> or <(#Five) = [awz]>> or <<(#Five) = [al]> or <(#Five) = [ag]>>> then\n    set [#eight v] to [2]\n    stop [this script v]\nend\nif <<(#Five) = [aa]> or <(#Five) = [cn]>> then\n    set rotation style [left-right v]\n    point in direction ((item (no.) of [ent dir v]) * (-1))\n    if <(State) > [0]> then\n        Cost [36] [2]\n    else\n        set [#eight v] to [2]\n    end\n    stop [this script v]\nend\nif <(#Five) = [ab]> then\n    switch costume to (invis v)\n    stop [this script v]\nend\nif <(#Five) = [ah]> then\n    if <(PTimer) = [0]> then\n        switch costume to (ah v)\n    else\n        switch costume to (ai v)\n    end\n    stop [this script v]\nend\nif <(#Five) = [ai]> then\n    if <(PTimer) = [0]> then\n        switch costume to (ai v)\n    else\n        switch costume to (ah v)\n    end\n    stop [this script v]\nend\nif <<(#Five) = [am]> or <(#Five) = [an]>> then\n    if <((State) mod (1)) > [0.6]> then\n        if <(State) < [23]> then\n            if <(State) < [3]> then\n                switch costume to (join (#Five) [2])\n            else\n                switch costume to (large v)\n                change x by (([cos v] of (((State) - (270)) * (90)) ) * (1.5))\n                switch costume to (join (#Five) [1])\n            end\n        else\n            switch costume to (join (#Five) [1])\n        end\n    else\n        switch costume to (join (#Five) [1])\n    end\n    stop [this script v]\nend\nif <(#Five) = [ar]> then\n    if <(State) < [2]> then\n        switch costume to (ar v)\n    else\n        if <(State) < [30]> then\n            switch costume to (large v)\n            change x by (([cos v] of (((State) - (270)) * (75)) ) * (2))\n        end\n        switch costume to (ar2 v)\n    end\n    stop [this script v]\nend\nif <<(#Five) = [bd]> or <(#Five) = [bf]>> then\n    switch costume to (invis v)\n    stop [this script v]\nend\nif <(#Five) = [be]> then\n    if <<(State) = [0]> or <(State) > [12]>> then\n        switch costume to (be1 v)\n    else\n        switch costume to (be2 v)\n    end\n    stop [this script v]\nend\nif <(#Five) = [br]> then\n    if <<(State) < [3]> or <(State) > [354]>> then\n        switch costume to (cloud1 v)\n    else\n        if <<(State) < [5]> or <(State) > [348]>> then\n            switch costume to (cloud2 v)\n        else\n            switch costume to (cloud3 v)\n        end\n    end\n    stop [this script v]\nend\nif <(#Five) = [cc]> then\n    switch costume to (cc1 v)\n    stamp\n    set rotation style [all around v]\n    switch costume to (large v)\n    point in direction ((State) + (90))\n    switch costume to (join [cc] ((22Mod4+1) + (1)))\n    stop [this script v]\nend\nif <(#Five) = [ci]> then\n    if <<(item (no.) of [blstga v]) = [i]> or <(item (no.) of [blstga v]) = [0]>> then\n        if <(join (SpawnX) (SpawnY)) = (join (([floor v] of ((no.) / (WorldHeight)) ) + (1)) ((no.) mod (WorldHeight)))> then\n            switch costume to (join [ci] ((22Mod4+1) + (4)))\n        else\n            switch costume to (ci v)\n        end\n    else\n        switch costume to (join [ci] (([floor v] of ((item (no.) of [blstga v]) / (2)) ) + (1)))\n    end\n    stop [this script v]\nend\nif <(#Five) = [df]> then\n    set rotation style [all around v]\n    if < (item (ItemNo.) of [blcoga v]) contains [£]?> then\n        set rotation style [left-right v]\n        point in direction (-90)\n        switch costume to (df v)\n    else\n        if < (item (ItemNo.) of [blcoga v]) contains [$]?> then\n            point in direction (180)\n            switch costume to (df2 v)\n        else\n            if < (item (ItemNo.) of [blcoga v]) contains [%]?> then\n                point in direction (0)\n                switch costume to (df3 v)\n            else\n                point in direction (90)\n                switch costume to (df v)\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(#Five) = [dg]> then\n    if <<(entity) = [1]> and <not < (item (no.) of [ent bon v]) contains [!]?>>> then\n        switch costume to (large v)\n        change y by (4)\n    end\nend\nif <(#Five) = [dk]> then\n    set [#cus1 v] to (item (no.) of [ent bon v])\n    CostumeCannon\n    stop [this script v]\nend\nif <(#Five) = [cs]> then\n    if <(PTimer) = [0]> then\n        switch costume to (cs v)\n    else\n        switch costume to (cs2 v)\n    end\n    stop [this script v]\nend\nif <(#Five) = [ej]> then\n    if < (#Fourteen) contains [l]?> then\n        switch costume to (large v)\n        change y by (-2)\n        switch costume to (item (([floor v] of (((GameTimer) * (22)) mod (14)) ) + (1)) of [type - powerups v])\n        if <(costume [name v]) = [bs]> then\n            switch costume to (large v)\n            switch costume to (bs2 v)\n        end\n        stamp\n        switch costume to (large v)\n        change y by (2)\n    end\n    switch costume to (ej1 v)\n    stop [this script v]\nend\nif <(#Five) = [em]> then\n    if <(State) > [0]> then\n        switch costume to (em2 v)\n        set size to ((350) - ((State) * (-6))) %\n    else\n        switch costume to (em v)\n    end\n    stop [this script v]\nend\nif <<(#Five) = [es]> or <(#Five) = [et]>> then\n    if <(State) < [0]> then\n        if <(State) < [-25]> then\n            switch costume to (invis v)\n            stop [this script v]\n        else\n            change y by ((State) * (-0.65))\n            set size to ((400) - ((State) * (-16))) %\n        end\n    end\n    if <<(State) > [1]> and <(State) < [30]>> then\n        change x by (([cos v] of (((GameTimer) + ((no.) / (4.2))) * (4320)) ) * (2))\n    end\nend\nswitch costume to (#Five)\nstop [this script v]\n\ndefine ScanningLoad\nset [playermoved v] to [0]\nset [#one v] to [0]\nrepeat (length of [interactwithblockx v])\n    set [movedbyenvironment v] to [0]\n    change [#one v] by (1)\n    set [#thirteen v] to [24]\n    set [#twelve v] to [0]\n    set [#five v] to (item (item (#One) of [interactwithblocksource v]) of [ent ty v])\n    InteractingWidth\n    set [y v] to ((item (#One) of [interactwithblocky v]) + (24))\n    repeat (3)\n        set [x v] to ((item (#One) of [interactwithblockx v]) + (-24))\n        repeat (3)\n            if <(#Twelve) = [0]> then\n                set [#eight v] to ((((round ((X) / (32))) - (1)) * (WorldHeight)) + (round ((Y) / (32))))\n                if <not <<(item (#Eight) of [unique type v]) = [i]> or <(item (#Eight) of [unique type v]) = []>>> then\n                    if <(item (#Eight) of [blcoga v]) = []> then\n                        replace item (#Eight) of [blcoga v] with [i]\n                    end\n                    set [#cus1 v] to (item (#Eight) of [blcoga v])\n                    SetRealContentsFrom\n                    set [#cus1 v] to (item (#Eight) of [unique type v])\n                    set [#cus2 v] to (#Eight)\n                    set [#fourteen v] to (([floor v] of ((#Eight) / (WorldHeight)) ) + (1))\n                    set [#fifteen v] to ((#Eight) mod (WorldHeight))\n                    set [#two v] to [0]\n                    PerformScanForThisBlock\n                end\n            end\n            change [x v] by (24)\n        end\n        change [y v] by (-24)\n    end\n    if <(#Twelve) = [0]> then\n        if <not <(item (#One) of [interactwithblocktype v]) = [Invis]>> then\n            set [#seven v] to [0]\n            repeat (length of [loadedsolids v])\n                change [#seven v] by (1)\n                if <(#Twelve) = [0]> then\n                    if <not <[deleteentitylist v] contains (item (#Seven) of [loadedsolids v])?>> then\n                        if <(letter (2) of (item (item (#Seven) of [loadedsolids v]) of [ent ty v])) = [x]> then\n                            set [#five v] to (letter (1) of (item (item (#Seven) of [loadedsolids v]) of [ent ty v]))\n                        else\n                            set [#five v] to (join (letter (1) of (item (item (#Seven) of [loadedsolids v]) of [ent ty v])) (letter (2) of (item (item (#Seven) of [loadedsolids v]) of [ent ty v])))\n                        end\n                        set [#thirteen v] to [24]\n                        InteractingWidth\n                        set [#cus1 v] to (item (item (#Seven) of [loadedsolids v]) of [ent bon v])\n                        SetRealContentsFrom\n                        set [#cus1 v] to (#Five)\n                        set [#cus2 v] to (item (#Seven) of [loadedsolids v])\n                        set [#fourteen v] to ((item (item (#Seven) of [loadedsolids v]) of [ent x v]) / (32))\n                        set [#fifteen v] to ((item (item (#Seven) of [loadedsolids v]) of [ent y v]) / (32))\n                        set [#two v] to [1]\n                        if <<(item (#One) of [interactwithblocksource v]) = [Player]> and <(PlayerXVelocity) = [0]>> then\n                            if <(item (item (#Seven) of [loadedsolids v]) of [ent x v]) > (item (#One) of [interactwithblockx v])> then\n                                change [#fourteen v] by (((item (item (#Seven) of [loadedsolids v]) of [ent x v v]) * (2)) / (32))\n                            else\n                                change [#fourteen v] by (((item (item (#Seven) of [loadedsolids v]) of [ent x v v]) * (-2)) / (32))\n                            end\n                        end\n                        PerformScanForThisBlock\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine SetRealContentsFrom\nset [#ten v] to []\nset [#three v] to [0]\nrepeat (length of (#Cus1))\n    change [#three v] by (1)\n    if <not <<<(letter (#Three) of (#Cus1)) = [!]> or <(letter (#Three) of (#Cus1)) = [*]>> or <<(letter (#Three) of (#Cus1)) = ["]> or <(letter (#Three) of (#Cus1)) = [£]>>>> then\n        set [#ten v] to (join (#Ten) (letter (#Three) of (#Cus1)))\n    end\nend\nif <(#Ten) = []> then\n    set [#ten v] to [i]\nend\nif <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n    if <<[type - powerups v] contains (#Ten)?> and <not <<<(#Ten) = [bj]> or <<(#Ten) = [ct]> or <(#Ten) = [dr]>>> or <<(#Ten) = [bv]> or <(#Ten) = [ch]>>>>> then\n        if <(Progressive) = [1]> then\n            set [#ten v] to [b]\n        end\n    end\nend\n\ndefine PerformScanForThisBlock\nset [xvelocity v] to [0]\nset [yvelocity v] to [0]\nset [#three v] to (([abs v] of ((#Fourteen) - ((item (#One) of [interactwithblockx v]) / (32))) ) * (32))\nset [#four v] to (([abs v] of ((#Fifteen) - ((item (#One) of [interactwithblocky v]) / (32))) ) * (32))\nset [type v] to (item (#One) of [interactwithblocktype v])\nset [#cus3 v] to (item (#One) of [interactwithblocksource v])\nif <<<<(#Cus1) = [c]> and <<(PTimer) = [0]> or <(#Two) = [1]>>> or <<<(#Cus1) = [af]> or <(#Cus1) = [ek]>> or <<(#Cus1) = [ba]> or <(#Cus1) = [dg]>>>> or <<<<(#Cus1) = [d]> and <<(#Ten) = [i]> and <(#Two) = [0]>>> or <(#Cus1) = [dz]>> and <(PTimer) > [0]>>> then\n    if <<(#Three) < (#Thirteen)> and <(#Four) < [26]>> then\n        if <(Type) = [Coin]> then\n            DeleteThis\n            if <(#Cus1) = [af]> then\n                CreateParticle [af]\n            else\n                if <(#Cus1) = [ek]> then\n                    CreateParticle [Time]\n                else\n                    if <(#Cus1) = [dg]> then\n                        if <(HitGoal) = [0]> then\n                            set [goalhitx v] to [x]\n                            broadcast (HitGoal v)\n                            broadcast (FlashBackground v)\n                        end\n                    else\n                        if <(#Cus1) = [ba]> then\n                            if <(#Two) = [1]> then\n                                add (round (item (#Cus2) of [ent state v])) to [collectedkeycoins v]\n                            else\n                                add (round (#Cus2)) to [collectedkeycoins v]\n                            end\n                            CreateParticle [KeyCoin]\n                        else\n                            if <(#Cus1) = [dz]> then\n                                CreateParticle [BlueCoin]\n                            else\n                                CreateParticle [Coin]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(#Cus1) = [do]> or <<(#Cus1) = [dq]> or <(#Cus1) = [dp]>>> then\n    if <<(#Three) < [32]> and <(#Four) < [40]>> then\n        if <(Type) = [Coin]> then\n            DeleteThis\n            CreateParticle (#Cus1)\n        end\n    end\n    stop [this script v]\nend\nif <(#Cus1) = [ci]> then\n    if <(Type) = [Coin]> then\n        if <(#Cus3) = [Player]> then\n            if <<(item (#Cus2) of [blstga v]) = [i]> or <(item (#Cus2) of [blstga v]) = [0]>> then\n                if <<(#Three) < [24]> and <(#Four) < [26]>> then\n                    if <not <(join (SpawnX) (SpawnY)) = (join (#Fourteen) (#Fifteen))>> then\n                        start sound [smw-checkpoint v]\n                        set [spawnx v] to (#Fourteen)\n                        set [spawny v] to (#Fifteen)\n                        replace item (#Cus2) of [blstga v] with [1]\n                    end\n                end\n            end\n        end\n    end\nend\nif <<<(#Cus1) = [d]> or <(#Cus1) = [c]>> or <<<(#Cus1) = [j]> or <(#Cus1) = [ej]>> or <<(#Cus1) = [n]> or <(#Cus1) = [bz]>>>> then\n    set [xvelocity v] to [1]\n    set [yvelocity v] to [1]\nend\nif <(#Cus1) = [e]> then\n    set [xvelocity v] to [1]\n    if <<(#Three) < (#Thirteen)> and <(#Four) < [16]>> then\n        if <(Type) = [Feet]> then\n            if <(#Two) = [1]> then\n                if <((item (#Cus2) of [ent state v]) - (0.01)) < [0]> then\n                    start sound [Bump v]\n                end\n                replace item (#Cus2) of [ent state v] with [1]\n            else\n                if <((item (#Cus2) of [blstga v]) - (0.01)) < [0]> then\n                    start sound [Bump v]\n                end\n                replace item (#Cus2) of [blstga v] with [1]\n            end\n            if <(#Cus3) = [Player]> then\n                set [playeryvelocity v] to [19]\n                set [playerxvelocity v] to ((PlayerXVelocity) / (4))\n                if <not <(#Ten) = [i]>> then\n                    SpawningItem [U]\n                end\n            else\n                replace item (#Cus3) of [ent y v v] with [13.8]\n            end\n        end\n    end\n    set [yvelocity v] to [1]\nend\nif <(#Cus1) = [ej]> then\n    if <<(#Ten) = [il]> or <(#Ten) = [l]>> then\n        set [#ten v] to (item (([floor v] of (((GameTimer) * (22)) mod (14)) ) + (1)) of [type - powerups v])\n        set [xvelocity v] to [1]\n    end\nend\nif <<(#Cus1) = [g]> or <<(#Cus1) = [cd]> or <(#Cus1) = [fb]>>> then\n    if <(PTimer) = [0]> then\n        if <<(#Three) < (#Thirteen)> and <(#Four) < [16]>> then\n            set [#nine v] to ((<(#Cus1) = [cd]> + (1)) * (2))\n            if <(Type) = [Feet]> then\n                if <(MovedByEnvironment) = [0]> then\n                    set [#cus4 v] to (item (#Cus2) of [blcoga v])\n                    if <<(#Cus1) = [fb]> and <(On/Off) = [1]>> then\n                        if <(item (#Cus2) of [blcoga v]) = ["]> then\n                            set [#cus4 v] to [£]\n                        else\n                            set [#cus4 v] to ["]\n                        end\n                    end\n                    if <(#Cus4) = ["]> then\n                        if <(#Cus3) = [Player]> then\n                            set [player movement v] to ((#Nine) * (-1))\n                        else\n                            replace item (#Cus3) of [ent mo v] with ((#Nine) * (-1))\n                            if <<(item ((#Eight) - (WorldHeight)) of [bltyga v]) = [i]> and <(item (((#Eight) - (WorldHeight)) + (1)) of [bltyga v]) = [i]>> then\n                                replace item (#Cus3) of [ent y v v] with [-0.1]\n                                if <(item (#One) of [interactwithblockx v]) < (((#Fourteen) * (32)) + (-21))> then\n                                    replace item (#Cus3) of [ent dir v] with [-90]\n                                end\n                            end\n                        end\n                    else\n                        if <(#Cus3) = [Player]> then\n                            set [player movement v] to (#Nine)\n                        else\n                            replace item (#Cus3) of [ent mo v] with (#Nine)\n                            if <<(item ((#Eight) + (WorldHeight)) of [bltyga v]) = [i]> and <(item (((#Eight) + (WorldHeight)) + (1)) of [bltyga v]) = [i]>> then\n                                replace item (#Cus3) of [ent y v v] with [-0.1]\n                                if <(item (#One) of [interactwithblockx v]) > (((#Fourteen) * (32)) + (21))> then\n                                    replace item (#Cus3) of [ent dir v] with [90]\n                                end\n                            end\n                        end\n                    end\n                    set [movedbyenvironment v] to [1]\n                end\n            end\n        end\n        set [yvelocity v] to [1]\n    end\nend\nif <<(#Cus1) = [m]> or <<(#Cus1) = [ag]> or <(#Cus1) = [cp]>>> then\n    if <<(Invincible) = [0]> and <not <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>>>> then\n        set [#nine v] to <<<(#Two) = [0]> or <(item (#Cus2) of [ent x v v]) = [0]>> and <not <<(MoveLeft) = [1]> or <(MoveRight) = [1]>>>>\n        if <<([abs v] of ((((#Fourteen) * (32)) - ((item (#Cus2) of [ent x v v]) * (#Two))) - (PlayerX)) ) < ((24.5) - (#Nine))> and <<(((#Fifteen) * (32)) - (PlayerY)) > ((28.5) * (-1))> and <(((#Fifteen) * (32)) - (PlayerY)) < ((PlayerHeight) + (0.5))>>> then\n            broadcast (Powerdown v)\n        end\n    end\n    if <not <(#Cus1) = [m]>> then\n        set [yvelocity v] to [1]\n    end\nend\nif <<(#Cus1) = [o]> or <(#Cus1) = [q]>> then\n    set [yvelocity v] to [1]\nend\nif <(#Cus1) = [cs]> then\n    if <<(#Three) < [24]> and <(#Four) < [24]>> then\n        if <(Type) = [Melt]> then\n            CreateParticle [Explode]\n            set [#eleven v] to (item (#Cus3) of [ent ty v])\n            if <not <<<<(#Eleven) = [cc]> or <(#Eleven) = [dd]>> or <<(#Eleven) = [cw]> or <(#Eleven) = [eu]>>> or <<(#Eleven) = [cf]> or <(#Eleven) = [er]>>>> then\n                add (#Cus3) to [deleteentitylist v]\n            end\n            set [#twelve v] to [1]\n            if <(#Two) = [1]> then\n                replace item (#Cus2) of [ent ty v] with [c]\n            else\n                replace item (#Cus2) of [unique type v] with [c]\n                replace item (#Cus2) of [bltyga v] with [i]\n                UpdateScroll\n            end\n        end\n    end\n    set [yvelocity v] to [1]\nend\nif <(#Cus1) = [ab]> then\n    if <(Type) = [Invis]> then\n        if <<(#Three) < [24]> and <(#Four) < [9]>> then\n            set [playery v] to (((#Fifteen) * (32)) - (PlayerHeight))\n            set [playeryvelocity v] to [0.5]\n            start sound [Bump v]\n            replace item (#Cus2) of [blstga v] with [1]\n            SpawningItem [O]\n        end\n    end\nend\nif <<<(#Cus1) = [aw]> or <<(#Cus1) = [el]> or <(#Cus1) = [elz]>>> or <<(#Cus1) = [awy]> or <(#Cus1) = [awz]>>> then\n    if <<(([abs v] of (((PlayerX) / (32)) - (#Fourteen)) ) * (32)) < [20]> and <<(([abs v] of ((((PlayerY) + (-4)) / (32)) - (#Fifteen)) ) * (32)) < [16]> or <(([abs v] of ((((PlayerY) + ((PlayerHeight) - (32))) / (32)) - (#Fifteen)) ) * (32)) < [16]>>> then\n        if <<<(MoveUp) = [1]> and <<(Holding) = [0]> and <(Crouching) = [0]>>> or <(Climbing) = [0.5]>> then\n            set [climbing v] to [1]\n        end\n    end\nend\nif <(XVelocity) = [1]> then\n    if <<<<(#Three) < (#Thirteen)> and <(#Four) < [4]>> and <(Type) = [HitB]>> or <<<<(#Three) < [8]> and <(#Four) < [29]>> and <(Type) = [HitS]>> or <<<<(#Three) < [8]> and <(#Four) < [24]>> and <(Type) = [HitSpike]>> or <<<(#Three) < [24]> and <(#Four) < [24]>> and <(Type) = [HitSpin]>>>>> then\n        set [#six v] to [0]\n        if <(Type) = [HitSpike]> then\n            add (#Cus3) to [deleteentitylist v]\n        end\n        add [0] to [entintsource v]\n        add [BlockBounce] to [entinttype v]\n        add ((#Fourteen) * (32)) to [entintx v]\n        add (((#Fifteen) * (32)) + (24)) to [entinty v]\n        if <(#Two) = [1]> then\n            if <<(item (#Cus2) of [ent state v]) > [0]> and <not <(item (#Cus2) of [ent state v]) = [i]>>> then\n                set [#six v] to [1]\n            else\n                replace item (#Cus2) of [ent state v] with [1]\n            end\n        else\n            if <<<(item (#Cus2) of [blstga v]) > [0]> and <not <(item (#Cus2) of [blstga v]) = [i]>>> and <(#Cus3) = [Player]>> then\n                set [#six v] to [1]\n            else\n                replace item (#Cus2) of [blstga v] with [1]\n            end\n        end\n        if <(#Six) = [0]> then\n            start sound [Bump v]\n            if <(#Cus1) = [j]> then\n                UpdateScroll\n                if <(On/Off) = [0]> then\n                    set [on/off v] to [0.75]\n                else\n                    if <(On/Off) = [1]> then\n                        set [on/off v] to [0.25]\n                    end\n                end\n            end\n            if <(#Cus1) = [bz]> then\n                broadcast (POW v)\n                CreateParticle [Goop]\n                DeleteThis\n                stop [this script v]\n            end\n            if <(#Ten) = [i]> then\n                if <<(#Cus1) = [d]> or <<(#Cus1) = [n]> or <(#Cus1) = [c]>>> then\n                    if <<<(#Cus3) = [Player]> and <not <<(Powerup) = [N]> or <(Powerup) = [M]>>>> or <not <(#Cus3) = [Player]>>> then\n                        CreateParticle [Brick]\n                        DeleteThis\n                        if <(#Two) = [0]> then\n                            UpdateScroll\n                        end\n                    end\n                end\n            else\n                if <(item (#Cus3) of [ent ty v]) = [es]> then\n                    SpawningItem [U]\n                else\n                    SpawningItem [O]\n                end\n            end\n            if <(Type) = [HitS]> then\n                if <not <<(item (#Cus3) of [ent y v v]) = [0]> or <(item (#Cus3) of [ent ty v]) = [ec]>>> then\n                    set [#twelve v] to [1]\n                end\n            end\n        end\n    end\nend\nif <(YVelocity) = [1]> then\n    if <<(#Three) < [24]> and <(#Four) < [24]>> then\n        if <(Type) = [Bomb]> then\n            if <(#Cus1) = [j]> then\n                if <(#Two) = [1]> then\n                    replace item (#Cus2) of [ent state v] with [1]\n                else\n                    replace item (#Cus2) of [blstga v] with [1]\n                end\n                if <(On/Off) = [0]> then\n                    set [on/off v] to [0.75]\n                else\n                    if <(On/Off) = [1]> then\n                        set [on/off v] to [0.25]\n                    end\n                end\n            else\n                if <(#Cus1) = [bz]> then\n                    broadcast (POW v)\n                    DeleteThis\n                else\n                    if <(#Cus1) = [q]> then\n                        CreateParticle [BIce]\n                    else\n                        CreateParticle [Brick]\n                    end\n                    if <(#Two) = [1]> then\n                        if <(#Cus1) = [cs]> then\n                            replace item (#Cus2) of [ent ty v] with [c]\n                        else\n                            add (#Cus2) to [deleteentitylist v]\n                        end\n                    else\n                        if <(#Cus1) = [cs]> then\n                            replace item (#Cus2) of [unique type v] with [c]\n                        else\n                            replace item (#Cus2) of [unique type v] with [i]\n                        end\n                        replace item (#Cus2) of [bltyga v] with [i]\n                        UpdateScroll\n                    end\n                end\n            end\n        end\n    end\nend\nif <(#Thirteen) = [32]> then\n    if <(#Two) = [1]> then\n        if <not << (item (#Cus2) of [ent bon v]) contains [!]?> or < (item (#Cus2) of [ent bon v]) contains [*]?>>> then\n            if <(Type) = [Twister]> then\n                if <<(#Three) < [28]> and <(#Four) < [84]>> then\n                    if <(item (#Cus2) of [ent y v v]) < [6]> then\n                        replace item (#Cus2) of [ent y v v] with ((item (#Cus2) of [ent y v v]) + (2))\n                        if <(item (#Cus2) of [ent y v v]) < [-6]> then\n                            replace item (#Cus2) of [ent y v v] with ((item (#Cus2) of [ent y v v]) + (4))\n                        end\n                    end\n                    replace item (#Cus2) of [ent x v v] with (((item (#Cus2) of [ent x v]) - ((((item (#Cus2) of [ent x v]) * (7)) + (item (#One) of [interactwithblockx v])) / (8))) * (-1))\n                    if <(item (#Cus2) of [ent x v]) > (item (#One) of [interactwithblockx v])> then\n                        replace item (#Cus2) of [ent dir v] with [-90]\n                    else\n                        replace item (#Cus2) of [ent dir v] with [90]\n                    end\n                end\n            end\n            if <<(#Three) < [4]> and <(#Four) < [24]>> then\n                if <(Type) = [RBounce]> then\n                    replace item (#Cus2) of [ent x v v] with [12]\n                    replace item (#Cus2) of [ent y v v] with [8]\n                    replace item (#Cus3) of [ent state v] with [1]\n                end\n                if <(Type) = [LBounce]> then\n                    replace item (#Cus2) of [ent x v v] with [-12]\n                    replace item (#Cus2) of [ent y v v] with [8]\n                    replace item (#Cus3) of [ent state v] with [31]\n                end\n            end\n            if <(Type) = [Bounce]> then\n                if <<(#Three) < [24]> and <(#Four) < [12]>> then\n                    replace item (#Cus2) of [ent y v v] with [13.8]\n                    if <(item (#Cus3) of [ent ty v]) = [t]> then\n                        replace item (#Cus3) of [ent state v] with [0.1]\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine RenderBlocks (shadow) (layer)\nset [itemno. v] to ((((([floor v] of ((MapX) / (32)) ) + ([floor v] of ((RenderWidth) / (-32)) )) * (WorldHeight)) + (([floor v] of ((MapY) / (32)) ) + (-5))) + (1))\nif <(RenderWidth) < [300]> then\n    set [x v] to ((-224) - ((MapX) mod (32)))\nelse\n    set [x v] to ((-320) - ((MapX) mod (32)))\nend\nset [y v] to ((-124) - ((MapY) mod (32)))\nrepeat ((((round ((RenderWidth) / (32))) * (2)) - (1)) + <not <((MapX) mod (32)) = [0]>>)\n    set [#cus4 v] to ((10) + <not <((MapY) mod (32)) = [0]>>)\n    repeat (#Cus4)\n        if <not <<(ItemNo.) > (length of [blty v])> or <<(ItemNo.) < [1]> or <(((Y) + (MapY)) / (32)) > (WorldHeight)>>>> then\n            if <(Edit/PlayMode) = [1]> then\n                set [#sixteen v] to (item (ItemNo.) of [bltyga v])\n                if <not <(#Sixteen) = [i]>> then\n                    if <(item (ItemNo.) of [unique type v]) = [i]> then\n                        CorrectCostume\n                        stamp\n                    end\n                end\n                set [#sixteen v] to (item (ItemNo.) of [unique type v])\n                if <not <<(#Sixteen) = [i]> or <(#Sixteen) = []>>> then\n                    set [#two v] to [0]\n                    switch costume to (large v)\n                    go to x: (X) y: (Y)\n                    CostumeUnique (#Sixteen) [] (shadow) (ItemNo.)\n                    FinalCostume\n                    stamp\n                    set rotation style [don't rotate v]\n                    if <(POW) = [1]> then\n                        if <<<<(#Sixteen) = [c]> and <(PTimer) = [0]>> or <<<(#Sixteen) = [d]> and <(item (ItemNo.) of [blcoga v]) = [i]>> and <(PTimer) > [0]>>> and <(shadow) = []>> then\n                            add (join (join [c,] (join (((X) + (MapX)) / (32)) [,])) (join (join (((Y) + (MapY)) / (32)) [,]) (join ([cos v] of ((ItemNo.) * (56)) ) [,3,0,0,0,]))) to [potentialentityspawn v]\n                            replace item (ItemNo.) of [unique type v] with [i]\n                            replace item (ItemNo.) of [bltyga v] with [i]\n                            set [loadentitiesdelay v] to [0]\n                        end\n                    end\n                end\n            else\n                set [#sixteen v] to (item (ItemNo.) of [blty v])\n                set [#six v] to (item (ItemNo.) of [blco v])\n                if <not <(#Sixteen) = [i]>> then\n                    CorrectCostume\n                    if <[type - rotatable v] contains (#Sixteen)?> then\n                        if <<not <[type - uniques entities v] contains (#Sixteen)?>> or <<<(#Sixteen) = [aa]> or <(#Sixteen) = [eu]>> or <<(#Sixteen) = [cn]> or <(#Sixteen) = [dk]>>>> then\n                            if <(#Sixteen) = [dk]> then\n                                set [#cus1 v] to (#Six)\n                                CostumeCannon\n                            else\n                                set rotation style [left-right v]\n                                if < (#Six) contains [£]?> then\n                                    point in direction (-90)\n                                else\n                                    if < (#Six) contains ["]?> then\n                                        point in direction (90)\n                                    else\n                                        if < (#Six) contains [!]?> then\n                                            point in direction (90)\n                                        else\n                                            if < (#Six) contains [^]?> then\n                                                switch costume to (large v)\n                                                switch costume to (join (#Sixteen) [2])\n                                                point in direction (90)\n                                            else\n                                                if < (#Six) contains [&]?> then\n                                                    switch costume to (large v)\n                                                    switch costume to (join (#Sixteen) [2])\n                                                    point in direction (-90)\n                                                else\n                                                    set rotation style [all around v]\n                                                    if < (#Six) contains [$]?> then\n                                                        point in direction (180)\n                                                    else\n                                                        point in direction (0)\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                    if <(#Sixteen) = [ab]> then\n                        if <(shadow) = []> then\n                            set [ghost v] effect to (33)\n                        end\n                    end\n                    if <<[type - entities v] contains (#Sixteen)?> or < (#Six) contains [!]?>> then\n                        if <(layer) = [2]> then\n                            stamp\n                        end\n                    else\n                        if <(layer) = [1]> then\n                            stamp\n                        end\n                    end\n                    set rotation style [don't rotate v]\n                    if <<not <(#Six) = [i]>> and <not <<<(#Sixteen) = [bo]> or <(#Sixteen) = [bw]>> or <<<<(#Sixteen) = [u]> or <(#Sixteen) = [eu]>> or <(#Sixteen) = [dk]>> or <(#Sixteen) = [df]>>>>> then\n                        set [#ten v] to [0]\n                        if <(shadow) = []> then\n                            set [ghost v] effect to (33)\n                            switch costume to (large v)\n                            go to x: ((X) + (4)) y: ((Y) + (([sin v] of ((GameTimer) * (360)) ) * (2)))\n                            repeat until <(#Ten) = (length of (#Six))>\n                                change [#ten v] by (1)\n                                set [#eleven v] to (letter (#Ten) of (#Six))\n                                set [#twelve v] to (letter ((#Ten) + (1)) of (#Six))\n                                if <<[itemlist v] contains (join (#Eleven) (#Twelve))?> and <not <(#Twelve) = []>>> then\n                                    change [#ten v] by (1)\n                                    switch costume to (join (#Eleven) (#Twelve))\n                                else\n                                    switch costume to (#Eleven)\n                                end\n                                stamp\n                                switch costume to (large v)\n                                change x by (12)\n                                set y to ((Y) + (([sin v] of (((GameTimer) * (360)) + ((#Ten) * (90))) ) * (2)))\n                            end\n                        end\n                    end\n                    if <(shadow) = []> then\n                        clear graphic effects\n                    end\n                end\n            end\n        end\n        change [y v] by (32)\n        change [itemno. v] by (1)\n    end\n    change [x v] by (32)\n    set [y v] to ((-124) - ((MapY) mod (32)))\n    change [itemno. v] by ((WorldHeight) + ((#Cus4) * (-1)))\nend\n\ndefine RenderUniqueEntities (shadow) (layer)\nset [itemno. v] to [0]\nif <(layer) = [1]> then\n    set [#nine v] to (length of [loadedsolids v])\nelse\n    set [#nine v] to (length of [loadedsolidsforeground v])\nend\nrepeat (#Nine)\n    change [itemno. v] by (1)\n    if <(layer) = [1]> then\n        set [#nine v] to (item (ItemNo.) of [loadedsolids v])\n    else\n        set [#nine v] to (item (ItemNo.) of [loadedsolidsforeground v])\n    end\n    set [#sixteen v] to (item (#Nine) of [ent ty v])\n    if <<< (item (#Nine) of [ent bon v]) contains [!]?> or <<<(#Sixteen) = [z]> or <(#Sixteen) = [am]>> or <<<(#Sixteen) = [r]> or <(#Sixteen) = [an]>> or <(#Sixteen) = [al]>>>> and <(layer) = [1]>> then\n        if <(shadow) = []> then\n            add (#Nine) to [loadedsolidsforeground v]\n        end\n    else\n        set [x v] to ((item (#Nine) of [ent x v]) - (MapX))\n        set [y v] to (((item (#Nine) of [ent y v]) - (MapY)) + (4))\n        if <<<([abs v] of (X) ) < ((RenderWidth) + (<<<(#Sixteen) = [s]> or <<(#Sixteen) = [ez]> or <(#Sixteen) = [fa]>>> or <<(#Sixteen) = [bp]> or <(#Sixteen) = [br]>>> * (48)))> and <([abs v] of (Y) ) < ((196) + (<<(#Sixteen) = [es]> or <(#Sixteen) = [et]>> * (32)))>> or <<<(#Sixteen) = [cc]> or <(#Sixteen) = [eu]>> or <<(#Sixteen) = [ds]> or <(#Sixteen) = [em]>>>> then\n            switch costume to (large v)\n            set size to (400) %\n            go to x: (X) y: (Y)\n            CostumeUnique (#Sixteen) [1] (shadow) (#Nine)\n            FinalCostume\n            stamp\n            if <<(#Sixteen) = [dx]> or <<(#Sixteen) = [ex]> or <(#Sixteen) = [nx]>>> then\n                switch costume to (large v)\n                switch costume to (join [Wings] (22Mod2+1))\n                stamp\n            end\n            if <<(#Sixteen) = [ez]> or <(#Sixteen) = [fa]>> then\n                switch costume to (large v)\n                switch costume to (join [Wings] ((22Mod2+1) + (2)))\n                stamp\n            end\n            set rotation style [don't rotate v]\n        end\n    end\nend\nset size to (400) %\n\ndefine CreateParticle (type)\nadd ((#Fourteen) * (32)) to [createparticlex v]\nadd ((#Fifteen) * (32)) to [createparticley v]\nadd (type) to [createparticletype v]\n\ndefine RenderTransport\nset [itemno. v] to [0]\nrepeat (length of [doorx v])\n    change [itemno. v] by (1)\n    set [x v] to (((item (ItemNo.) of [doorx v]) * (32)) - (MapX))\n    set [type v] to (item (ItemNo.) of [doortype v])\n    set [y v] to (((((item (ItemNo.) of [doory v]) + <<(letter (1) of (Type)) = [b]> and <(item (ItemNo.) of [doorextra v]) = [90]>>) * (32)) - (MapY)) + (4))\n    if <<([abs v] of (X) ) < ((RenderWidth) + (8))> and <([abs v] of (Y) ) < [204]>> then\n        clear graphic effects\n        switch costume to (large v)\n        go to x: (X) y: (Y)\n        point in direction (90)\n        set [x v] to ((item (ItemNo.) of [doorx v]) * (32))\n        set [y v] to ((item (ItemNo.) of [doory v]) * (32))\n        if <(AllowMovement) = [1]> then\n            if <<(Type) = [bb]> or <(Type) = [bc]>> then\n                if <([abs v] of (item (ItemNo.) of [doorextra v]) ) = [90]> then\n                    change [x v] by ((item (ItemNo.) of [doorextra v]) / (6))\n                    if <<([abs v] of ((X) - (PlayerX)) ) < [8]> and <([abs v] of ((Y) - (PlayerY)) ) < [8]>> then\n                        if <<(PlayerXVelocity) = [0]> and <<(PlayerYVelocity) = [0]> or <(PlayerUnderwater) = [1]>>> then\n                            set [#ten v] to [0]\n                            if <(item (ItemNo.) of [doorextra v]) = [90]> then\n                                if <(MoveRight) = [1]> then\n                                    set [#ten v] to [1]\n                                end\n                            else\n                                if <(MoveLeft) = [1]> then\n                                    set [#ten v] to [1]\n                                end\n                            end\n                            Common1\n                            if <(UsingDoor) = [1]> then\n                                set [playerx v] to ((X) - ((item (ItemNo.) of [doorextra v]) / (12.5)))\n                            end\n                        end\n                    end\n                else\n                    change [x v] by (([cos v] of (item (ItemNo.) of [doorextra v]) ) * (16))\n                    change [y v] by (-4)\n                    if <(item (ItemNo.) of [doorextra v]) = [0]> then\n                        change [y v] by (8)\n                        change [y v] by (((PlayerHeight) - (28)) * (-1))\n                    end\n                    if <([abs v] of ((Y) - (PlayerY)) ) < [4]> then\n                        set [#ten v] to [0]\n                        if <(item (ItemNo.) of [doorextra v]) = [0]> then\n                            if <(MoveUp) = [1]> then\n                                if <(PlayerYVelocity) = [0.5]> then\n                                    set [#ten v] to [1]\n                                end\n                            end\n                        else\n                            if <(MoveDown) = [1]> then\n                                if <(PlayerYVelocity) = [0]> then\n                                    set [#ten v] to [1]\n                                end\n                            end\n                        end\n                        Common1\n                    end\n                end\n            else\n                if <<([abs v] of ((Y) - (PlayerY)) ) < [8]> and <(PlayerYVelocity) = [0]>> then\n                    if <(MoveDown) = [1]> then\n                        set [#ten v] to [1]\n                        if <not <<<(Type) = [ak]> and <(PTimer) = [0]>> or <<<(Type) = [aj]> and <(Keys) = [0]>> or <<(Type) = [dv4]> or <(Type) = [ew4]>>>>> then\n                            Common1\n                        end\n                    end\n                end\n            end\n        end\n        if <<(Edit/PlayMode) = [0]> or <not <<(Type) = [bb]> or <(Type) = [bc]>>>> then\n            if <<(Type) = [bb]> or <(Type) = [bc]>> then\n                set rotation style [all around v]\n                if <(Type) = [bb]> then\n                    if <((ItemNo.) mod (2)) = [1]> then\n                end\n                point in direction (item (ItemNo.) of [doorextra v])\n                turn right (180) degrees\n            else\n                if <<(UsingDoor) = [1]> and <not <<(Type) = [dv4]> or <(Type) = [ew4]>>>> then\n                    if <<<<(Type) = [ad]> or <(Type) = [dv]>> or <(Type) = [aj]>> or <<(Type) = [aj2]> or <<(Type) = [ak]> or <(Type) = [ew]>>>> then\n                        if <<(UsingDoorNo.) = (ItemNo.)> and <(PlayerTimer) < [0.14]>> then\n                            if <(PlayerTimer) < ((0.01) + (<(Type) = [ew]> * (0.015)))> then\n                                switch costume to (join (Type) [2])\n                            else\n                                switch costume to (join (Type) [3])\n                            end\n                        else\n                            if <(ExitingDoorNo.) = (ItemNo.)> then\n                                if <(PlayerTimer) > [0.15]> then\n                                    if <(PlayerTimer) < [0.24]> then\n                                        switch costume to (join (Type) [3])\n                                    else\n                                        if <(PlayerTimer) < [0.25]> then\n                                            switch costume to (join (Type) [2])\n                                        end\n                                    end\n                                end\n                            else\n                                if <<(Type) = [ak]> and <(PTimer) = [0]>> then\n                                    switch costume to (ak1 v)\n                                end\n                            end\n                        end\n                    end\n                else\n                    if <<(Type) = [ak]> and <<(PTimer) = [0]> and <(Edit/PlayMode) = [1]>>> then\n                        switch costume to (ak1 v)\n                    end\n                end\n                if <(Edit/PlayMode) = [0]> then\n                    set [color v] effect to (([floor v] of (((ItemNo.) + (-1)) / (2)) ) * (19))\n                end\n            end\n            if <(costume [name v]) = [Large]> then\n                switch costume to (Type)\n            end\n            stamp\n        end\n    end\nend\n\nwhen I receive [flagclicked v]\nshow list [turbowarp link v]\nswitch costume to (a v)\nset size to (400) %\nhide\ngo to x: (-900) y: (0)\nset [renderwidth v] to [256]\nset [shadows v] to [0]\nif <(x position) < [-300]> then\n    set [renderwidth v] to [336]\n    set [shadows v] to [1]\nend\nset rotation style [don't rotate v]\nset volume to (33) %\nif <(x position) < [-700]> then\n    broadcast (ShowTurbowarp v)\nend\n\nwhen I receive [rendermidgroundblocks v]\ndelete all of [loadedsolidsforeground v]\nRenderTransport\npoint in direction (90)\nset rotation style [don't rotate v]\nclear graphic effects\nif <(Shadows) = [1]> then\n    change [mapx v] by (-8)\n    change [mapy v] by (8)\n    set [brightness v] effect to (-100)\n    set [ghost v] effect to (50)\n    RenderBlocks [1] [1]\n    if <(Edit/PlayMode) = [1]> then\n        RenderUniqueEntities [1] [1]\n    end\n    clear graphic effects\n    change [mapx v] by (8)\n    change [mapy v] by (-8)\nend\nRenderBlocks [] [1]\nif <(Edit/PlayMode) = [1]> then\n    RenderUniqueEntities [] [1]\nend\nif <(Edit/PlayMode) = [0]> then\n    set [x v] to (((OGSpawnX) * (32)) - (MapX))\n    set [y v] to (((OGSpawnY) * (32)) - (MapY))\n    if <<([abs v] of (X) ) < (RenderWidth)> and <([abs v] of (Y) ) < [196]>> then\n        clear graphic effects\n        switch costume to (large v)\n        go to x: (X) y: (Y)\n        switch costume to (spawn v)\n        stamp\n    end\nend\nbroadcast (RenderForegroundBlocks v)\n\nwhen I receive [interactionsupdate v]\nif <(Climbing) = [1]> then\n    set [climbing v] to [0.5]\nend\nif <<(Edit/PlayMode) = [1]> and <(AllowMovement) = [1]>> then\n    ScanningLoad\nend\nif <(Climbing) = [0.5]> then\n    set [climbing v] to [0]\n    if <(MoveUp) = [1]> then\n        set [playeryvelocity v] to [7.5]\n    end\nend\nif <(On/Off) = [0.25]> then\n    set [on/off v] to [0]\nend\nif <(On/Off) = [0.75]> then\n    set [on/off v] to [1]\nend\nbroadcast (InteractionsFinalUpdate v)\n\nwhen I receive [renderforegroundblocks v]\nif <(Shadows) = [1]> then\n    change [mapx v] by (-8)\n    change [mapy v] by (8)\n    set [brightness v] effect to (-100)\n    set [ghost v] effect to (50)\n    if <(Edit/PlayMode) = [1]> then\n        RenderUniqueEntities [1] [2]\n    else\n        RenderBlocks [1] [2]\n    end\n    clear graphic effects\n    change [mapx v] by (8)\n    change [mapy v] by (-8)\nend\nif <(Edit/PlayMode) = [1]> then\n    RenderUniqueEntities [] [2]\nelse\n    RenderBlocks [] [2]\nend\n\nwhen I receive [midgameupdatescroll v]\nwait (0.2) seconds\nset [updatescrollcalledfor v] to [0]\nset [newscrollscan v] to [1]\nbroadcast (UpdateScrollStop v)\n\ndefine InteractingWidth\nif <<<<<<(#Five) = [m]> or <(#Five) = [bh]>> or <<(#Five) = [bha]> or <(#Five) = [bhb]>>> or <<(#Five) = [ca]> or <(#Five) = [ev]>>> or <<(#Five) = [caa]> or <(#Five) = [cab]>>> or <<<(#Five) = [t]> or <(#Five) = [bz]>> or <<(#Five) = [v]> or <(#Five) = [ae]>>>> then\n    set [#thirteen v] to [32]\nend\n\ndefine CorrectCostume\nswitch costume to (large v)\ngo to x: (X) y: (Y)\nswitch costume to (#Sixteen)\nif <(costume [name v]) = [Large]> then\n    set [#one v] to (join (letter (1) of (#Sixteen)) (letter (2) of (#Sixteen)))\n    if <(round (#One)) = (#One)> then\n        set [#two v] to (join (letter (3) of (#Sixteen)) (letter (4) of (#Sixteen)))\n    else\n        set [#one v] to (letter (1) of (#Sixteen))\n        set [#two v] to (join (letter (2) of (#Sixteen)) (letter (3) of (#Sixteen)))\n    end\n    change [#one v] by ((((#One) + (-1)) mod (3)) * (-1))\n    if <(#One) = [85]> then\n        set [#five v] to (#Sixteen)\n        Cost [33] [3]\n    else\n        if <(#One) = [22]> then\n            set [#one v] to [19]\n        end\n        if <(#One) = [64]> then\n            set [#one v] to [34]\n        end\n        Large12\n        if <(#One) = [37]> then\n            if <(costume [name v]) = [Large]> then\n                set [#one v] to ((letter (2) of (#Sixteen)) - (6))\n                Large12\n                if <(costume [name v]) = [Large]> then\n                    set [#one v] to [1]\n                    Large12\n                end\n            end\n        end\n    end\nend\n\ndefine CostumeCannon\nif < (#Cus1) contains ["]?> then\n    switch costume to (dk1 v)\nelse\n    if < (#Cus1) contains [^]?> then\n        switch costume to (dk3 v)\n    else\n        if < (#Cus1) contains [£]?> then\n            switch costume to (dk2 v)\n        else\n            switch costume to (dk4 v)\n        end\n    end\nend\n\ndefine FinalCostume\nif <(costume [name v]) = [Large]> then\n    if <(#Eight) = [1]> then\n        switch costume to (join (#Five) (22Mod4+1))\n    else\n        if <(#Eight) = [2]> then\n            switch costume to (join (#Five) (22Mod2+1))\n        end\n    end\nend\n\ndefine UpdateScroll\nif <(UpdateScrollCalledFor) = [0]> then\n    set [updatescrollcalledfor v] to [1]\n    broadcast (MidGameUpdateScroll v)\nend\n\ndefine Spawn (y) (other) (y2) (other2)\nchange [#fifteen v] by (1)\nif <(#Ten) = [af]> then\n    CreateParticle [af]\nelse\n    if <(#Ten) = [c]> then\n        CreateParticle [Coin]\n    else\n        if <(#Ten) = [ek]> then\n            CreateParticle [Time]\n        else\n            set [loadentitiesdelay v] to [0]\n            change [#fifteen v] by (-1)\n            set [#cus4 v] to (join (join (#Ten) [,]) (join (#Fourteen) [,]))\n            if <[type - powerups v] contains (#Ten)?> then\n                start sound [ItemSprout v]\n                add (join (#Cus4) (join (join (y) [,]) (other))) to [potentialentityspawn v]\n            else\n                add (join (#Cus4) (join (join (y2) [,]) (other2))) to [potentialentityspawn v]\n            end\n        end\n    end\nend\n\ndefine DeleteThis\nif <(#Two) = [1]> then\n    add (#Cus2) to [deleteentitylist v]\nelse\n    replace item (#Cus2) of [unique type v] with [i]\n    replace item (#Cus2) of [bltyga v] with [i]\nend\n\ndefine Common1\nif <<([abs v] of ((X) - (PlayerX)) ) < [24]> and <(HitGoal) = [0]>> then\n    if <<(Type) = [bb]> and <((ItemNo.) mod (2)) = [0]>> then\n        set [#ten v] to [0]\n    end\n    if <(#Ten) = [1]> then\n        set [usingdoorno. v] to (ItemNo.)\n        if <((ItemNo.) mod (2)) = [1]> then\n            set [exitingdoorno. v] to ((ItemNo.) + (1))\n        else\n            set [exitingdoorno. v] to ((ItemNo.) - (1))\n        end\n        if <(ExitingDoorNo.) > (length of [doorx v])> then\n            set [exitingdoorno. v] to (ItemNo.)\n        end\n        set [allowmovement v] to [0]\n        set [usingdoor v] to [1]\n        set [playertimer v] to [0]\n        if <(Type) = [aj]> then\n            replace item (UsingDoorNo.) of [doortype v] with [aj2]\n            if <(item (ExitingDoorNo.) of [doortype v]) = [aj]> then\n                replace item (ExitingDoorNo.) of [doortype v] with [aj2]\n            end\n            set [type v] to [aj2]\n            change [keys v] by (-1)\n            broadcast (UsedLockedDoor v)\n        else\n            broadcast (UsedDoor v)\n        end\n        set [playery v] to ((Y) - (4))\n        set [playerx v] to (X)\n    end\nend\n\ndefine Large12\nswitch costume to (large v)\nswitch costume to (join (#One) (#Two))\n\ndefine Cost (speed) (mod)\nswitch costume to (join (#Five) (([floor v] of (((GameTimer) * (speed)) mod (mod)) ) + (1)))\n\ndefine SpawningItem (o/u)\nif <(#Two) = [1]> then\n    if <(o/u) = [U]> then\n        Spawn ((#Fifteen) + (-0.8)) [0,0,-1.1,0,90,] ((#Fifteen) + (-0.8)) [0,0,0,0,90,]\n    else\n        Spawn ((#Fifteen) + (0.9)) [0,0,-0.1,0,90,] ((#Fifteen) + (1)) [0,3,0,0,90,]\n    end\n    set [#ten v] to []\n    AddToTen [!]\n    AddToTen ["]\n    AddToTen [£]\n    replace item (#Cus2) of [ent bon v] with (letter (1) of (item (#Cus2) of [ent bon v]))\n    if <not <(item (#Cus2) of [ent bon v]) = [!]>> then\n        replace item (#Cus2) of [ent x v v] with [0]\n        replace item (#Cus2) of [ent y v v] with [0]\n    end\nelse\n    if <(o/u) = [U]> then\n        Spawn ((#Fifteen) + (-0.4)) [0,0,-2,0,90,] ((#Fifteen) + (-0.88)) [0,0.4,0,0,90,]\n    else\n        Spawn ((#Fifteen) + (0.25)) [0,0,-1,0,90,] ((#Fifteen) + (1)) [0,3,0,0,90,]\n    end\n    replace item (#Cus2) of [blcoga v] with [i]\nend\nif <<(#Cus1) = [d]> or <<(#Cus1) = [n]> or <(#Cus1) = [ab]>>> then\n    if <(#Two) = [1]> then\n        replace item (#Cus2) of [ent ty v] with [z]\n    else\n        replace item (#Cus2) of [unique type v] with [z]\n        replace item (#Cus2) of [bltyga v] with [z]\n    end\nend\n\nwhen I receive [showturbowarp v]\ndelete all of [turbowarp link v]\nadd [For Widescreen, Shadows and Improved Performance, use this link only:] to [turbowarp link v]\nadd [https://turbowarp.org/753049043?hqpen&limitless&size=640x360] to [turbowarp link v]\nwait (0.1) seconds\nhide list [turbowarp link v]\nstop [all v]\n\ndefine AddToTen (add)\nif < (item (#Cus2) of [ent bon v]) contains (add)?> then\n    set [#ten v] to (join (#Ten) (add))\nend\n\n@Placement\n\ndefine FormGrid\ndelete all of [doortype v]\ndelete all of [doorx v]\ndelete all of [doory v]\ndelete all of [doorextra v]\ndelete all of [blco v]\ndelete all of [blty v]\ndelete all of [semi type v]\ndelete all of [track type v]\nrepeat ((WorldHeight) * (WorldWidth))\n    add [i] to [blco v]\n    add [i] to [blty v]\n    add [i] to [semi type v]\n    add [i] to [track type v]\nend\n\ndefine ScrollStopping (v)\nset [#eight v] to (round ((PlayerY) / (32)))\nset [#five v] to [0]\nrepeat until <(#Five) = [1]>\n    if <(v) = [U]> then\n        change [#eight v] by (1)\n    else\n        change [#eight v] by (-1)\n    end\n    BlockAt (round ((PlayerX) / (32))) (#Eight) [Game] []\n    if <not <(FoundBlockType) = [i]>> then\n        set [#six v] to [0]\n        set [#seven v] to [0]\n        ScanThisVertical\n        if <(#Seven) = [1]> then\n            if <(v) = [U]> then\n                set [upscrollstop v] to (#Eight)\n            else\n                set [downscrollstop v] to ((#Eight) - (2))\n            end\n            stop [this script v]\n        end\n    end\n    if <([abs v] of ((#Eight) - ((PlayerY) / (32))) ) > ((8) + ((NewScrollScan) * ((AreaHeight) - (8))))> then\n        stop [this script v]\n    end\nend\n\ndefine ActuallyFix (x) (y)\nBlockAt (x) (y) (Type) [1]\nif <not <(FoundBlockType) = [i]>> then\n    set [fixingblocktype v] to (FoundBlockMainType)\n    FindSidesOf (x) (y)\n    set [#cus1 v] to ((((x) - (1)) * (WorldHeight)) + (y))\n    if <(Type) = [Block]> then\n        replace item (#Cus1) of [blty v] with (FixingBlockCostume)\n    else\n        if <(Type) = [Semi]> then\n            replace item (#Cus1) of [semi type v] with (FixingBlockCostume)\n        else\n            if <(Type) = [Track]> then\n                replace item (#Cus1) of [track type v] with (FixingBlockCostume)\n            end\n        end\n    end\nend\n\ndefine FindSidesOf (x) (y)\nset [leftnotthesame v] to [0]\nset [fixingblocksides v] to []\nif <<<[type - entities v] contains (FixingBlockType)?> or <[type - uniques v] contains (FixingBlockType)?>> or <(FixingBlockType) = [ra]>> then\n    delete all of [type - thisconnectsto v]\n    if <<(FixingBlockType) = [aw]> or <<(FixingBlockType) = [awy]> or <(FixingBlockType) = [awz]>>> then\n        BlockAt (x) ((y) + (1)) [Block] []\n        if <not <<(FoundBlockType) = [i]> or <[type - entities v] contains (FoundBlockType)?>>> then\n            set [fixingblocksides v] to (join (FixingBlockSides) [U])\n        end\n        BlockAt (x) ((y) + (-1)) [Block] []\n        if <not <<(FoundBlockType) = [i]> or <[type - entities v] contains (FoundBlockType)?>>> then\n            set [fixingblocksides v] to (join (FixingBlockSides) [D])\n        end\n        if < (FixingBlockSides) contains [U]?> then\n            set [fixingblockcostume v] to [awz]\n            if < (FixingBlockSides) contains [D]?> then\n                set [fixingblockcostume v] to [aw]\n            end\n        else\n            if < (FixingBlockSides) contains [D]?> then\n                set [fixingblockcostume v] to [awy]\n            else\n                set [fixingblockcostume v] to [aw]\n            end\n        end\n    else\n        if <<(FixingBlockType) = [el]> or <(FixingBlockType) = [elz]>> then\n            BlockAt (x) ((y) + (-1)) [Block] []\n            if <not <<(FoundBlockType) = [i]> or <[type - entities v] contains (FoundBlockType)?>>> then\n                set [fixingblockcostume v] to [el]\n            else\n                set [fixingblockcostume v] to [elz]\n            end\n        else\n            if <<<(FixingBlockType) = [bha]> or <(FixingBlockType) = [bhb]>> or <<(FixingBlockType) = [caa]> or <(FixingBlockType) = [cab]>>> then\n                BlockAt (x) ((y) + (1)) [Block] []\n                if <<<(FoundBlockType) = [bha]> or <(FoundBlockType) = [bhb]>> or <<(FoundBlockType) = [caa]> or <(FoundBlockType) = [cab]>>> then\n                    set [fixingblocksides v] to (join (FixingBlockSides) [U])\n                end\n                if <(letter (1) of (FixingBlockType)) = [c]> then\n                    if < (FixingBlockSides) contains [U]?> then\n                        set [fixingblockcostume v] to [cab]\n                    else\n                        set [fixingblockcostume v] to [caa]\n                    end\n                else\n                    if < (FixingBlockSides) contains [U]?> then\n                        set [fixingblockcostume v] to [bhb]\n                    else\n                        set [fixingblockcostume v] to [bha]\n                    end\n                end\n            else\n                set [fixingblockcostume v] to (FixingBlockType)\n            end\n        end\n    end\nelse\n    SetConnectingTypes\n    if <<<(FixingBlockType) = [25]> or <(FixingBlockType) = [36]>> or <<(FixingBlockType) = [31]> or <(FixingBlockType) = [35]>>> then\n        set [fixingblockcostume v] to (join (FixingBlockType) [a])\n    else\n        if <<<(FixingBlockType) = [42]> or <(FixingBlockType) = [53]>> or <<(FixingBlockType) = [48]> or <(FixingBlockType) = [78]>>> then\n            set [fixingblockcostume v] to (join (FixingBlockType) [b])\n        else\n            if <<(FixingBlockType) = [27]> or <(FixingBlockType) = [21]>> then\n                if <((round (((x) * (1.4)) + (y))) mod (2)) = [1]> then\n                    set [fixingblockcostume v] to (join (FixingBlockType) [e])\n                else\n                    set [fixingblockcostume v] to (join (FixingBlockType) [g])\n                end\n            else\n                set [abovetype v] to []\n                set [fixingblocksides v] to []\n                set [fixingblockcorners v] to []\n                Side (x) ((y) + (1)) [U] []\n                Side (x) ((y) + (-1)) [D] []\n                Side ((x) + (1)) (y) [R] []\n                Side ((x) + (-1)) (y) [L] []\n                if <<(length of (FixingBlockSides)) > [1]> or <<(FixingBlockType) = [7]> or <(FixingBlockType) = [8]>>> then\n                    Side ((x) + (1)) ((y) + (1)) [] [1]\n                    Side ((x) + (-1)) ((y) + (1)) [] [4]\n                    if <<not <(length of (FixingBlockSides)) = [4]>> or <<<(FixingBlockType) = [19]> or <(FixingBlockType) = [22]>> or <(FixingBlockType) = [40]>>> then\n                        Side ((x) + (1)) ((y) + (-1)) [] [2]\n                        Side ((x) + (-1)) ((y) + (-1)) [] [3]\n                        Side ((x) + (-2)) (y) [] [L]\n                        Side ((x) + (2)) (y) [] [R]\n                    end\n                    Side (x) ((y) + (2)) [] [U]\n                end\n                set [x v] to (x)\n                set [y v] to (y)\n                CostumeBlock < (FixingBlockSides) contains [U]?> < (FixingBlockSides) contains [D]?> < (FixingBlockSides) contains [L]?> < (FixingBlockSides) contains [R]?> < (FixingBlockCorners) contains [1]?> < (FixingBlockCorners) contains [2]?> < (FixingBlockCorners) contains [3]?> < (FixingBlockCorners) contains [4]?>\n                if <(FixingBlockCostume) = [69b]> then\n                    if <((round ((x) + ((y) * (1.4)))) mod (4)) = [1]> then\n                        set [fixingblockcostume v] to [69ba]\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine SetConnectingTypes\ndelete all of [type - thisconnectsto v]\nadd (FixingBlockType) to [type - thisconnectsto v]\nConn [1] [2] [3]\nConn [10] [11] [12]\nConn [13] [14] [15]\nConn [16] [17] [18]\nConn [37] [38] [39]\nConn [28] [29] [30]\nConn [55] [56] [57]\nConn [34] [65] [66]\nConn [70] [71] [72]\nConn [88] [89] [90]\nConn [7] [8] []\nif <(FixingBlockType) = [5]> then\n    add [4] to [type - thisconnectsto v]\nend\nif <(FixingBlockType) = [6]> then\n    add [4] to [type - thisconnectsto v]\n    add [5] to [type - thisconnectsto v]\nend\n\ndefine ScanThisHorizontal\nrepeat ((AreaHeight) - (1))\n    change [#seven v] by (1)\n    set [#one v] to ((((AreaStartHeight) + (AreaHeight)) - (1)) - (#Seven))\n    BlockAt (#Eight) (#One) [Game] []\n    if <(FoundBlockType) = [i]> then\n        set [#seven v] to [0]\n        stop [this script v]\n    end\nend\nset [#seven v] to [1]\n\ndefine FixSurroundingsOf (x) (y) (type)\nset [type v] to (type)\nset [#nine v] to [1]\nrepeat (3)\n    set [#six v] to [-1]\n    repeat (3)\n        if <not <<(#Six) = [0]> and <(#Nine) = [0]>>> then\n            ActuallyFix ((x) + (#Six)) ((y) + (#Nine))\n        end\n        change [#six v] by (1)\n    end\n    change [#nine v] by (-1)\nend\nActuallyFix ((x) + (2)) (y)\nActuallyFix ((x) + (-2)) (y)\nif <not <(y) = (AreaStartHeight)>> then\n    ActuallyFix (x) ((y) + (-2))\nend\n\ndefine MakeSureItHasIt\nset [#cus1 v] to (item (#Five) of [blco v])\nset [#cus2 v] to (item (#Five) of [blty v])\nset [#eight v] to <<<(#Cus1) = [i]> or <(#Cus1) = [!]>> or <<(#Cus1) = [!"]> or <(#Cus1) = [!£]>>>\nif <<(#Cus2) = [n]> or <<(#Cus2) = [nx]> or <(#Cus2) = [ab]>>> then\n    if <<(#Eight) = [1]> or <<(length of (#Cus1)) < [2]> and <[type - uniques entities v] contains (#Cus2)?>>> then\n        Change (#Cus1) Add [c]\n        replace item (#Five) of [blco v] with (#Ten)\n    end\nend\nif <(#Cus2) = [bh]> then\n    if <(#Eight) = [1]> then\n        Change (#Cus1) Add [bg]\n        replace item (#Five) of [blco v] with (#Ten)\n    end\nend\nif <(#Cus2) = [ca]> then\n    if <(#Eight) = [1]> then\n        Change (#Cus1) Add [cb]\n        replace item (#Five) of [blco v] with (#Ten)\n    end\nend\n\ndefine DragPlacement\ndelete all of [placex v]\ndelete all of [placey v]\nset [#four v] to [0]\nset [#five v] to [0]\nrepeat (([abs v] of ((MouseStartX) - (MouseX)) ) + (1))\n    repeat (([abs v] of ((MouseStartY) - (MouseY)) ) + (1))\n        if <(MouseX) > (MouseStartX)> then\n            add ((MouseStartX) + (#Four)) to [placex v]\n            add ((MouseStartY) + (#Five)) to [placey v]\n        else\n            insert ((MouseStartX) + (#Four)) at (1) of [placex v] \n            insert ((MouseStartY) + (#Five)) at (1) of [placey v] \n        end\n        if <(MouseY) > (MouseStartY)> then\n            change [#five v] by (1)\n        else\n            change [#five v] by (-1)\n        end\n    end\n    if <(MouseX) > (MouseStartX)> then\n        change [#four v] by (1)\n    else\n        change [#four v] by (-1)\n    end\n    set [#five v] to [0]\nend\nset [startingplacementsize v] to (length of [placex v])\n\ndefine CostumeBlock <u> <d> <l> <r> <1> <2> <3> <4>\nif <<<<(FixingBlockType) = [20]> or <(FixingBlockType) = [85]>> or <<(FixingBlockType) = [49]> or <(FixingBlockType) = [75]>>> or <<<(FixingBlockType) = [41]> or <(FixingBlockType) = [47]>> or <<(FixingBlockType) = [50]> or <(FixingBlockType) = [64]>>>> then\n    set [fixingblockcostume v] to [b]\n    if <(FixingBlockType) = [47]> then\n        set [fixingblockcostume v] to [l]\n    end\n    if <l> then\n        set [fixingblockcostume v] to [f]\n        if <r> then\n            set [fixingblockcostume v] to [g]\n        end\n    else\n        if <r> then\n            set [fixingblockcostume v] to [e]\n        end\n    end\nelse\n    if <(FixingBlockType) = [23]> then\n        if <u> then\n            set [fixingblockcostume v] to [e]\n        else\n            set [fixingblockcostume v] to [g]\n        end\n    else\n        if <(FixingBlockType) = [77]> then\n            if <u> then\n                set [fixingblockcostume v] to [b]\n            else\n                set [fixingblockcostume v] to [e]\n            end\n        else\n            if <<(FixingBlockType) = [24]> or <(FixingBlockType) = [26]>> then\n                set [fixingblockcostume v] to [g]\n                if <u> then\n                    set [fixingblockcostume v] to [b]\n                    if <d> then\n                        set [fixingblockcostume v] to [e]\n                    end\n                else\n                    if <d> then\n                        set [fixingblockcostume v] to [f]\n                    end\n                end\n            else\n                if <(FixingBlockType) = [44]> then\n                    if <d> then\n                        set [fixingblockcostume v] to [e]\n                    else\n                        set [fixingblockcostume v] to [b]\n                    end\n                else\n                    if <(FixingBlockType) = [40]> then\n                        if <<(length of (FixingBlockSides)) = [4]> and <<<1> and <2>> and <<3> and <4>>>> then\n                            set [fixingblockcostume v] to [d]\n                            if <((round (((X) * (11)) + ((Y) * (8.7)))) mod (14)) = [6]> then\n                                set [fixingblockcostume v] to [c]\n                            end\n                            if <((round (((X) * (15)) + ((Y) * (7.7)))) mod (11)) = [8]> then\n                                set [fixingblockcostume v] to [b]\n                            end\n                        else\n                            set [fixingblockcostume v] to [a]\n                            if <d> then\n                                set [fixingblockcostume v] to [e]\n                            end\n                            if <u> then\n                                set [fixingblockcostume v] to [g]\n                                if <d> then\n                                    set [fixingblockcostume v] to [f]\n                                end\n                            end\n                        end\n                    else\n                        if <(FixingBlockType) = [51]> then\n                            set [fixingblockcostume v] to [a]\n                            if <d> then\n                                set [fixingblockcostume v] to [k]\n                            end\n                            if <u> then\n                                set [fixingblockcostume v] to [m]\n                                if <d> then\n                                    set [fixingblockcostume v] to [l]\n                                end\n                            end\n                        else\n                            if <(FixingBlockType) = [61]> then\n                                set [fixingblockcostume v] to [a]\n                                set [#one v] to <<l> and <not <4>>>\n                                set [#two v] to <<r> and <not <1>>>\n                                if <(#One) = [1]> then\n                                    set [fixingblockcostume v] to [d]\n                                end\n                                if <(#Two) = [1]> then\n                                    set [fixingblockcostume v] to [j]\n                                    if <(#One) = [1]> then\n                                        set [fixingblockcostume v] to [c]\n                                    end\n                                end\n                                if <d> then\n                                    set [fixingblockcostume v] to [k]\n                                    if <(#One) = [1]> then\n                                        set [fixingblockcostume v] to [n]\n                                    end\n                                    if <(#Two) = [1]> then\n                                        set [fixingblockcostume v] to [p]\n                                        if <(#One) = [1]> then\n                                            set [fixingblockcostume v] to [o]\n                                        end\n                                    end\n                                end\n                                if <u> then\n                                    set [fixingblockcostume v] to [m]\n                                    if <d> then\n                                        set [fixingblockcostume v] to [l]\n                                    end\n                                end\n                            else\n                                if <<(FixingBlockType) = [58]> or <<(FixingBlockType) = [59]> or <(FixingBlockType) = [60]>>> then\n                                    if <u> then\n                                        set [fixingblockcostume v] to [b]\n                                    else\n                                        set [fixingblockcostume v] to [a]\n                                        if <l> then\n                                            set [fixingblockcostume v] to [d]\n                                            if <r> then\n                                                set [fixingblockcostume v] to [c]\n                                            end\n                                        else\n                                            if <r> then\n                                                set [fixingblockcostume v] to [j]\n                                            end\n                                        end\n                                    end\n                                else\n                                    if <<(FixingBlockType) = [7]> or <(FixingBlockType) = [8]>> then\n                                        set [fixingblockcostume v] to [l]\n                                        if <(length of (FixingBlockSides)) = [2]> then\n                                            if <<d> and <l>> then\n                                                set [fixingblockcostume v] to [g]\n                                            end\n                                            if <<u> and <l>> then\n                                                set [fixingblockcostume v] to [h]\n                                            end\n                                            if <<u> and <r>> then\n                                                set [fixingblockcostume v] to [i]\n                                            end\n                                            if <<d> and <r>> then\n                                                set [fixingblockcostume v] to [k]\n                                            end\n                                            if <<u> and <d>> then\n                                                set [fixingblockcostume v] to [b]\n                                            end\n                                            if <<l> and <r>> then\n                                                set [fixingblockcostume v] to [e]\n                                            end\n                                        end\n                                        if <(length of (FixingBlockSides)) = [1]> then\n                                            if <u> then\n                                                set [fixingblockcostume v] to [c]\n                                                if <3> then\n                                                    set [fixingblockcostume v] to [ad]\n                                                end\n                                                if <2> then\n                                                    set [fixingblockcostume v] to [ac]\n                                                    if <3> then\n                                                        set [fixingblockcostume v] to [af]\n                                                    end\n                                                end\n                                            end\n                                            if <d> then\n                                                set [fixingblockcostume v] to [a]\n                                                if <4> then\n                                                    set [fixingblockcostume v] to [z]\n                                                end\n                                                if <1> then\n                                                    set [fixingblockcostume v] to [y]\n                                                    if <4> then\n                                                        set [fixingblockcostume v] to [ah]\n                                                    end\n                                                end\n                                            end\n                                            if <r> then\n                                                set [fixingblockcostume v] to [d]\n                                                if <4> then\n                                                    set [fixingblockcostume v] to [aa]\n                                                end\n                                                if <3> then\n                                                    set [fixingblockcostume v] to [ab]\n                                                    if <4> then\n                                                        set [fixingblockcostume v] to [ag]\n                                                    end\n                                                end\n                                            end\n                                            if <l> then\n                                                set [fixingblockcostume v] to [f]\n                                                if <1> then\n                                                    set [fixingblockcostume v] to [w]\n                                                end\n                                                if <2> then\n                                                    set [fixingblockcostume v] to [x]\n                                                    if <1> then\n                                                        set [fixingblockcostume v] to [ae]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(length of (FixingBlockSides)) = [0]> then\n                                            if <3> then\n                                                set [fixingblockcostume v] to [m]\n                                            end\n                                            if <4> then\n                                                set [fixingblockcostume v] to [n]\n                                                if <3> then\n                                                    set [fixingblockcostume v] to [t]\n                                                end\n                                            end\n                                            if <1> then\n                                                set [fixingblockcostume v] to [o]\n                                                if <4> then\n                                                    set [fixingblockcostume v] to [q]\n                                                end\n                                                if <3> then\n                                                    set [fixingblockcostume v] to [v]\n                                                end\n                                            end\n                                            if <2> then\n                                                set [fixingblockcostume v] to [p]\n                                                if <1> then\n                                                    set [fixingblockcostume v] to [r]\n                                                end\n                                                if <3> then\n                                                    set [fixingblockcostume v] to [s]\n                                                end\n                                                if <4> then\n                                                    set [fixingblockcostume v] to [u]\n                                                end\n                                            end\n                                        end\n                                    else\n                                        set [#sixteen v] to <<(FixingBlockType) = [19]> or <(FixingBlockType) = [22]>>\n                                        if <not <(length of (FixingBlockSides)) = [2]>> then\n                                            if <<not <(AboveType) = []>> and < (FixingBlockCorners) contains [D]?>> then\n                                                set [fixingblocktype v] to (AboveType)\n                                            end\n                                        end\n                                        set [fixingblockcostume v] to [a]\n                                        if <(length of (FixingBlockSides)) = [4]> then\n                                            set [fixingblockcostume v] to [b]\n                                            if <(LeftNotTheSame) = [1]> then\n                                                if <<(FixingBlockType) = [5]> or <(FixingBlockType) = [6]>> then\n                                                    if < (FixingBlockCorners) contains [!]?> then\n                                                        set [fixingblockcostume v] to [al]\n                                                    else\n                                                        set [fixingblockcostume v] to [ak]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(length of (FixingBlockSides)) = [3]> then\n                                            if <not <u>> then\n                                                set [fixingblockcostume v] to [c]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <(FixingBlockType) = [22]> then\n                                                        if < (FixingBlockCorners) contains [\)]?> then\n                                                            set [fixingblockcostume v] to [ay]\n                                                        end\n                                                        if < (FixingBlockCorners) contains [\(]?> then\n                                                            set [fixingblockcostume v] to [az]\n                                                            if < (FixingBlockCorners) contains [\)]?> then\n                                                                set [fixingblockcostume v] to [ba]\n                                                            end\n                                                        end\n                                                    end\n                                                    if <not <<3> or <2>>> then\n                                                        set [fixingblockcostume v] to [aq]\n                                                    end\n                                                end\n                                            end\n                                            if <not <r>> then\n                                                set [fixingblockcostume v] to [e]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <(FixingBlockType) = [19]> then\n                                                        if << (FixingBlockCorners) contains [\)]?> and <2>> then\n                                                            set [fixingblockcostume v] to [aw]\n                                                        end\n                                                        if < (FixingBlockCorners) contains [\(]?> then\n                                                            set [fixingblockcostume v] to [av]\n                                                            if < (FixingBlockCorners) contains [\)]?> then\n                                                                set [fixingblockcostume v] to [ax]\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                            if <not <d>> then\n                                                set [fixingblockcostume v] to [g]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <(FixingBlockType) = [22]> then\n                                                        if < (FixingBlockCorners) contains [\)]?> then\n                                                            set [fixingblockcostume v] to [bb]\n                                                        end\n                                                        if < (FixingBlockCorners) contains [\(]?> then\n                                                            set [fixingblockcostume v] to [bc]\n                                                            if < (FixingBlockCorners) contains [\)]?> then\n                                                                set [fixingblockcostume v] to [bd]\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                                if <<(FixingBlockType) = [5]> or <(FixingBlockType) = [6]>> then\n                                                    if <(LeftNotTheSame) = [1]> then\n                                                        set [fixingblockcostume v] to [am]\n                                                    end\n                                                end\n                                            end\n                                            if <not <l>> then\n                                                set [fixingblockcostume v] to [i]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <(FixingBlockType) = [19]> then\n                                                        if << (FixingBlockCorners) contains [\)]?> and <3>> then\n                                                            set [fixingblockcostume v] to [at]\n                                                        end\n                                                        if < (FixingBlockCorners) contains [\(]?> then\n                                                            set [fixingblockcostume v] to [as]\n                                                            if < (FixingBlockCorners) contains [\)]?> then\n                                                                set [fixingblockcostume v] to [au]\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(length of (FixingBlockSides)) = [2]> then\n                                            if <<d> and <l>> then\n                                                set [fixingblockcostume v] to [d]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <not <3>> then\n                                                        set [fixingblockcostume v] to [ao]\n                                                    end\n                                                end\n                                            end\n                                            if <<u> and <l>> then\n                                                set [fixingblockcostume v] to [f]\n                                            end\n                                            if <<u> and <r>> then\n                                                set [fixingblockcostume v] to [h]\n                                            end\n                                            if <<d> and <r>> then\n                                                set [fixingblockcostume v] to [j]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <not <2>> then\n                                                        set [fixingblockcostume v] to [ap]\n                                                    end\n                                                end\n                                            end\n                                            if <<u> and <d>> then\n                                                set [fixingblockcostume v] to [l]\n                                            end\n                                            if <<l> and <r>> then\n                                                set [fixingblockcostume v] to [o]\n                                            end\n                                        end\n                                        if <(length of (FixingBlockSides)) = [1]> then\n                                            if <u> then\n                                                set [fixingblockcostume v] to [m]\n                                            end\n                                            if <d> then\n                                                set [fixingblockcostume v] to [k]\n                                            end\n                                            if <r> then\n                                                set [fixingblockcostume v] to [p]\n                                            end\n                                            if <l> then\n                                                set [fixingblockcostume v] to [n]\n                                            end\n                                        end\n                                        if <not <[type - semisolids v] contains (FixingBlockType)?>> then\n                                            if <((FixingBlockType) mod (3)) = [0]> then\n                                                if <(FixingBlockCostume) = [d]> then\n                                                    if <<< (FixingBlockCorners) contains [L]?> and <3>> and <not <4>>> then\n                                                        set [fixingblockcostume v] to [q]\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [j]> then\n                                                    if <<< (FixingBlockCorners) contains [R]?> and <2>> and <not <1>>> then\n                                                        set [fixingblockcostume v] to [s]\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [c]> then\n                                                    if <<not << (FixingBlockCorners) contains [R]?> or <1>>> and <2>> then\n                                                        set [fixingblockcostume v] to [r]\n                                                    end\n                                                    if <<not << (FixingBlockCorners) contains [L]?> or <4>>> and <3>> then\n                                                        if <(FixingBlockCostume) = [r]> then\n                                                            set [fixingblockcostume v] to [u]\n                                                        else\n                                                            set [fixingblockcostume v] to [t]\n                                                        end\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [f]> then\n                                                    if <<< (FixingBlockCorners) contains [L]?> and <4>> and <not <3>>> then\n                                                        set [fixingblockcostume v] to [v]\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [h]> then\n                                                    if <<< (FixingBlockCorners) contains [R]?> and <1>> and <not <2>>> then\n                                                        set [fixingblockcostume v] to [x]\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [g]> then\n                                                    if <<not << (FixingBlockCorners) contains [R]?> or <2>>> and <1>> then\n                                                        set [fixingblockcostume v] to [w]\n                                                    end\n                                                    if <<not << (FixingBlockCorners) contains [L]?> or <3>>> and <4>> then\n                                                        if <(FixingBlockCostume) = [w]> then\n                                                            set [fixingblockcostume v] to [z]\n                                                        else\n                                                            set [fixingblockcostume v] to [y]\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [q]> then\n                                            if <2> then\n                                                set [fixingblockcostume v] to [am]\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [s]> then\n                                            if <3> then\n                                                set [fixingblockcostume v] to [an]\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [w]> then\n                                            if <not <4>> then\n                                                set [fixingblockcostume v] to [ao]\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [y]> then\n                                            if <not <1>> then\n                                                set [fixingblockcostume v] to [ap]\n                                            end\n                                        end\n                                        if <not <[type - semisolids v] contains (FixingBlockType)?>> then\n                                            if <((FixingBlockType) mod (3)) = [2]> then\n                                                if <<u> and << (FixingBlockCorners) contains [U]?> and <<(length of (FixingBlockSides)) > [2]> and <d>>>> then\n                                                    change [fixingblocktype v] by ((((FixingBlockType) + (-1)) mod (3)) * (-1))\n                                                end\n                                                if <(FixingBlockCostume) = [d]> then\n                                                    if <2> then\n                                                        set [fixingblockcostume v] to [aq]\n                                                    end\n                                                end\n                                                if <(FixingBlockCostume) = [j]> then\n                                                    if <3> then\n                                                        set [fixingblockcostume v] to [ar]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [b]> then\n                                            if <not <(AboveType) = []>> then\n                                                if <[type - blocks v] contains (FixingBlockType)?> then\n                                                    set [fixingblocktype v] to (AboveType)\n                                                end\n                                            end\n                                            if <not <4>> then\n                                                set [fixingblockcostume v] to [aa]\n                                            end\n                                            if <not <1>> then\n                                                set [fixingblockcostume v] to [ab]\n                                                if <not <4>> then\n                                                    set [fixingblockcostume v] to [ac]\n                                                end\n                                            end\n                                            if <(#Sixteen) = [1]> then\n                                                if <not <3>> then\n                                                    set [fixingblockcostume v] to [ak]\n                                                end\n                                                if <not <2>> then\n                                                    set [fixingblockcostume v] to [al]\n                                                    if <not <3>> then\n                                                        set [fixingblockcostume v] to [am]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [e]> then\n                                            if <not <4>> then\n                                                set [fixingblockcostume v] to [ad]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <not <3>> then\n                                                        set [fixingblockcostume v] to [an]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [f]> then\n                                            if <not <4>> then\n                                                set [fixingblockcostume v] to [ae]\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [g]> then\n                                            if <not <4>> then\n                                                set [fixingblockcostume v] to [af]\n                                            end\n                                            if <not <1>> then\n                                                set [fixingblockcostume v] to [ag]\n                                                if <not <4>> then\n                                                    set [fixingblockcostume v] to [ah]\n                                                end\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [h]> then\n                                            if <not <1>> then\n                                                set [fixingblockcostume v] to [ai]\n                                            end\n                                        end\n                                        if <(FixingBlockCostume) = [i]> then\n                                            if <not <1>> then\n                                                set [fixingblockcostume v] to [aj]\n                                                if <(#Sixteen) = [1]> then\n                                                    if <not <2>> then\n                                                        set [fixingblockcostume v] to [ar]\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                    if <(FixingBlockType) = [64]> then\n                                        set [fixingblocktype v] to [34]\n                                    end\n                                    set [fixingblockcostume v] to (join (FixingBlockType) (FixingBlockCostume))\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nif <(length of (FixingBlockCostume)) = [1]> then\n    set [fixingblockcostume v] to (join (FixingBlockType) (FixingBlockCostume))\nend\n\ndefine MakePlacements\nif <[type - semisolids v] contains (PlacingBlockType)?> then\n    set [placingblockmaintype v] to [Semi]\nelse\n    if <[type - tracks v] contains (PlacingBlockType)?> then\n        set [placingblockmaintype v] to [Track]\n    else\n        if <[type - transport v] contains (PlacingBlockType)?> then\n            set [placingblockmaintype v] to [Door]\n        else\n            set [placingblockmaintype v] to [Block]\n        end\n    end\nend\nset [#thirteen v] to [0]\nrepeat (length of [placex v])\n    set [mousestartx v] to [z]\n    change [#thirteen v] by (1)\n    MakePlacementAt (item (1) of [placex v]) (item (1) of [placey v])\n    if <(PlaceTool) = [2]> then\n        if <<(item (1) of [placex v]) = (GoalX)> and <(item (1) of [placey v]) = (GoalY)>> then\n            set [goalarea v] to [0]\n            set [goaly v] to [-8]\n        end\n        if <<(item (1) of [placex v]) = (Goal2X)> and <(item (1) of [placey v]) = (Goal2Y)>> then\n            set [goal2area v] to [0]\n            set [goal2y v] to [-8]\n        end\n    end\n    delete (1) of [placex v]\n    delete (1) of [placey v]\n    if <(length of [placex v]) = [0]> then\n        set [mousestartx v] to [x]\n    end\n    if <(#Thirteen) > ((((FPS) / (10)) + ((((AllowLowFPS) * (0.5)) + <(RenderWidth) > [300]>) * (160))) + (<(length of [placex v]) < [10]> * (10)))> then\n        stop [this script v]\n    end\nend\n\ndefine ScanThisVertical\nif <<(#Eight) > (((AreaHeight) + (AreaStartHeight)) - (1))> or <(#Eight) < (AreaStartHeight)>> then\n    stop [this script v]\nend\nrepeat ((2) + ((((RightScrollStop) - (LeftScrollStop)) * (NewScrollScan)) * (2)))\n    change [#seven v] by (1)\n    set [#one v] to (((round ((PlayerX) / (32))) - ((1) + (((RightScrollStop) - (LeftScrollStop)) * (NewScrollScan)))) + (#Seven))\n    if <<(#One) < [1]> or <<<(#One) > (RightScrollStop)> and <not <(RightScrollStop) = [x]>>> or <<(#One) < (LeftScrollStop)> and <not <(LeftScrollStop) = [x]>>>>> then\n        set [foundblocktype v] to [1a]\n    else\n        BlockAt (#One) (#Eight) [Game] []\n    end\n    if <(FoundBlockType) = [i]> then\n        set [#seven v] to [0]\n        stop [this script v]\n    end\nend\nset [#seven v] to [1]\n\ndefine ShowPlacements\nset [#eight v] to ((item # of (([floor v] of ((MapX) / (32)) ) - ([floor v] of ((RenderWidth) / (32)) )) in [placex v]) - (1))\nif <(#Eight) < [0]> then\n    set [#eight v] to [0]\nend\nrepeat ((length of [placex v]) - (#Eight))\n    change [#eight v] by (1)\n    set [x v] to (((item (#Eight) of [placex v]) * (32)) - (MapX))\n    set [y v] to ((((item (#Eight) of [placey v]) * (32)) - (MapY)) + (4))\n    if <(X) > (RenderWidth)> then\n        stop [this script v]\n    end\n    if <<([abs v] of (X) ) < (RenderWidth)> and <([abs v] of (Y) ) < [196]>> then\n        set [ghost v] effect to (50)\n        switch costume to (large v)\n        go to x: (X) y: (Y)\n        if <(PlaceTool) = [1]> then\n            switch costume to (place v)\n        else\n            switch costume to (erase v)\n        end\n        stamp\n        set [ghost v] effect to (80)\n        switch costume to (large v)\n        switch costume to (grid v)\n        stamp\n    end\nend\n\ndefine MakePlacementAt (x) (y)\nif <<((x) * (y)) > [0]> and <<(x) < (WorldWidth)> and <<(y) < ((AreaHeight) + (AreaStartHeight))> and <(y) > ((AreaStartHeight) - (1))>>>> then\n    set [#cus2 v] to (x)\n    set [#cus3 v] to (y)\n    if <(PlaceTool) = [1]> then\n        set [fixingblocktype v] to (PlacingBlockType)\n        BlockAt [] [] (PlacingBlockMainType) [1]\n        if <(PlacingBlockMainType) = [Door]> then\n            if <not <(#One) > (length of [doorx v])>> then\n                stop [this script v]\n            end\n        else\n            set [#five v] to ((((x) - (1)) * (WorldHeight)) + (y))\n            if <<(FoundBlockMainType) = (PlacingBlockType)> and <(item (#Five) of [blco v]) = [i]>> then\n                change [#thirteen v] by (-0.8)\n                stop [this script v]\n            end\n            if <<<<[type - containers v] contains (FoundBlockMainType)?> and <[type - storable v] contains (PlacingBlockType)?>> or <<<(FoundBlockMainType) = [bh]> and <<(PlacingBlockType) = [bg]> or <(PlacingBlockType) = [cf]>>> or <<(FoundBlockMainType) = [ca]> and <<(PlacingBlockType) = [cb]> or <(PlacingBlockType) = [cf]>>>>> and <not <<<(FoundBlockMainType) = [bh]> or <(FoundBlockMainType) = [ca]>> and <(PlacingBlockType) = [ct]>>>> then\n                Change (item (#Five) of [blco v]) Add []\n                set [#two v] to []\n                set [#one v] to [0]\n                repeat (length of (item (#Five) of [blco v]))\n                    change [#one v] by (1)\n                    if <<not < (#Ten) contains (letter (#One) of (item (#Five) of [blco v]))?>> or <<(letter (#One) of (item (#Five) of [blco v])) = [i]> and <(length of (#Two)) > [0]>>> then\n                        set [#two v] to (join (#Two) (letter (#One) of (item (#Five) of [blco v])))\n                    end\n                end\n                if <(#Two) = (PlacingBlockType)> then\n                    Change (item (#Five) of [blco v]) Add []\n                else\n                    Change (item (#Five) of [blco v]) Add (PlacingBlockType)\n                end\n                replace item (#Five) of [blco v] with (#Ten)\n                MakeSureItHasIt\n                stop [this script v]\n            else\n                if <<[type - entities v] contains (FoundBlockMainType)?> and <<(PlacingBlockType) = [af]> or <(PlacingBlockType) = [dg]>>> then\n                    if << (item (#Five) of [blco v]) contains [af]?> or < (item (#Five) of [blco v]) contains [dg]?>> then\n                        Change (item (#Five) of [blco v]) Add []\n                        replace item (#Five) of [blco v] with (#Ten)\n                        set [whawha v] to [0]\n                    else\n                        Change (item (#Five) of [blco v]) Add []\n                        if <(#Ten) = [i]> then\n                            replace item (#Five) of [blco v] with (PlacingBlockType)\n                        else\n                            replace item (#Five) of [blco v] with (join (#Ten) (PlacingBlockType))\n                        end\n                        if <(PlacingBlockType) = [dg]> then\n                            set [whawha v] to [1]\n                        end\n                    end\n                    stop [this script v]\n                else\n                    set [type v] to (PlacingBlockMainType)\n                    FindSidesOf (x) (y)\n                end\n            end\n        end\n    else\n        BlockAt [] [] [Track] []\n        if <(FoundBlockType) = [i]> then\n            BlockAt [] [] [Block] []\n            if <(FoundBlockType) = [i]> then\n                BlockAt [] [] [Door] []\n                if <(FoundBlockType) = [i]> then\n                    BlockAt [] [] [Semi] []\n                    if <(FoundBlockType) = [i]> then\n                else\n                    set [placingblockmaintype v] to [Door]\n                end\n            else\n                set [placingblockmaintype v] to [Block]\n            end\n        else\n            set [placingblockmaintype v] to [Track]\n        end\n        if <(PlacingBlockMainType) = [Track]> then\n            BlockAt [] [] [Block] [1]\n            if <not <(FoundBlockType) = [i]>> then\n                if <not <[type - blocks v] contains (FoundBlockMainType)?>> then\n                    if < (item ((((x) - (1)) * (WorldHeight)) + (y)) of [blco v]) contains [!]?> then\n                        set [placingblockmaintype v] to [Block]\n                    end\n                end\n            end\n        end\n        set [fixingblockcostume v] to [i]\n    end\n    set [#five v] to ((((x) - (1)) * (WorldHeight)) + (y))\n    if <(PlaceTool) = [2]> then\n        if <not <(PlacingBlockMainType) = [Track]>> then\n            replace item (#Five) of [blco v] with [i]\n        end\n    end\n    if <(PlacingBlockMainType) = [Block]> then\n        replace item (#Five) of [blty v] with (FixingBlockCostume)\n        replace item (#Five) of [blco v] with [i]\n    else\n        if <(PlacingBlockMainType) = [Semi]> then\n            replace item (#Five) of [semi type v] with (FixingBlockCostume)\n        else\n            if <(PlacingBlockMainType) = [Track]> then\n                replace item (#Five) of [track type v] with (FixingBlockCostume)\n            else\n                if <(PlacingBlockMainType) = [Door]> then\n                    if <(PlaceTool) = [2]> then\n                        set [#cus1 v] to (#One)\n                        Door\n                        if <((#One) mod (2)) = [1]> then\n                            Door\n                        else\n                            set [#cus1 v] to ((#One) - (1))\n                            Door\n                        end\n                    else\n                        add (x) to [doorx v]\n                        add (y) to [doory v]\n                        add (PlacingBlockType) to [doortype v]\n                        if <(PlacementRotation) = ["]> then\n                            add [-90] to [doorextra v]\n                        else\n                            if <(PlacementRotation) = [$]> then\n                                add [0] to [doorextra v]\n                            else\n                                if <(PlacementRotation) = [£]> then\n                                    add [90] to [doorextra v]\n                                else\n                                    add [180] to [doorextra v]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    if <<(PlaceTool) = [1]> and <(PlacingBlockMainType) = [Block]>> then\n        if <(length of [type - thisconnectsto v]) = [0]> then\n            if <[type - putontracks v] contains (FixingBlockCostume)?> then\n                BlockAt [] [] [Track] []\n                if <not <(FoundBlockType) = [i]>> then\n                    replace item (#Five) of [blco v] with [!]\n                end\n            end\n            if < (item (#Five) of [blco v]) contains [!]?> then\n                BlockAt [] [] [Track] [1]\n                if <<<(FoundBlockSubtype) = [d]> or <(FoundBlockSubtype) = [b]>> or <<(FoundBlockSubtype) = [e]> or <(FoundBlockSubtype) = [f]>>> then\n                    Change (item (#Five) of [blco v]) Add (PlacementRotation)\n                    replace item (#Five) of [blco v] with (#Ten)\n                end\n            else\n                if <[type - rotatable v] contains (FixingBlockCostume)?> then\n                    Change (item (#Five) of [blco v]) Add (PlacementRotation)\n                    replace item (#Five) of [blco v] with (#Ten)\n                end\n            end\n        end\n    end\n    if <(item (#Five) of [blty v]) = [i]> then\n        replace item (#Five) of [blco v] with [i]\n    end\n    MakeSureItHasIt\n    FixSurroundingsOf (x) (y) (PlacingBlockMainType)\nend\n\ndefine ScrollStop (h)\nset [#eight v] to (round ((PlayerX) / (32)))\nset [#five v] to [0]\nrepeat until <(#Five) = [1]>\n    if <(h) = [R]> then\n        change [#eight v] by (1)\n    else\n        change [#eight v] by (-1)\n    end\n    BlockAt (#Eight) (((AreaStartHeight) + (AreaHeight)) - (1)) [Game] []\n    if <not <(FoundBlockType) = [i]>> then\n        set [#six v] to [0]\n        set [#seven v] to [0]\n        ScanThisHorizontal\n        if <(#Seven) = [1]> then\n            if <(h) = [R]> then\n                set [rightscrollstop v] to (#Eight)\n            else\n                set [leftscrollstop v] to (#Eight)\n            end\n            stop [this script v]\n        end\n    end\n    if <([abs v] of ((#Eight) - ((PlayerX) / (32))) ) > ((13) + ((NewScrollScan) * (437)))> then\n        stop [this script v]\n    end\nend\n\ndefine ExpandGrid\nif <(#Cus1) = [Up]> then\n    repeat until <not <(MouseY) > ((WorldHeight) - (2))>>\n        if <((length of [blty v]) + (WorldWidth)) > [200000]> then\n            if <(MouseY) > (WorldHeight)> then\n                set [displaytext v] to [Level size limit reached]\n                set [displaytexttimer v] to [8]\n            end\n            stop [this script v]\n        else\n            change [worldheight v] by (1)\n            set [#one v] to (WorldHeight)\n            repeat (WorldWidth)\n                insert [i] at (#One) of [blco v] \n                insert [i] at (#One) of [blty v] \n                insert [i] at (#One) of [semi type v] \n                insert [i] at (#One) of [track type v] \n                change [#one v] by (WorldHeight)\n            end\n        end\n    end\nend\nif <(#Cus1) = [Right]> then\n    repeat until <not <(MouseX) > ((WorldWidth) - (2))>>\n        if <((length of [blty v]) + (WorldHeight)) > [200000]> then\n            if <(MouseX) > ((WorldWidth) - (1))> then\n                set [displaytext v] to [Level size limit reached]\n                set [displaytexttimer v] to [8]\n            end\n            stop [this script v]\n        else\n            change [worldwidth v] by (1)\n            repeat (WorldHeight)\n                add [i] to [blco v]\n                add [i] to [blty v]\n                add [i] to [semi type v]\n                add [i] to [track type v]\n            end\n        end\n    end\nend\nif <(length of [blty v]) > [100000]> then\n    set [displaytext v] to (join [Level Size Limit: ] (join ([floor v] of (((length of [blty v]) / (200000)) * (100)) ) [%]))\n    set [displaytexttimer v] to [4]\nend\n\ndefine BlockAt (x) (y) (type) (subtype?)\nif <(x) = []> then\nset [foundblocktype v] to []\nset [#one v] to ((((#Cus2) - (1)) * (WorldHeight)) + (#Cus3))\nif <(type) = [Block]> then\n    set [foundblocktype v] to (item (#One) of [blty v])\nend\nif <(type) = [Semi]> then\n    set [foundblocktype v] to (item (#One) of [semi type v])\nend\nif <(type) = [Track]> then\n    set [foundblocktype v] to (item (#One) of [track type v])\nend\nif <(type) = [Door]> then\n    set [#one v] to [1]\n    change [#thirteen v] by (0.5)\n    repeat (length of [doorx v])\n        if <<(item (#One) of [doorx v]) = (#Cus2)> and <(item (#One) of [doory v]) = (#Cus3)>> then\n            set [foundblocktype v] to (item (#One) of [doortype v])\n            stop [this script v]\n        end\n        change [#one v] by (1)\n    end\nend\nif <(type) = [Game]> then\n    set [foundblocktype v] to (item (#One) of [bltyga v])\n    if <(FoundBlockType) = [k]> then\n        if <(On/Off) = [1]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\n    if <(FoundBlockType) = [l]> then\n        if <(On/Off) = [0]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\n    if <(FoundBlockType) = [u]> then\n        set [foundblocktype v] to [i]\n        stop [this script v]\n    end\n    if <(FoundBlockType) = [ah]> then\n        if <(PTimer) > [0]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\n    if <(FoundBlockType) = [ai]> then\n        if <(PTimer) = [0]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\n    set [foundblocktype v] to (item (#One) of [bltyga v])\nend\nif <(FoundBlockType) = []> then\n    set [foundblocktype v] to [i]\nend\nif <(subtype?) = [1]> then\n    if <(letter (1) of (FoundBlockType)) < [10]> then\n        set [#one v] to (join (letter (1) of (FoundBlockType)) (letter (2) of (FoundBlockType)))\n        if <(round (#One)) = (#One)> then\n            set [foundblockmaintype v] to (#One)\n            set [foundblocksubtype v] to (join (letter (3) of (FoundBlockType)) (letter (4) of (FoundBlockType)))\n        else\n            set [foundblockmaintype v] to (letter (1) of (FoundBlockType))\n            set [foundblocksubtype v] to (join (letter (2) of (FoundBlockType)) (letter (3) of (FoundBlockType)))\n        end\n    else\n        set [foundblockmaintype v] to (FoundBlockType)\n        set [foundblocksubtype v] to (FoundBlockType)\n    end\nend\n\ndefine Change (input) Add (add)\nset [#cus4 v] to (input)\nset [#ten v] to []\nCont [!]\nCont ["]\nCont [£]\nCont [&]\nCont [^]\nCont [%]\nCont [$]\nset [#ten v] to (join (#Ten) (add))\nif <(#Ten) = []> then\n    set [#ten v] to [i]\nend\n\nwhen I receive [flagclicked v]\nset size to (400) %\nhide\nset [iamtheeditor v] to [0]\nset [whawha v] to [0]\n\nwhen I receive [entityupdate v]\nhide\nif <(Edit/PlayMode) = [0]> then\n    set [iamtheeditor v] to [1]\n    change [createrestorepointtimer v] by ((-1) / (30))\n    set [rightscrollstop v] to [x]\n    set [upscrollstop v] to [x]\n    set [downscrollstop v] to [x]\n    set [leftscrollstop v] to [x]\n    set [#one v] to (mouse x)\n    if <(RenderWidth) > [300]> then\n        if <(#One) > [319]> then\n            set [#one v] to [319]\n        end\n    else\n        if <(#One) > [239]> then\n            set [#one v] to [239]\n        end\n    end\n    set [mousex v] to (round (((#One) + (MapX)) / (32)))\n    set [#one v] to (mouse y)\n    if <(#One) > [179]> then\n        set [#one v] to [179]\n    end\n    if <(#One) < [-140]> then\n        set [#one v] to [-140]\n    end\n    set [mousey v] to (round ((((#One) - (4)) + (MapY)) / (32)))\n    if <<(mouse y) > [-141]> or <(length of [placex v]) > [0]>> then\n        if <<(MouseX) > [0]> and <(MouseY) > [0]>> then\n            if <<mouse down?> and <<([abs v] of (AnyMenuOpen) ) < [0.5]> and <(ClickPause) = [0]>>> then\n                if <not <(JustEdited) = ((MouseX) * (MouseY))>> then\n                    set [#cus2 v] to (MouseX)\n                    set [#cus3 v] to (MouseY)\n                    if <(PlaceTool) = [3]> then\n                        BlockAt [] [] [Block] [1]\n                        if <(FoundBlockType) = [i]> then\n                            BlockAt [] [] [Door] [1]\n                            if <(FoundBlockType) = [i]> then\n                                BlockAt [] [] [Track] [1]\n                                if <(FoundBlockType) = [i]> then\n                                    BlockAt [] [] [Semi] [1]\n                                end\n                            end\n                        end\n                        if <not <(FoundBlockType) = [i]>> then\n                            if <[itemlist v] contains (FoundBlockMainType)?> then\n                                set [placingblocktype v] to (FoundBlockMainType)\n                                set [placetool v] to [1]\n                                set [placementrotation v] to ["]\n                            end\n                        end\n                    else\n                        set [savemenuprogress v] to [0]\n                        if <not <(PlaceTool) = [2]>> then\n                            if <(MouseY) > ((WorldHeight) - (2))> then\n                                set [#cus1 v] to [Up]\n                                ExpandGrid\n                            end\n                            if <(MouseX) > ((WorldWidth) - (2))> then\n                                set [#cus1 v] to [Right]\n                                ExpandGrid\n                            end\n                        end\n                        if <(PlacingBlockType) = [Water]> then\n                            set [currentwaterlevel v] to (MouseY)\n                            broadcast (ReplaceWaterLevel v)\n                            set [placingblocktype v] to [1]\n                        else\n                            if <(PlacingBlockType) = [Lava]> then\n                                set [currentlavalevel v] to (MouseY)\n                                broadcast (ReplaceLavaLevel v)\n                                set [placingblocktype v] to [1]\n                            else\n                                if <<(PlacingBlockType) = [Goal]> and <(PlaceTool) = [1]>> then\n                                    set [goalx v] to (MouseX)\n                                    set [goaly v] to (MouseY)\n                                    set [goalarea v] to (CurrentArea)\n                                else\n                                    if <<(PlacingBlockType) = [de]> and <(PlaceTool) = [1]>> then\n                                        set [goal2x v] to (MouseX)\n                                        set [goal2y v] to (MouseY)\n                                        set [goal2area v] to (CurrentArea)\n                                    else\n                                        if <<(PlacingBlockType) = [Spawn]> and <(PlaceTool) = [1]>> then\n                                            set [ogspawnx v] to (MouseX)\n                                            set [ogspawny v] to (MouseY)\n                                        else\n                                            if <<[type - transport v] contains (PlacingBlockType)?> and <(PlaceTool) = [1]>> then\n                                                add (MouseX) to [placex v]\n                                                add (MouseY) to [placey v]\n                                            else\n                                                if <(PlacementTool) = [2]> then\n                                                    add (MouseX) to [placex v]\n                                                    add (MouseY) to [placey v]\n                                                else\n                                                    if <(MouseStartX) = [x]> then\n                                                        set [mousestartx v] to (MouseX)\n                                                        set [mousestarty v] to (MouseY)\n                                                        DragPlacement\n                                                    else\n                                                        if <not <(MouseStartX) = [z]>> then\n                                                            DragPlacement\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                    set [justedited v] to ((MouseX) * (MouseY))\n                end\n            else\n                set [justedited v] to [x]\n            end\n        end\n    end\nend\nif <<<not <mouse down?>> or <(MouseStartX) = [z]>> or <<<[type - transport v] contains (PlacingBlockType)?> and <(PlaceTool) = [1]>> or <(PlacementTool) = [2]>>> then\n    MakePlacements\nend\nif <<(CreateRestorePointTimer) < [0]> and <<(length of [placex v]) = [0]> and <(AllowLowFPS) = [1]>>> then\n    broadcast (CreateSaveRestorePoint v)\n    set [createrestorepointtimer v] to [15]\nend\n\nwhen I receive [renderforegroundblocks v]\nset [rotatetext v] to [0]\nif <<(Edit/PlayMode) = [0]> and <(SaveMenu) = [0]>> then\n    if <not <mouse down?>> then\n        set [ghost v] effect to (50)\n        switch costume to (large v)\n        go to x: (((MouseX) * (32)) - (MapX)) y: ((((MouseY) * (32)) - (MapY)) + (4))\n        if <(PlaceTool) = [1]> then\n            if <(PlacingBlockType) = [bb]> then\n                if <((length of [doorx v]) mod (2)) = [1]> then\n                    switch costume to (bb v)\n                else\n                    switch costume to (bb2 v)\n                end\n            else\n                switch costume to (join (PlacingBlockType) [])\n            end\n        else\n            if <(PlaceTool) = [3]> then\n                switch costume to (picker v)\n            else\n                switch costume to (erase v)\n            end\n        end\n        set [#seven v] to [0]\n        set [#eight v] to [0]\n        if <(PlaceTool) = [1]> then\n            if <[type - putontracks v] contains (PlacingBlockType)?> then\n                BlockAt (MouseX) (MouseY) [Track] [1]\n                if <<<(FoundBlockSubtype) = [d]> or <(FoundBlockSubtype) = [b]>> or <<(FoundBlockSubtype) = [e]> or <(FoundBlockSubtype) = [f]>>> then\n                    set [#eight v] to [0.5]\n                end\n            end\n        end\n        set [#seven v] to <<(PlaceTool) = [1]> and <[type - rotatable v] contains (PlacingBlockType)?>>\n        if <(#Seven) > (#Eight)> then\n            set [#eight v] to (#Seven)\n        end\n        if <(#Eight) = [1]> then\n            if <<not <[type - uniques entities v] contains (PlacingBlockType)?>> or <<<(PlacingBlockType) = [aa]> or <(PlacingBlockType) = [eu]>> or <<(PlacingBlockType) = [cn]> or <(PlacingBlockType) = [dk]>>>> then\n                set rotation style [left-right v]\n                if <(PlacementRotation) = [£]> then\n                    point in direction (-90)\n                else\n                    if <(PlacementRotation) = ["]> then\n                        point in direction (90)\n                    else\n                        if <(PlacementRotation) = [^]> then\n                            switch costume to (large v)\n                            switch costume to (join (PlacingBlockType) [2])\n                            point in direction (90)\n                        else\n                            if <(PlacementRotation) = [&]> then\n                                switch costume to (large v)\n                                switch costume to (join (PlacingBlockType) [2])\n                                point in direction (-90)\n                            else\n                                set rotation style [all around v]\n                                if <(PlacementRotation) = [%]> then\n                                    point in direction (0)\n                                else\n                                    point in direction (180)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        stamp\n        set rotation style [don't rotate v]\n        if <not <(#Eight) = [0]>> then\n            set [rotatetext v] to [1]\n            if <not <<<<(PlacingBlockType) = [bb]> or <(PlacingBlockType) = [dk]>> or <<<(PlacingBlockType) = [u]> or <(PlacingBlockType) = [eu]>> or <(PlacingBlockType) = [df]>>> or <<(PlacingBlockType) = [bc]> or <<(PlacingBlockType) = [bo]> or <(PlacingBlockType) = [bw]>>>>> then\n                switch costume to (large v)\n                go to x: (((MouseX) * (32)) - (MapX)) y: ((((MouseY) * (32)) - (MapY)) + ((4) + (([sin v] of ((GameTimer) * (360)) ) * (2))))\n                switch costume to (PlacementRotation)\n                stamp\n            end\n        end\n    end\n    ShowPlacements\nend\n\nwhen I receive [updatescrollstop v]\nset [#cus3 v] to [New]\nset [updatescrollcalledfor v] to [0]\nif <(LimitedCamera) > [0]> then\n    if <not <<(LeftScrollStop) = [x]> and <(RightScrollStop) = [x]>>> then\n        set [updatedscrollstopx v] to [1]\n    end\n    if <not <(UpScrollStop) = [x]>> then\n        set [updatedscrollstopy v] to [1]\n    end\nend\nset [rightscrollstop v] to [x]\nset [upscrollstop v] to [x]\nset [downscrollstop v] to [x]\nset [leftscrollstop v] to [x]\nrepeat until <<(Edit/PlayMode) = [0]> and <(GameTimer) > [0.4]>>\n    set [#two v] to [0]\n    if <(RightScrollStop) = [x]> then\n        ScrollStop [R]\n        set [#two v] to [1]\n    end\n    if <(LeftScrollStop) = [x]> then\n        ScrollStop [L]\n        set [#two v] to [1]\n    end\n    if <<(NewScrollScan) = [1]> or <(#Cus3) = [New]>> then\n        if <(UpScrollStop) = [x]> then\n            if <not <(RightScrollStop) = [x]>> then\n                ScrollStopping [U]\n                set [#two v] to [1]\n            end\n        end\n        if <(DownScrollStop) = [x]> then\n            if <not <(UpScrollStop) = [x]>> then\n                ScrollStopping [D]\n                set [#two v] to [1]\n                if <(DownScrollStop) = [x]> then\n                    set [downscrollstop v] to [0]\n                end\n            end\n        end\n    end\n    if <(#Two) = [0]> then\n        stop [this script v]\n    end\n    set [newscrollscan v] to [0]\n    if <<([abs v] of (PlayerYVelocity) ) > [8]> or <([abs v] of (PlayerXVelocity) ) > [8]>> then\n        wait (0.3) seconds\n    else\n        wait (0.5) seconds\n    end\nend\n\nwhen I receive [createnewlevel v]\nset [whawha v] to [0]\nset [transitionprogress v] to [8]\nset [transitiontype v] to [FadeIn]\nset [worldheight v] to [72]\nset [worldwidth v] to [15]\nset [menu v] to [Game]\nFormGrid\nset [placetool v] to [1]\nset [edit/playmode v] to [0]\nset [placementrotation v] to ["]\nset [placementtool v] to [1]\nset [goalarea v] to [0]\nset [goaly v] to [-8]\nset [createrestorepointtimer v] to [15]\nset [savemenuprogress v] to [0]\nset [showtracks v] to [1]\nset [unloadtracks v] to [1]\nset [timeleftfull v] to [300]\nset [progressive v] to [1]\nset [alternateloading v] to [0]\nif <(FlagClicked) = [1]> then\n    set [save code v] to []\nend\nset [mapx v] to [256]\nset [mapy v] to [160]\nset [ogspawnx v] to [8]\nset [ogspawny v] to [5]\nset [goal2area v] to [x]\nset [goal2x v] to [x]\nset [goal2y v] to [x]\ndelete all of [areas v]\nadd [1,1,72,2,-8,-8,0,0,] to [areas v]\nadd [2,74,10,3,-8,-8,0,0,] to [areas v]\nset [currentarea v] to [1]\nbroadcast (UpdateAreaSettings v)\nset [scrolling v] to [0]\nbroadcast (TpSpawn v)\n\ndefine Conn (1) (2) (3)\nif <<(FixingBlockType) = (1)> or <<(FixingBlockType) = (2)> or <(FixingBlockType) = (3)>>> then\n    add (1) to [type - thisconnectsto v]\n    add (2) to [type - thisconnectsto v]\n    add (3) to [type - thisconnectsto v]\nend\n\ndefine Door\ndelete (#Cus1) of [doorx v]\ndelete (#Cus1) of [doory v]\ndelete (#Cus1) of [doortype v]\ndelete (#Cus1) of [doorextra v]\n\ndefine Side (x) (y) (side) (corner)\nBlockAt (x) (y) (Type) [1]\nset [#eleven v] to <[type - blocks v] contains (FoundBlockMainType)?>\nif <<<<[type - thisconnectsto v] contains (FoundBlockMainType)?> or <<<<<<(FixingBlockType) = [22]> or <(FixingBlockType) = [19]>> and <(#Eleven) = [1]>> and <<(corner) = [1]> or <(corner) = [4]>>> or <<<(FixingBlockType) = [22]> or <(FixingBlockType) = [19]>> and <<(corner) = [2]> or <(corner) = [3]>>>> or <<<<(FixingBlockType) = [19]> and <(#Eleven) = [1]>> and <<(side) = [U]> or <(side) = [D]>>> or <<<(FixingBlockType) = [22]> and <(#Eleven) = [1]>> and <<(side) = [L]> or <(side) = [R]>>>>>> and <not <(FoundBlockType) = [i]>>> or <<<<(y) < (AreaStartHeight)> or <(y) > (((AreaStartHeight) + (AreaHeight)) - (1))>> and <not <<(FixingBlockType) = [22]> or <<(FixingBlockType) = [7]> or <(FixingBlockType) = [8]>>>>> or <<(x) < [1]> and <not <(FixingBlockType) = [19]>>>>> then\n    if <not <(side) = []>> then\n        set [fixingblocksides v] to (join (FixingBlockSides) (side))\n    end\n    if <not <(corner) = []>> then\n        set [fixingblockcorners v] to (join (FixingBlockCorners) (corner))\n    end\n    if <(side) = [U]> then\n        if <not <<(FixingBlockType) = [22]> or <(FixingBlockType) = [19]>>> then\n            if <not <(y) > (((AreaStartHeight) + (AreaHeight)) - (2))>> then\n                set [abovetype v] to (FoundBlockMainType)\n            end\n        end\n        if <<(FixingBlockType) = [19]> and <(FoundBlockMainType) = [22]>> then\n            set [fixingblockcorners v] to (join (FixingBlockCorners) [\(])\n        end\n    end\n    if <(side) = [D]> then\n        if <<(FixingBlockType) = [19]> and <(FoundBlockMainType) = [22]>> then\n            set [fixingblockcorners v] to (join (FixingBlockCorners) [\)])\n        end\n    end\n    if <(side) = [R]> then\n        if <<(FixingBlockType) = [22]> and <(FoundBlockMainType) = [19]>> then\n            set [fixingblockcorners v] to (join (FixingBlockCorners) [\)])\n        end\n        if <((FixingBlockType) mod (3)) = [0]> then\n            if <not <(FixingBlockType) = (FoundBlockMainType)>> then\n                if <not < (FixingBlockSides) contains [U]?>> then\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [R])\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [1])\n                end\n                if <not < (FixingBlockSides) contains [D]?>> then\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [R])\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [2])\n                end\n            end\n        end\n    end\n    if <(side) = [L]> then\n        if <<(FixingBlockType) = [22]> and <(FoundBlockMainType) = [19]>> then\n            set [fixingblockcorners v] to (join (FixingBlockCorners) [\(])\n        end\n        if <<not <(FoundBlockMainType) = (FixingBlockType)>> and <(x) > [1]>> then\n            set [leftnotthesame v] to [1]\n        end\n        if <((FixingBlockType) mod (3)) = [0]> then\n            if <not <(FixingBlockType) = (FoundBlockMainType)>> then\n                if <not < (FixingBlockSides) contains [U]?>> then\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [L])\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [4])\n                end\n                if <not < (FixingBlockSides) contains [D]?>> then\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [L])\n                    set [fixingblockcorners v] to (join (FixingBlockCorners) [3])\n                end\n            end\n        end\n    end\n    if <(corner) = [4]> then\n        if <not <(FoundBlockMainType) = (FixingBlockType)>> then\n            if <<(FixingBlockType) = [5]> or <(FixingBlockType) = [6]>> then\n                set [fixingblockcorners v] to (join (FixingBlockCorners) [!])\n            end\n        end\n    end\n    if <(corner) = [U]> then\n        if <(AboveType) = (FixingBlockType)> then\n            set [abovetype v] to (FoundBlockMainType)\n        end\n    end\nend\n\ndefine Cont (thi)\nif < (#Cus4) contains (thi)?> then\n    set [#ten v] to (join (#Ten) (thi))\nend\n\n@Background\n\ndefine Background (costume)\nswitch costume to (dot v)\nif <(costume) = [17]> then\n    set [#eight v] to ((round ((GameTimer) * (100))) mod (300))\n    if <(Edit/PlayMode) = [0]> then\n        set [#eight v] to [0]\n    end\n    if <(#Eight) < [290]> then\n        switch costume to (171 v)\n    else\n        if <(#Eight) < [292]> then\n            switch costume to (172 v)\n        else\n            if <(#Eight) < [294]> then\n                switch costume to (173 v)\n            else\n                if <(#Eight) < [296]> then\n                    switch costume to (172 v)\n                else\n                    if <(#Eight) < [298]> then\n                        switch costume to (173 v)\n                    else\n                        if <(#Eight) < [300]> then\n                            switch costume to (174 v)\n                        else\n                            switch costume to (171 v)\n                        end\n                    end\n                end\n            end\n        end\n    end\nelse\n    if <(costume) = [15]> then\n        switch costume to (join [15] (22Mod4+1))\n    else\n        switch costume to (join (costume) [])\n    end\nend\nif <([abs v] of (#One) ) < ((RenderWidth) + (496))> then\n    go to x: (#One) y: (#Two)\n    stamp\nend\n\nwhen I receive [backgroundupdate v]\nBackground\n\nwhen I receive [flagclicked v]\nset [mapx v] to [256]\nset [mapy v] to [160]\nswitch costume to (dot v)\nset size to (400) %\nhide\nset [currentbackground v] to [1]\nset [areastartheight v] to [1]\nset [areaheight v] to [72]\nclear graphic effects\nset rotation style [don't rotate v]\n\ndefine DrawGoal (no)\nset [#one v] to (((#Cus1) * (32)) - (MapX))\nset [#two v] to ((((#Cus2) * (32)) - (MapY)) + (4))\nif <([abs v] of (#One) ) < ((RenderWidth) + (232))> then\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (#One) y: ((#Two) mod (32))\n    switch costume to (join [GoalBack] (no))\n    stamp\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (#One) y: (#Two)\n    if <(no) = [2]> then\n        switch costume to (de v)\n    else\n        switch costume to (goal v)\n    end\n    stamp\n    if <(HitGoal) = [0]> then\n        switch costume to (large2 v)\n        switch costume to (join [go] (([floor v] of (((GameTimer) * (32)) mod (3)) ) + (1)))\n        stamp\n    end\n    change [#one v] by (MapX)\n    change [#two v] by (MapY)\n    if <<([abs v] of ((#One) - (PlayerX)) ) < [40]> and <<<(AllowMovement) = [1]> and <(Edit/PlayMode) = [1]>> and <(HitGoal) = [0]>>> then\n        if <<((#Two) - (PlayerY)) > [-32]> and <((#Two) - (PlayerY)) < ((PlayerHeight) + (14))>> then\n            add [Explode] to [createparticletype v]\n            add (#One) to [createparticlex v]\n            add (#Two) to [createparticley v]\n            set [hitgoal v] to [1]\n            broadcast (HitGoal v)\n            set [goalhitx v] to [0]\n            if <(no) = [2]> then\n                set [goalhitx v] to (Goal2X)\n            end\n        end\n    end\nend\n\nwhen I receive [flashbackground v]\nset [brightness v] effect to (33)\nrepeat (30)\n    set [color v] effect to (([sin v] of ((GameTimer) * ((960) * (8))) ) * (20))\nend\nclear graphic effects\n\ndefine Background\nset [typesonscreencheck? v] to <((round ((GameTimer) * (100))) mod (3)) = [0]>\nif <(TypesOnScreenCheck?) = [1]> then\n    set [typesonscreensemi v] to [0]\n    set [typesonscreentrack v] to [0]\nend\nif <(GameTimer) < [0.05]> then\n    set [updatedscrollstopx v] to [0]\n    set [updatedscrollstopy v] to [0]\nend\nif <(UpdatedScrollStopX) < [0.05]> then\n    set [updatedscrollstopx v] to [0]\nend\nif <(UpdatedScrollStopY) < [0.05]> then\n    set [updatedscrollstopy v] to [0]\nend\nset [updatedscrollstopx v] to ((UpdatedScrollStopX) / (1.2))\nset [updatedscrollstopy v] to ((UpdatedScrollStopY) / (1.2))\nset [allowlowfps v] to [0]\nset [playermoved v] to [0]\nif <(HitGoal) = [1]> then\n    set [moveup v] to [0]\n    if <<(PlayerUnderwater) = [1]> and <([y position v] of [player v]) < [-20]>> then\n        set [moveup v] to [1]\n    end\n    set [movedown v] to [0]\n    set [moveright v] to [1]\n    set [moveleft v] to [0]\n    set [moverun v] to [0]\n    set [moveuseability v] to [0]\n    if <(GoalHitX) = [x]> then\n        set [moveright v] to [0]\n    end\nend\nif <(Edit/PlayMode) = [0]> then\n    set [allowlowfps v] to [1]\n    set [#one v] to ((<key (space v) pressed?> * (6)) + (1))\n    if <(GameTimer) < [0.02]> then\n        set [#one v] to [0]\n    end\n    if <(MoveUp) = [1]> then\n        change [mapy v] by ((#One) * (4))\n        set [allowlowfps v] to [0]\n    end\n    if <(MoveDown) = [1]> then\n        change [mapy v] by ((#One) * (-4))\n        set [allowlowfps v] to [0]\n    end\n    if <(MoveRight) = [1]> then\n        change [mapx v] by ((#One) * (4))\n        set [allowlowfps v] to [0]\n    end\n    if <(MoveLeft) = [1]> then\n        change [mapx v] by ((#One) * (-4))\n        set [allowlowfps v] to [0]\n    end\n    if <not <(AnyMenuOpen) = [0]>> then\n        set [allowlowfps v] to [0]\n    end\n    if <(RenderWidth) > [300]> then\n        set [allowlowfps v] to [1]\n    end\nelse\n    set [#eight v] to (((MapX) - (PlayerX)) / (((-2) - ((UpdatedScrollStopX) * (32))) + (([abs v] of ((Player SpringX) * ((Player SpringX) / (8))) ) * (-0.5))))\n    if <(CameraX) = [0]> then\n        change [mapx v] by (#Eight)\n    end\n    if <(CameraX) = [1]> then\n        if <(#Eight) > [0]> then\n            change [mapx v] by (#Eight)\n        end\n    end\n    if <(CameraX) = [2]> then\n        if <(#Eight) < [0]> then\n            change [mapx v] by (#Eight)\n        end\n    end\n    if <(AllowMovement) = [1]> then\n        if <(CameraX) = [3]> then\n            change [mapx v] by (1)\n        end\n        if <(CameraX) = [4]> then\n            change [mapx v] by (2)\n        end\n        if <(CameraX) = [5]> then\n            change [mapx v] by (4)\n        end\n    end\n    if <(Dead) = [0]> then\n        set [#nine v] to [0]\n        if <((MapY) - (PlayerY)) > [0]> then\n            set [#nine v] to (((MapY) - (PlayerY)) / ((-2) - ((UpdatedScrollStopY) * (32))))\n        else\n            if <((MapY) - (PlayerY)) < [-48]> then\n                set [#nine v] to ((((MapY) + (48)) - (PlayerY)) / ((-2) - ((UpdatedScrollStopY) * (32))))\n            end\n        end\n        if <(CameraY) = [0]> then\n            change [mapy v] by (#Nine)\n        end\n        if <(CameraY) = [1]> then\n            if <(#Nine) > [0]> then\n                change [mapy v] by (#Nine)\n            end\n        end\n        if <(CameraY) = [2]> then\n            if <(#Nine) < [0]> then\n                change [mapy v] by (#Nine)\n            end\n        end\n        if <(AllowMovement) = [1]> then\n            if <(CameraY) = [3]> then\n                change [mapy v] by (1)\n            end\n            if <(CameraY) = [4]> then\n                change [mapy v] by (-1)\n            end\n        end\n    end\n    if <(CameraShake) > [0]> then\n        change [mapx v] by (([sin v] of (((CameraShake) - (1)) * (90)) ) * (-4))\n        change [camerashake v] by (1)\n        if <(CameraShake) > [8]> then\n            set [camerashake v] to [0]\n        else\n            change [mapx v] by (([sin v] of (((CameraShake) - (1)) * (90)) ) * (4))\n        end\n    end\nend\nset [limitedcamera v] to [0]\nif <(Edit/PlayMode) = [1]> then\n    if <not <(LeftScrollStop) = [x]>> then\n        set [#cus1 v] to (((LeftScrollStop) + (7)) * (32))\n        if <(MapX) < (#Cus1)> then\n            set [mapx v] to (#Cus1)\n            set [limitedcamera v] to [1]\n        end\n    end\n    if <not <(RightScrollStop) = [x]>> then\n        if <<([abs v] of ((LeftScrollStop) - (RightScrollStop)) ) < [14]> and <not <(LeftScrollStop) = [x]>>> then\n            set [mapx v] to ((((RightScrollStop) + (LeftScrollStop)) / (2)) * (32))\n            change [limitedcamera v] by (2)\n        else\n            set [#cus1 v] to (((RightScrollStop) - (7)) * (32))\n            if <(MapX) > (#Cus1)> then\n                set [mapx v] to (#Cus1)\n                change [limitedcamera v] by (2)\n            end\n        end\n    end\n    if <not <(UpScrollStop) = [x]>> then\n        set [#cus1 v] to (((UpScrollStop) - (5)) * (32))\n        if <(MapY) > (#Cus1)> then\n            set [mapy v] to (#Cus1)\n        end\n    end\n    if <not <(DownScrollStop) = [x]>> then\n        if <<([abs v] of ((UpScrollStop) - (DownScrollStop)) ) < [9]> and <not <(UpScrollStop) = [x]>>> then\n            set [mapy v] to (((((UpScrollStop) + (DownScrollStop)) - (1)) / (2)) * (32))\n        else\n            set [#cus1 v] to (((DownScrollStop) + (4)) * (32))\n            if <(MapY) < (#Cus1)> then\n                set [mapy v] to (#Cus1)\n            end\n        end\n    end\nend\nif <(HitGoal) = [1]> then\n    if <<(GoalHitX) > [0]> and <not <(GoalHitX) = [x]>>> then\n        if <(MapX) > ((GoalHitX) * (32))> then\n            set [mapx v] to ((GoalHitX) * (32))\n        end\n    end\nend\nif <<<(MapX) > ((GoalX) * (32))> and <(GoalArea) = (CurrentArea)>> and <(Edit/PlayMode) = [1]>> then\n    set [mapx v] to ((GoalX) * (32))\nend\nif <(MapX) < [256]> then\n    set [mapx v] to [256]\nend\nset [#cus1 v] to ((128) + ((AreaStartHeight) * (32)))\nif <(MapY) < (#Cus1)> then\n    set [mapy v] to (#Cus1)\nend\nset [#one v] to ((-192) + (((AreaStartHeight) + (AreaHeight)) * (32)))\nif <(MapY) > (#One)> then\n    set [mapy v] to (#One)\nend\ndelete all of [interactwithblocktype v]\ndelete all of [interactwithblocksource v]\ndelete all of [interactwithblockx v]\ndelete all of [interactwithblocky v]\ndelete all of [entinttype v]\ndelete all of [entintsource v]\ndelete all of [entintx v]\ndelete all of [entinty v]\nswitch costume to (dot v)\nset size to (400) %\nset [#two v] to ((((MapY) / (2)) * (-1)) + ((630) + ((AreaStartHeight) * (16))))\nif <<(CurrentBackground) = [8]> or <<(CurrentBackground) = [16]> or <(CurrentBackground) = [20]>>> then\n    set [#one v] to ((MapX) * (0.75))\n    DoBackgrounds [x]\nend\nset [#one v] to (MapX)\nDoBackgrounds []\nif <<(CurrentBackground) = [1]> or <<(CurrentBackground) = [14]> or <(CurrentBackground) = [25]>>> then\n    set [#one v] to ((MapX) * (1.25))\n    DoBackgrounds [x]\nend\nif <(Goal2Area) = (CurrentArea)> then\n    set [#cus1 v] to (Goal2X)\n    set [#cus2 v] to (Goal2Y)\n    DrawGoal [2]\nend\nif <(GoalArea) = (CurrentArea)> then\n    set [#cus1 v] to (GoalX)\n    set [#cus2 v] to (GoalY)\n    DrawGoal []\nend\nif <<(AlternateLoading) = [1]> and <(Edit/PlayMode) = [0]>> then\n    switch costume to (dot v)\n    set size to (400) %\n    set [ghost v] effect to ((80) + (<(22Mod4+1) = [1]> * (5)))\n    set [#two v] to ((((MapY) + (140)) mod (320)) * (-1))\n    if <(((MapY) + (140)) mod (320)) > [300]> then\n        change [#two v] by (320)\n    end\n    repeat (2)\n        set [#one v] to (((((MapX) + (144)) mod (320)) * (-1)) - (320))\n        if <(((MapX) + (144)) mod (320)) > [160]> then\n            change [#one v] by (320)\n        end\n        repeat (3)\n            Background [Chunk]\n            change [#one v] by (320)\n        end\n        change [#two v] by (320)\n    end\n    clear graphic effects\nend\nbroadcast (EntityUpdate v)\n\ndefine DoBackgrounds (type)\nset [#one v] to (((((#One) + (-800)) mod (2048)) / (2)) * (-1))\nrepeat (2)\n    Background (join (CurrentBackground) (type))\n    change [#one v] by (1024)\nend\n\n@Entities\n\ndefine VerticalCollision (type) (actuallymove)\nset [#cus1 v] to ((BlockScanX) * (32))\nset [#cus2 v] to ((BlockScanY) * (32))\nif <(#Fifteen) = [0]> then\n    if <not <([abs v] of ((X) - (#Cus1)) ) < (HitboxWidth)>> then\n        stop [this script v]\n    end\nend\nif <<(#Twelve) = [NoColl]> and <(Colliding) = [1]>> then\n    stop [this script v]\nend\nset [colliding v] to [0]\nset [#one v] to [0]\nif <(letter (1) of (CollidingBlockType)) = [T]> then\n    set [#one v] to [16]\nend\nif <(letter (1) of (CollidingBlockType)) = [B]> then\n    set [#one v] to [-16]\nend\nif <(FoundBlockType) = [Unique]> then\n    set [#one v] to [8]\nend\nif <((Y) + (#One)) > (#Cus2)> then\n    if <(CollidingBlockType) = [T]> then\n        set [proposedposition v] to ((#Cus2) + (12))\n    else\n        if <<(CollidingBlockType) = [TR]> or <(CollidingBlockType) = [TL]>> then\n            if <(CollidingBlockType) = [TR]> then\n                set [proposedposition v] to ((#Cus1) - (X))\n            else\n                set [proposedposition v] to ((X) - (#Cus1))\n            end\n            if <(ProposedPosition) > [8]> then\n                set [proposedposition v] to [8]\n            end\n            if <(ProposedPosition) < [-24]> then\n                set [proposedposition v] to [-24]\n            end\n            set [proposedposition v] to ((#Cus2) + ((ProposedPosition) + (20)))\n        else\n            if <(letter (1) of (CollidingBlockType)) = [T]> then\n                if <<(CollidingBlockType) = [TR1]> or <(CollidingBlockType) = [TR2]>> then\n                    set [proposedposition v] to ((#Cus1) - (X))\n                else\n                    set [proposedposition v] to ((X) - (#Cus1))\n                end\n                if <(ProposedPosition) > [8]> then\n                    set [proposedposition v] to [8]\n                end\n                if <(ProposedPosition) < [-24]> then\n                    set [proposedposition v] to [-24]\n                end\n                set [proposedposition v] to ((ProposedPosition) / (2))\n                if <<(CollidingBlockType) = [TR2]> or <(CollidingBlockType) = [TL2]>> then\n                    change [proposedposition v] by (16)\n                end\n                set [proposedposition v] to ((#Cus2) + ((ProposedPosition) + (8)))\n            end\n        end\n        if <(CollidingBlockType) = [x]> then\n            set [proposedposition v] to ((#Cus2) + (28))\n        end\n    end\n    if <<(type) = [Semi]> or <<(FoundBlockSubtype) = [es]> or <(FoundBlockSubtype) = [et]>>> then\n        if <(Type) = [cw]> then\n            if <<(Y) > ((PlayerY) + (16))> and <(YVelocity) < [-2]>> then\n                stop [this script v]\n            end\n        end\n        if <<(ProposedPosition) > (Y)> and <(PreviousYPosition) > ((ProposedPosition) - (1))>> then\n            if <(actuallymove) = [x]> then\n                set [colliding v] to [1]\n            else\n                if <not <(ProposedPosition) > (UpLimit)>> then\n                    set [y v] to (ProposedPosition)\n                    if <<(FoundBlockType) = [Unique]> and <<(FoundBlockSubtype) = [es]> or <(FoundBlockSubtype) = [et]>>> then\n                        set [onice v] to [1]\n                    end\n                end\n                set [previouslystacked v] to [-0.1]\n                set [yvelocity v] to [0]\n                set [downlimit v] to (ProposedPosition)\n            end\n        end\n    else\n        if <(#Fifteen) = [1]> then\n            if <<(ProposedPosition) > (Y)> and <(PreviousYPosition) > ((ProposedPosition) - ((item (item (#Five) of [nearbyuniques v]) of [ent y v v]) + (1)))>> then\n                if <(actuallymove) = [x]> then\n                    set [colliding v] to [1]\n                else\n                    if <not <(ProposedPosition) > (UpLimit)>> then\n                        set [y v] to (ProposedPosition)\n                    end\n                    set [previouslystacked v] to [-0.1]\n                    set [yvelocity v] to [0]\n                    set [downlimit v] to (ProposedPosition)\n                end\n            end\n        else\n            if <(ProposedPosition) > (Y)> then\n                if <(actuallymove) = [x]> then\n                    set [colliding v] to [1]\n                    stop [this script v]\n                else\n                    if <not <(ProposedPosition) > (UpLimit)>> then\n                        if <<<<(FoundBlockType) = [cs]> or <(FoundBlockType) = [q]>> or <<(FoundBlockType) = [Unique]> and <<(FoundBlockSubtype) = [q]> or <(FoundBlockSubtype) = [cs]>>>> or <<<(FoundBlockMainType) = [55]> or <<(FoundBlockMainType) = [56]> or <(FoundBlockMainType) = [57]>>> and <not <(FoundBlockType) = [Unique]>>>> then\n                            set [onice v] to [1]\n                        end\n                        set [y v] to (ProposedPosition)\n                    end\n                    set [downlimit v] to (ProposedPosition)\n                    set [yvelocity v] to [0]\n                    MeltFrozCoin\n                end\n            end\n        end\n    end\nelse\n    if <not <<(type) = [Semi]> or <<(#Fifteen) = [1]> or <<(FoundBlockSubtype) = [es]> or <(FoundBlockSubtype) = [et]>>>>> then\n        if <(CollidingBlockType) = [B]> then\n            set [proposedposition v] to (((#Cus2) - (HitboxHeight)) + (16))\n        else\n            if <<(CollidingBlockType) = [BR]> or <(CollidingBlockType) = [BL]>> then\n                if <(CollidingBlockType) = [BR]> then\n                    set [proposedposition v] to ((#Cus1) - (X))\n                else\n                    set [proposedposition v] to ((X) - (#Cus1))\n                end\n                if <(ProposedPosition) > [8]> then\n                    set [proposedposition v] to [8]\n                end\n                if <(ProposedPosition) < [-24]> then\n                    set [proposedposition v] to [-24]\n                end\n                set [proposedposition v] to (((#Cus2) + (8)) - ((ProposedPosition) + (HitboxHeight)))\n            else\n                if <(letter (1) of (CollidingBlockType)) = [B]> then\n                    if <<(CollidingBlockType) = [BR1]> or <(CollidingBlockType) = [BR2]>> then\n                        set [proposedposition v] to ((#Cus1) - (X))\n                    else\n                        set [proposedposition v] to ((X) - (#Cus1))\n                    end\n                    if <(ProposedPosition) > [8]> then\n                        set [proposedposition v] to [8]\n                    end\n                    if <(ProposedPosition) < [-24]> then\n                        set [proposedposition v] to [-24]\n                    end\n                    set [proposedposition v] to ((ProposedPosition) / (2))\n                    if <<(CollidingBlockType) = [BR2]> or <(CollidingBlockType) = [BL2]>> then\n                        change [proposedposition v] by (16)\n                    end\n                    set [proposedposition v] to (((#Cus2) + (20)) - ((ProposedPosition) + (HitboxHeight)))\n                end\n            end\n            if <(CollidingBlockType) = [x]> then\n                set [proposedposition v] to ((#Cus2) - (HitboxHeight))\n            end\n        end\n        if <(ProposedPosition) < (Y)> then\n            if <(actuallymove) = [x]> then\n                set [colliding v] to [1]\n                stop [this script v]\n            else\n                if <<not <(ProposedPosition) < (DownLimit)>> or <(FoundBlockType) = [u]>> then\n                    set [y v] to (ProposedPosition)\n                end\n                if <(YVelocity) > [0]> then\n                    set [yvelocity v] to [0.5]\n                    set [uplimit v] to (ProposedPosition)\n                    MeltFrozCoin\n                    set [previousmusic v] to (X)\n                end\n            end\n        end\n    end\nend\n\ndefine Powerups\nif <(Holding) = [0]> then\n    if <<<(Powerup) = [F]> or <<(Powerup) = [U]> or <(Powerup) = [G]>>> or <<(Powerup) = [H]> or <(Powerup) = [I]>>> then\n        if <<(SpacePause) = [0]> and <<(Throwing) < [1]> and <(Crouching) = [0]>>> then\n            if <<(MoveUseAbility) = [1]> and <(ThrownEntities) < ((2) - <(Powerup) = [G]>)>> then\n                if <(Powerup) = [H]> then\n                    CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) ((Direction) / (15)) [at] [1] [0] ((XVelocity) - ((Direction) / (90))) [0]\n                else\n                    if <<(Powerup) = [I]> or <(Powerup) = [U]>> then\n                        CreateEntity ((X) + ((Direction) / (10))) ((Y) + (8)) ((Direction) / (1.5)) [bu] [0] [0] ((Direction) / (3.6)) [5]\n                        start sound [ICEBALL v]\n                    else\n                        if <(Powerup) = [G]> then\n                            CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) (Direction) [ec] [1] [0] ((Direction) / (9)) [-0.0001]\n                        else\n                            CreateEntity ((X) + ((Direction) / (10))) ((Y) + (8)) ((Direction) / (3)) [ao] [0] [0] ((Direction) / (3.6)) [5]\n                            start sound [Fireball v]\n                        end\n                    end\n                end\n                set [throwing v] to [7]\n                set [spacepause v] to [1]\n            end\n        end\n    end\n    if <(Powerup) = [R]> then\n        if <(PowerupVariable ONE) > [0]> then\n            change [powerupvariable one v] by (-1)\n            if <(round ((PowerupVariable ONE) / (3))) = [3]> then\n                EntInt ((X) + ((PlayerDirection) / (-3.5))) (Y) [Tail]\n                Interact ((X) + ((PlayerDirection) / (-3.5))) ((Y) + (2)) [HitS]\n            end\n            if <(round ((PowerupVariable ONE) / (3))) = [2]> then\n                EntInt ((X) + ((PlayerDirection) / (3.5))) (Y) [Tail]\n                Interact ((X) + ((PlayerDirection) / (3.5))) ((Y) + (2)) [HitS]\n            end\n        else\n            if <(SpacePause) = [0]> then\n                if <(MoveUseAbility) = [1]> then\n                    set [powerupvariable one v] to [10]\n                    set [spacepause v] to [1]\n                    set [playertimer v] to [0]\n                end\n            end\n        end\n        if <(Underwater) = [1]> then\n            set [powerupvariable two v] to [0]\n            set [powerupvariable three v] to [0]\n        else\n            if <(OnGround) = [1]> then\n                set [powerupvariable three v] to [0]\n                if <([abs v] of (XVelocity) ) > [8.5]> then\n                    set [powerupvariable two v] to [1]\n                else\n                    set [powerupvariable two v] to [0]\n                end\n            end\n            if <(OnGround) = [0]> then\n                if <(YVelocity) < [-7]> then\n                    set [powerupvariable two v] to [0]\n                end\n                if <(PowerupVariable TWO) = [1]> then\n                    set [powerupvariable two v] to [2]\n                end\n                if <<(PowerupVariable TWO) = [2]> or <<(PowerupVariable TWO) = [0]> and <(YVelocity) < [0]>>> then\n                    if <<(JumpPause) = [0]> and <(MoveUp) = [1]>> then\n                        set [powerupvariable three v] to [0.5]\n                        set [jumppause v] to [1]\n                    end\n                end\n            end\n            if <(PowerupVariable THREE) > [0]> then\n                change [powerupvariable three v] by ((-1) / (30))\n                if <(PowerupVariable TWO) = [0]> then\n                    if <(YVelocity) < [0]> then\n                        set [yvelocity v] to [-2]\n                    end\n                else\n                    set [yvelocity v] to [5]\n                end\n                XVel [1.12]\n                if <(MoveRight) = [1]> then\n                    change [xvelocity v] by (0.5)\n                end\n                if <(MoveLeft) = [1]> then\n                    change [xvelocity v] by (-0.5)\n                end\n                if <(XVelocity) > [0.5]> then\n                    set [direction v] to [90]\n                end\n                if <(XVelocity) < [-0.5]> then\n                    set [direction v] to [-90]\n                end\n            end\n        end\n    end\n    if <(Powerup) = [C]> then\n        if <(PowerupVariable ONE) < [3]> then\n            if <<not <(YVelocity) = [0]>> and <<(JumpPause) = [0]> and <(PowerupVariable TWO) = [0]>>> then\n                if <(MoveUp) = [1]> then\n                    set [powerupvariable two v] to [1]\n                    change [powerupvariable one v] by (1)\n                    set [jumppause v] to [1]\n                    set [yvelocity v] to [8]\n                    CreateEntity (X) ((Y) - (32)) [90] [br] [0] [0] [0] [0]\n                    start sound [Spin v]\n                end\n            end\n        end\n    end\n    if <(Powerup) = [P]> then\n        if <(Underwater) = [1]> then\n            set [powerupvariable two v] to [2]\n            set [powerupvariable one v] to [0]\n            set [powerupvariable three v] to [0]\n        else\n            if <<(MoveDown) = [1]> and <(OnGround) = [0]>> then\n                if <not <(PowerupVariable THREE) > [0]>> then\n                    if <(YVelocity) < [9]> then\n                        set [xvelocity v] to [0]\n                        if <(YVelocity) > [0]> then\n                            set [yvelocity v] to ((YVelocity) / (2))\n                        else\n                            Interact (X) ((Y) - (32)) [HitSpin]\n                            EntInt (X) ((Y) - (32)) [Kill]\n                            EntInt (X) ((Y) - (8)) [Kill]\n                            if <(PowerupVariable ONE) = [0]> then\n                                start sound [ProDown v]\n                            end\n                            if <(YVelocity) > [-10]> then\n                                set [yvelocity v] to [-10]\n                            end\n                        end\n                        set [powerupvariable one v] to [1.5]\n                    end\n                end\n            end\n            if <(PowerupVariable ONE) = [1.5]> then\n                set [powerupvariable one v] to [1]\n            else\n                set [powerupvariable one v] to [0]\n            end\n            if <<(OnGround) = [1]> or <(YVelocity) > [14.9]>> then\n                set [powerupvariable three v] to [0]\n                set [powerupvariable two v] to [1]\n            end\n            if <<(OnGround) = [0]> and <(PowerupVariable ONE) = [0]>> then\n                if <(PowerupVariable TWO) < [2]> then\n                    set [powerupvariable two v] to [2]\n                end\n                if <<(JumpPause) = [0]> and <(MoveUp) = [1]>> then\n                    if <not <<(PowerupVariable TWO) = [3]> and <(PowerupVariable THREE) > [0]>>> then\n                        set [powerupvariable three v] to [0.5]\n                        set [jumppause v] to [1]\n                        if <(PowerupVariable TWO) = [2]> then\n                            set [powerupvariable three v] to [0.8]\n                            set [powerupvariable two v] to [3]\n                            start sound [ProFly v]\n                        end\n                    end\n                end\n            end\n            if <(PowerupVariable THREE) > [0]> then\n                change [powerupvariable three v] by ((-1) / (30))\n                if <(PowerupVariable TWO) = [4]> then\n                    if <(YVelocity) < [0]> then\n                        set [yvelocity v] to [-1]\n                        if <((GameTimer) mod (0.02)) < [0.01]> then\n                            start sound [ProSpin v]\n                        end\n                    end\n                else\n                    if <(MoveUp) = [0]> then\n                        change [powerupvariable three v] by ((-1) / (30))\n                    end\n                    if <not <(YVelocity) = [0.5]>> then\n                        set [yvelocity v] to [10]\n                    end\n                    if <not <(PowerupVariable THREE) > [0]>> then\n                        set [powerupvariable two v] to [4]\n                    end\n                end\n                XVel [1.04]\n            end\n        end\n    end\nend\n\ndefine Collision (h/v) (uniques)\nif <not <(uniques) = [1]>> then\n    set [#five v] to [0]\n    repeat (length of [nearbyuniques v])\n        change [#five v] by (1)\n        set [#cus4 v] to (item (#Five) of [nearbyuniques v])\n        set [#sixteen v] to (item (#Cus4) of [ent ty v])\n        if <not <<<<<<(#Sixteen) = [c]> or <<<(#Sixteen) = [es]> or <(#Sixteen) = [et]>> and <(item (#Cus4) of [ent state v]) < [0]>>> or <<(#Sixteen) = [dz]> or <(#Sixteen) = [em]>>> or <<<(#Sixteen) = [dg]> or <(#Sixteen) = [aw]>> or <<(#Sixteen) = [dt]> and <(Type) = [du]>>>> or <<<(#Sixteen) = [af]> or <(#Sixteen) = [ek]>> or <(#Sixteen) = [ba]>>> or <<<(#Sixteen) = [be]> or <(#Sixteen) = [do]>> or <<(#Sixteen) = [dp]> or <(#Sixteen) = [dq]>>>>> then\n            Common3\n            UniquesCollision (h/v) (uniques)\n            if < (item (#Cus4) of [ent bon v]) contains [\)]?> then\n                Common3\n                change [blockscany v] by (1)\n                UniquesCollision (h/v) (uniques)\n            end\n        end\n    end\nend\nrepeat ((1) + <(Type) = [Player]>)\n    set [blockscany v] to (((Y) / (32)) - (0.5))\n    Group (h/v)\n    set [blockscany v] to ((Y) / (32))\n    Group (h/v)\n    set [blockscany v] to (((Y) / (32)) + (0.5))\n    Group (h/v)\n    if <(HitboxHeight) > [30]> then\n        set [blockscany v] to (((Y) / (32)) + (1.5))\n        Group (h/v)\n    end\nend\n\ndefine BlockAt (x) (y) (type) (subtype?)\nset [blockscanx v] to (round (BlockScanX))\nset [blockscany v] to (round (BlockScanY))\nset [foundblocktype v] to [i]\nset [#one v] to ((((round (x)) - (1)) * (WorldHeight)) + (round (y)))\nif <(subtype?) = [1]> then\n    set [collidingblocktype v] to [x]\nend\nset [#eleven v] to (round (((AreaHeight) + (AreaStartHeight)) - (1)))\nif <(y) > ((#Eleven) + (0.5))> then\n    set [#one v] to ((((round (x)) - (1)) * (WorldHeight)) + (round (#Eleven)))\n    if <<<(type) = [Semi]> or <not <((#One) mod (WorldHeight)) = (#Eleven)>>> or <<(item (#One) of [blcoga v]) = [%]> or <(item (#One) of [blcoga v]) = [$]>>> then\n        set [foundblocktype v] to [i]\n        stop [this script v]\n    end\nelse\n    if <(y) < (AreaStartHeight)> then\n        set [#one v] to ((((round (x)) - (1)) * (WorldHeight)) + (round (AreaStartHeight)))\n        set [collidingblocktype v] to [x]\n        if <<(type) = [Semi]> or <(item (#One) of [blcoga v]) = [$]>> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\n    if <(y) > (WorldHeight)> then\n        set [foundblocktype v] to [i]\n        stop [this script v]\n    end\nend\nif <<(type) = [Block]> or <(type) = []>> then\n    set [foundblocktype v] to (item (#One) of [unique type v])\n    if <(FoundBlockType) = [k]> then\n        if <(On/Off) = [1]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    else\n        if <(FoundBlockType) = [l]> then\n            if <(On/Off) = [0]> then\n                set [foundblocktype v] to [i]\n                stop [this script v]\n            end\n        else\n            if <(FoundBlockType) = [ah]> then\n                if <not <(PTimer) = [0]>> then\n                    set [foundblocktype v] to [i]\n                    stop [this script v]\n                end\n            else\n                if <(FoundBlockType) = [ai]> then\n                    if <(PTimer) = [0]> then\n                        set [foundblocktype v] to [i]\n                        stop [this script v]\n                    end\n                else\n                    if <(FoundBlockType) = [c]> then\n                        if <(PTimer) > [0]> then\n                            set [foundblocktype v] to [d]\n                            stop [this script v]\n                        end\n                        set [foundblocktype v] to [i]\n                    else\n                        if <(FoundBlockType) = [d]> then\n                            if <<(PTimer) > [0]> and <(item (#One) of [blcoga v]) = [i]>> then\n                                set [foundblocktype v] to [i]\n                                stop [this script v]\n                            end\n                            set [foundblocktype v] to (item (#One) of [bltyga v])\n                        else\n                            if <(FoundBlockType) = [bd]> then\n                                set [foundblocktype v] to [i]\n                                stop [this script v]\n                            end\n                            set [foundblocktype v] to (item (#One) of [bltyga v])\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nif <<(type) = [Semi]> or <(type) = [SemiX]>> then\n    set [foundblocktype v] to (item (#One) of [semi type v])\n    if <(type) = [Semi]> then\n        if <(YVelocity) > [0]> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n    end\nend\nif <(type) = [Track]> then\n    set [foundblocktype v] to (item (#One) of [track type v])\nend\nif <(FoundBlockType) = []> then\n    set [foundblocktype v] to [i]\n    stop [this script v]\nend\nif <<(subtype?) = [1]> and <not <(FoundBlockType) = [i]>>> then\n    set [collidingblocktype v] to [x]\n    set [#fifteen v] to (join (letter (1) of (FoundBlockType)) (letter (2) of (FoundBlockType)))\n    if <(round (#Fifteen)) = (#Fifteen)> then\n        set [foundblockmaintype v] to (#Fifteen)\n        set [foundblocksubtype v] to (join (letter (3) of (FoundBlockType)) (letter (4) of (FoundBlockType)))\n    else\n        set [foundblockmaintype v] to (letter (1) of (FoundBlockType))\n        set [foundblocksubtype v] to (join (letter (2) of (FoundBlockType)) (letter (3) of (FoundBlockType)))\n    end\n    if <<(type) = [Semi]> or <(type) = [SemiX]>> then\n        if <not <<<<(FoundBlockSubtype) = [a]> or <(FoundBlockSubtype) = [c]>> or <<(FoundBlockSubtype) = [d]> or <(FoundBlockSubtype) = [j]>>> or <<<(FoundBlockSubtype) = [k]> or <(FoundBlockSubtype) = [n]>> or <<(FoundBlockSubtype) = [o]> or <(FoundBlockSubtype) = [p]>>>>> then\n            set [foundblocktype v] to [i]\n            stop [this script v]\n        end\n        set [collidingblocktype v] to [x]\n        stop [this script v]\n    end\n    if <<(FoundBlockMainType) = [c]> or <(FoundBlockType) = [ds]>> then\n        set [collidingblocktype v] to [x]\n        stop [this script v]\n    end\n    if <((FoundBlockMainType) mod (3)) = [2]> then\n        if <<(FoundBlockSubtype) = [d]> or <(FoundBlockSubtype) = [aq]>> then\n            set [collidingblocktype v] to [TR]\n        end\n        if <<(FoundBlockSubtype) = [f]> or <<(FoundBlockSubtype) = [ae]> or <(FoundBlockSubtype) = [ak]>>> then\n            set [collidingblocktype v] to [BR]\n        end\n        if <<(FoundBlockSubtype) = [h]> or <<(FoundBlockSubtype) = [ai]> or <(FoundBlockSubtype) = [al]>>> then\n            set [collidingblocktype v] to [BL]\n        end\n        if <<(FoundBlockSubtype) = [j]> or <(FoundBlockSubtype) = [ar]>> then\n            set [collidingblocktype v] to [TL]\n        end\n    else\n        if <((FoundBlockMainType) mod (3)) = [0]> then\n            if <<(FoundBlockSubtype) = [q]> or <(FoundBlockSubtype) = [am]>> then\n                set [collidingblocktype v] to [TR1]\n            end\n            if <(FoundBlockSubtype) = [r]> then\n                set [collidingblocktype v] to [TR2]\n            end\n            if <<(FoundBlockSubtype) = [s]> or <(FoundBlockSubtype) = [an]>> then\n                set [collidingblocktype v] to [TL1]\n            end\n            if <(FoundBlockSubtype) = [t]> then\n                set [collidingblocktype v] to [TL2]\n            end\n            if <(FoundBlockSubtype) = [v]> then\n                set [collidingblocktype v] to [BR1]\n            end\n            if <<(FoundBlockSubtype) = [w]> or <(FoundBlockSubtype) = [ao]>> then\n                set [collidingblocktype v] to [BR2]\n            end\n            if <(FoundBlockSubtype) = [x]> then\n                set [collidingblocktype v] to [BL1]\n            end\n            if <<(FoundBlockSubtype) = [y]> or <(FoundBlockSubtype) = [ap]>> then\n                set [collidingblocktype v] to [BL2]\n            end\n            if <(FoundBlockSubtype) = [u]> then\n                set [collidingblocktype v] to [T]\n            end\n            if <(FoundBlockSubtype) = [z]> then\n                set [collidingblocktype v] to [B]\n            end\n        else\n            set [collidingblocktype v] to [x]\n        end\n    end\nend\n\ndefine ScanAllEntities\nif <(AlternateLoading) = [1]> then\n    IsPosOnAlt\n    set [itemno. v] to ((((round ((#Cus3) / (32))) - (1)) * (WorldHeight)) + (round ((#Cus4) / (32))))\n    set [#cus3 v] to (((3) - <(((MapX) mod (320)) - (16)) = [0]>) * (10))\n    set [#cus4 v] to [20]\nelse\n    set [itemno. v] to ((((([floor v] of ((MapX) / (32)) ) + (-12)) * (WorldHeight)) + (([floor v] of ((MapY) / (32)) ) + (-8))) + (1))\n    set [#cus3 v] to ((23) + <not <((MapX) mod (32)) = [0]>>)\n    set [#cus4 v] to ((16) + <not <((MapY) mod (32)) = [0]>>)\nend\nrepeat (#Cus3)\n    repeat (#Cus4)\n        if <not <<(ItemNo.) > (length of [entity list type v])> or <<(item (ItemNo.) of [entity list type v]) = [i]> or <((ItemNo.) mod (WorldHeight)) > (WorldHeight)>>>> then\n            if <(ItemNo.) > [0]> then\n                if <<((ItemNo.) mod (WorldHeight)) > ((AreaStartHeight) - (1))> and <((ItemNo.) mod (WorldHeight)) < ((AreaHeight) + ((AreaStartHeight) + (1)))>> then\n                    add (item (ItemNo.) of [entity list type v]) to [potentialentityspawn v]\n                    replace item (ItemNo.) of [entity list type v] with [i]\n                end\n            end\n        end\n        change [itemno. v] by (1)\n    end\n    change [itemno. v] by (WorldHeight)\n    change [itemno. v] by ((#Cus4) * (-1))\nend\n\ndefine CollideWithThis (direction) (type)\nif <not <(FoundBlockType) = [i]>> then\n    if <<([abs v] of ((X) - ((BlockScanX) * (32))) ) < ((HitboxWidth) + ((<<<(FoundBlockSubtype) = [s]> or <<(FoundBlockSubtype) = [ez]> or <(FoundBlockSubtype) = [fa]>>> or <<(FoundBlockSubtype) = [bp]> or <(FoundBlockSubtype) = [br]>>> * (32)) + (<(FoundBlockSubtype) = [bf]> * (12))))> and <<((Y) - ((BlockScanY) * (32))) < [28]> and <((Y) - ((BlockScanY) * (32))) > ((HitboxHeight) * (-1))>>> then\n        set [#fifteen v] to <<<<(FoundBlockSubtype) = [r]> or <<(FoundBlockSubtype) = [al]> or <(FoundBlockSubtype) = [ar]>>> or <<<<(FoundBlockSubtype) = [s]> or <<(FoundBlockSubtype) = [ez]> or <(FoundBlockSubtype) = [fa]>>> or <<(FoundBlockSubtype) = [bp]> or <(FoundBlockSubtype) = [br]>>> or <(FoundBlockSubtype) = [bf]>>> and <(FoundBlockType) = [Unique]>>\n        if <(direction) = [V]> then\n            if <(FoundBlockType) = [u]> then\n                if <<<(item (#One) of [blcoga v]) = [%]> and <(PreviousYPosition) < (((BlockScanY) * (32)) - ((HitboxHeight) - (1)))>> or <<(item (#One) of [blcoga v]) = [$]> and <(PreviousYPosition) > (((BlockScanY) * (32)) + (27))>>> then\n                    if <(#Twelve) = [NoColl]> then\n                        VerticalCollision (type) [x]\n                    else\n                        VerticalCollision (type) []\n                    end\n                end\n            else\n                if <(#Twelve) = [NoColl]> then\n                    VerticalCollision (type) [x]\n                else\n                    VerticalCollision (type) []\n                end\n            end\n        end\n        if <(direction) = [H]> then\n            if <(FoundBlockType) = [u]> then\n                if <<<(item (#One) of [blcoga v]) = ["]> and <(PreviousXPosition) < (((BlockScanX) * (32)) - ((HitboxWidth) - (1)))>> or <<(item (#One) of [blcoga v]) = [£]> and <(PreviousXPosition) > (((BlockScanX) * (32)) + ((HitboxWidth) - (1)))>>> then\n                    HorizontalCollision (type)\n                end\n            else\n                if <(#Fifteen) = [0]> then\n                    HorizontalCollision (type)\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [entityupdate v]\nif <[1] = [1]> then\n    delete this clone\nend\nif <(Edit/PlayMode) = [1]> then\n    if <(MoveUseAbility) = [0]> then\n        set [spacepause v] to [0]\n    end\n    if <(MoveUp) = [0]> then\n        set [jumppause v] to [0]\n    end\n    if <<not <(Holding) = [0]>> and <<<(MoveUseAbility) = [0]> and <(AllowMovement) = [1]>> or <<<<(HoldingState) > [116]> and <not < (Holding) contains [Ice]?>>> or <(Dead) = [1]>> or <<(Crouching) = [1]> and <(Invincible) < [0.9]>>>>> then\n        set [#one v] to ((PlayerX) + (((PlayerDirection) / (12)) + (PlayerXVelocity)))\n        if < (Holding) contains [Ice]?> then\n            set [#two v] to (HoldingBonus)\n            set [#three v] to (join (letter (4) of (Holding)) (letter (5) of (Holding)))\n        else\n            set [#two v] to [0]\n            if <(Holding) = [ea]> then\n                set [#two v] to [&]\n            end\n            set [#three v] to (Holding)\n            set [invincible v] to [0.01]\n        end\n        CreateEntity (#One) (PlayerY) (PlayerDirection) (#Three) (#Two) (HoldingState) ((32) * ((PlayerDirection) / (90))) [4]\n        start sound [Kick v]\n        set [holding v] to [0]\n        set [kicking v] to [8]\n        set [spacepause v] to [1]\n    end\n    delete all of [renderinbackgroundentities v]\n    if <not <(length of [deleteentitylist v]) = [0]>> then\n        DeleteEntities\n    end\n    change [loadentitiesdelay v] by (-1)\n    if <([abs v] of (PlayerXVelocity) ) > [7]> then\n        change [loadentitiesdelay v] by (-3)\n    end\n    if <(LoadEntitiesDelay) < [1]> then\n        set [loadentitiesdelay v] to [8]\n        ScanAllEntities\n        ConsiderPotentialEntities\n    end\n    set [pow v] to [0]\n    ReorganiseEntityList\n    EntityMovement\nend\nbroadcast (PlayerUpdate v)\n\nwhen I receive [flagclicked v]\nswitch costume to (a1 v)\nset size to (400) %\nhide\nset rotation style [left-right v]\nset volume to (33) %\n\nwhen I receive [renderforegroundblocks v]\nif <(Edit/PlayMode) = [1]> then\n    RenderEntities []\n    if <not <(Holding) = [0]>> then\n        if < (Holding) contains [Ice]?> then\n            switch costume to (large v)\n            set [type v] to (join (letter (4) of (Holding)) (letter (5) of (Holding)))\n            set [state v] to (HoldingState)\n            set [bonus v] to (HoldingBonus)\n            set [#nine v] to (GameTimer)\n            set [gametimer v] to [0]\n            set [#cus1 v] to (22Mod2+1)\n            set [#cus2 v] to (22Mod4+1)\n            set [22mod2+1 v] to [1]\n            set [22mod4+1 v] to [1]\n            go to x: (((PlayerX) - (MapX)) + ((PlayerDirection) / (3.5))) y: (((PlayerY) - (MapY)) + (4))\n            point in direction (PlayerDirection)\n            CostumeEntity\n            set rotation style [left-right v]\n            stamp\n            set [gametimer v] to (#Nine)\n            set [22mod2+1 v] to (#Cus1)\n            set [22mod4+1 v] to (#Cus2)\n        end\n    end\nend\nbroadcast (RenderFrontItems v)\n\nwhen I receive [playerupdate v]\nif <(Edit/PlayMode) = [1]> then\n    set [type v] to [Player]\n    set [xvelocity v] to (PlayerXVelocity)\n    set [yvelocity v] to (PlayerYVelocity)\n    set [x v] to (PlayerX)\n    set [y v] to (PlayerY)\n    set [direction v] to (PlayerDirection)\n    set [onice v] to (PlayerOnIce)\n    set [movement v] to (Player Movement)\n    if <(PlayerYVelocity) = [0]> then\n        set [player springx v] to ((Player SpringX) / (1.12))\n    else\n        set [player springx v] to ((Player SpringX) / (1.08))\n    end\n    set [playerunderwater v] to [0]\n    set [entityno. v] to [0]\n    if <(AllowMovement) = [1]> then\n        PlayerMovement\n        set [#one v] to ((RenderWidth) - (18))\n        set [#cus1 v] to ((X) - (MapX))\n        if <<<not <(CameraX) > [0]>> or <(CameraX) = [6]>> or <<<<(#Cus1) < [0]> and <(LimitedCamera) = [1]>> or <<(#Cus1) > [0]> and <(LimitedCamera) = [2]>>> or <(LimitedCamera) = [3]>>> then\n            set [#one v] to [238]\n        end\n        if <<(X) > (((GoalX) * (32)) + (236))> and <(GoalArea) = (CurrentArea)>> then\n            set [x v] to (((GoalX) * (32)) + (236))\n            EdgeBounce\n        end\n        if <(X) < [20]> then\n            set [x v] to [20]\n            if <(XVelocity) < [0]> then\n                EdgeBounce\n            end\n        end\n        if <(#Cus1) < ((#One) * (-1))> then\n            set [x v] to ((MapX) - (#One))\n            if <(XVelocity) < [0]> then\n                EdgeBounce\n            end\n        end\n        if <(#Cus1) > (#One)> then\n            set [x v] to ((MapX) + (#One))\n            if <(XVelocity) > [0]> then\n                EdgeBounce\n            end\n        end\n        set [playerxvelocity v] to (XVelocity)\n        set [playeryvelocity v] to (YVelocity)\n        set [playerx v] to (X)\n        set [playery v] to (Y)\n        set [playerdirection v] to (Direction)\n        set [playeronice v] to (OnIce)\n        set [player movement v] to (Movement)\n        set [playerunderwater v] to (Underwater)\n        Interact (PlayerX) (PlayerY) [Coin]\n        if <(PlayerHeight) > [30]> then\n            Interact (PlayerX) ((PlayerY) + (24)) [Coin]\n        end\n        if <(PlayerYVelocity) = [0.5]> then\n            Interact (PreviousMusic) ((PlayerY) + (PlayerHeight)) [HitB]\n        end\n        if <(PlayerYVelocity) > [0.4]> then\n            Interact (PlayerX) ((PlayerY) + (PlayerHeight)) [Invis]\n        end\n        if <<(PlayerYVelocity) = [0]> or <<(PlayerYVelocity) > ((14.5) - (<(Powerup) = [M]> * (5)))> and <not <(PlayerYVelocity) = [20]>>>> then\n            Interact (PlayerX) ((PlayerY) + (-16)) [Feet]\n        end\n    end\nend\n\ndefine PlayerMovement\nset [movedbyenvironment v] to [0]\nset [previousxposition v] to (X)\nset [previousyposition v] to (Y)\nset [onground v] to <(YVelocity) = [0]>\nset [uplimit v] to ((Y) + (48))\nset [downlimit v] to ((Y) - (48))\nset [rightlimit v] to ((X) + (48))\nset [leftlimit v] to ((X) - (48))\nset [#one v] to ((RenderWidth) - (20.5))\nif <(CameraX) = [6]> then\n    set [#one v] to [235.5]\nend\nif <([abs v] of ((X) - (MapX)) ) > (#One)> then\n    change [rightlimit v] by (-16)\n    change [leftlimit v] by (16)\nend\nif <(Powerup) = [M]> then\n    set [hitboxheight v] to [16]\nelse\n    if <<(Powerup) = [N]> or <(Crouching) = [1]>> then\n        set [hitboxheight v] to [28]\n    else\n        set [hitboxheight v] to [48]\n    end\nend\nset [hitboxwidth v] to [24]\nif <(YVelocity) > [2]> then\n    if <(MoveUp) = [0]> then\n        set [yvelocity v] to ((YVelocity) / (1.18))\n    end\nend\nif <(Type) = [Player]> then\n    change [y v] by (Player Y Movement)\n    set [player y movement v] to [0]\nend\nchange [x v] by ((Movement) + (Player SpringX))\nset [movement v] to [0]\nset [underwater v] to <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))>\nset [skidding v] to [0]\nif <<(Powerup) = [C]> and <(Underwater) = [1]>> then\n    broadcast (Powerdown v)\nend\nif <<(Climbing) = [1]> or <<<(Underwater) = [1]> and <<(Powerup) = [O]> or <(Powerup) = [U]>>> and <not <(YVelocity) = [0]>>>> then\n    if <(YVelocity) = [0.5]> then\n        change [yvelocity v] by (-3)\n    end\n    if <<not <(Powerup) = [C]>> or <(Powerup) = [U]>> then\n        set [powerupvariable one v] to [0]\n    end\n    set [powerupvariable three v] to [0]\n    set [powerupvariable two v] to [0]\n    set [sliding v] to [0]\n    if <(Climbing) = [1]> then\n        set [throwing v] to [0]\n        change [jumppause v] by (1)\n        set [crouching v] to [0]\n        XVel [1.3]\n        set [yvelocity v] to ((YVelocity) / (1.3))\n    else\n        XVel [1.1]\n        set [yvelocity v] to ((YVelocity) / (1.1))\n    end\n    if <(XVelocity) < [0]> then\n        set [direction v] to [-90]\n    end\n    if <(XVelocity) > [0]> then\n        set [direction v] to [90]\n    end\n    if <not <<<<(Powerup) = [O]> or <(Powerup) = [U]>> and <(Underwater) = [1]>> and <(Crouching) = [1]>>> then\n        if <(MoveUp) = [1]> then\n            change [yvelocity v] by (0.5)\n        end\n        if <(MoveDown) = [1]> then\n            change [yvelocity v] by (-0.5)\n        end\n        if <(MoveRight) = [1]> then\n            change [xvelocity v] by (0.5)\n        end\n        if <(MoveLeft) = [1]> then\n            change [xvelocity v] by (-0.5)\n        end\n    end\n    if <([abs v] of (YVelocity) ) < [0.000001]> then\n        change [yvelocity v] by (0.000001)\n    end\nelse\n    if <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n        if <(Underwater) = [1]> then\n            if <(YVelocity) = [0.5]> then\n                change [yvelocity v] by (-0.39)\n            end\n            change [yvelocity v] by (-0.39)\n            if <(YVelocity) < [-2]> then\n                set [yvelocity v] to [-2]\n            end\n            if <(YVelocity) > [9.9]> then\n                set [yvelocity v] to [9.9]\n            end\n            ApproachSpeed [-3] [6]\n        else\n            change [yvelocity v] by (-0.79)\n            if <(YVelocity) < [-14]> then\n                set [yvelocity v] to [-14]\n            end\n            ApproachSpeed [-3] [9.5]\n        end\n        if <(OnIce) = [1]> then\n            if <([abs v] of (XVelocity) ) < [13]> then\n                set [xvelocity v] to ((XVelocity) * (1.05))\n            end\n            change [xvelocity v] by (((XVelocity) - (PlayerXVelocity)) / (-1.1))\n        end\n    else\n        if <(Underwater) = [1]> then\n            if <(YVelocity) = [0.5]> then\n                change [yvelocity v] by (-0.39)\n            end\n            change [yvelocity v] by (-0.39)\n            if <(YVelocity) < [-2]> then\n                set [yvelocity v] to [-2]\n            end\n            if <(YVelocity) > [9.9]> then\n                set [yvelocity v] to [9.9]\n            end\n            if <(Crouching) = [0]> then\n                if <(OnIce) = [1]> then\n                    if <<(MoveRight) = [1]> or <(MoveLeft) = [1]>> then\n                        XVel [1.072]\n                    else\n                        XVel [1.06]\n                    end\n                    if <(MoveRight) = [1]> then\n                        change [xvelocity v] by (0.1)\n                        if <(XVelocity) > [0]> then\n                            set [direction v] to [90]\n                        end\n                    end\n                    if <(MoveLeft) = [1]> then\n                        change [xvelocity v] by (-0.1)\n                        if <(XVelocity) < [0]> then\n                            set [direction v] to [-90]\n                        end\n                    end\n                else\n                    if <<(MoveRight) = [1]> or <(MoveLeft) = [1]>> then\n                        if <(MoveRun) = [1]> then\n                            if <(Powerup) = [S]> then\n                        else\n                            XVel [1.09]\n                        end\n                    else\n                        if <([abs v] of (XVelocity) ) > [3]> then\n                            XVel [1.1]\n                        else\n                            XVel [1.15]\n                        end\n                    end\n                    if <(MoveRight) = [1]> then\n                        change [xvelocity v] by (0.25)\n                        if <(XVelocity) > [0]> then\n                            set [direction v] to [90]\n                        end\n                    end\n                    if <(MoveLeft) = [1]> then\n                        change [xvelocity v] by (-0.25)\n                        if <(XVelocity) < [0]> then\n                            set [direction v] to [-90]\n                        end\n                    end\n                end\n            else\n                if <(MoveRight) = [1]> then\n                    set [direction v] to [90]\n                end\n                if <(MoveLeft) = [1]> then\n                    set [direction v] to [-90]\n                end\n                if <(YVelocity) = [-0.39]> then\n                    if <(OnIce) = [1]> then\n                        XVel [1.02]\n                    else\n                        XVel [1.06]\n                    end\n                else\n                    XVel [1.03]\n                end\n            end\n            if <([abs v] of (XVelocity) ) > [4]> then\n                if <(Powerup) = [S]> then\n                    XVel [1.05]\n                else\n                    XVel [1.1]\n                end\n            end\n        else\n            if <(GroundShaking) = [0]> then\n                if <<(Powerup) = [M]> and <not <<(YVelocity) = [0.5]> or <(YVelocity) = [0]>>>> then\n                    change [yvelocity v] by (-0.39)\n                else\n                    change [yvelocity v] by (-0.79)\n                end\n                if <(Powerup) = [M]> then\n                    if <(YVelocity) < [-7]> then\n                        set [yvelocity v] to [-7]\n                    end\n                    if <<(YVelocity) > [12.5]> and <(YVelocity) < [17]>> then\n                        set [yvelocity v] to ((YVelocity) / (1.25))\n                    end\n                else\n                    if <(YVelocity) < [-14]> then\n                        set [yvelocity v] to [-14]\n                    end\n                end\n                if <(Crouching) = [0]> then\n                    if <(OnIce) = [1]> then\n                        if <<(MoveRight) = [1]> or <(MoveLeft) = [1]>> then\n                            if <(MoveRun) = [1]> then\n                                XVel [1.02]\n                            else\n                                XVel [1.072]\n                            end\n                        else\n                            if <([abs v] of (XVelocity) ) > [3]> then\n                                XVel [1.03]\n                            else\n                                XVel [1.06]\n                            end\n                        end\n                        if <(MoveRight) = [1]> then\n                            change [xvelocity v] by (0.2)\n                            if <(XVelocity) > [0]> then\n                                set [direction v] to [90]\n                            end\n                        end\n                        if <(MoveLeft) = [1]> then\n                            change [xvelocity v] by (-0.2)\n                            if <(XVelocity) < [0]> then\n                                set [direction v] to [-90]\n                            end\n                        end\n                    else\n                        if <not <<(Powerup) = [R]> and <(PowerupVariable THREE) > [0]>>> then\n                            if <<(MoveRight) = [1]> or <(MoveLeft) = [1]>> then\n                                if <(MoveRun) = [1]> then\n                                    XVel [1.055]\n                                else\n                                    XVel [1.15]\n                                end\n                            else\n                                if <([abs v] of (XVelocity) ) > [3]> then\n                                    XVel [1.1]\n                                else\n                                    XVel [1.15]\n                                end\n                            end\n                            if <<(MoveRight) = [1]> and <(MoveLeft) = [0]>> then\n                                change [xvelocity v] by (0.5)\n                                if <(YVelocity) = [-0.79]> then\n                                    if <(XVelocity) < [0.45]> then\n                                        change [xvelocity v] by (-0.44)\n                                        set [skidding v] to [1]\n                                        set [direction v] to [90]\n                                    end\n                                end\n                                if <(XVelocity) > [0]> then\n                                    set [direction v] to [90]\n                                end\n                            end\n                            if <<(MoveLeft) = [1]> and <(MoveRight) = [0]>> then\n                                change [xvelocity v] by (-0.5)\n                                if <(YVelocity) = [-0.79]> then\n                                    if <(XVelocity) > [-0.45]> then\n                                        change [xvelocity v] by (0.44)\n                                        set [skidding v] to [1]\n                                        set [direction v] to [-90]\n                                    end\n                                end\n                                if <(XVelocity) < [0]> then\n                                    set [direction v] to [-90]\n                                end\n                            end\n                        end\n                    end\n                    if <(Skidding) = [1]> then\n                        if <not <(Powerup) = [M]>> then\n                            CreateParticle (((PreviousXPosition) + ((Direction) / (-12))) - ((XVelocity) * (2))) ((Y) - (4)) [Skid]\n                        end\n                        if <(TypesOnScreenCheck?) = [1]> then\n                            start sound [skid v]\n                        end\n                    end\n                else\n                    if <(MoveRight) = [1]> then\n                        set [direction v] to [90]\n                    end\n                    if <(MoveLeft) = [1]> then\n                        set [direction v] to [-90]\n                    end\n                    if <<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> then\n                        if <<(OnIce) = [1]> or <not <(YVelocity) = [-0.79]>>> then\n                            if <([abs v] of (XVelocity) ) > [12]> then\n                                XVel [1.02]\n                            end\n                        else\n                            XVel [1.025]\n                        end\n                    else\n                        if <(YVelocity) = [-0.79]> then\n                            if <(OnIce) = [1]> then\n                                XVel [1.02]\n                            else\n                                XVel [1.06]\n                            end\n                        else\n                            if <(YVelocity) < [1]> then\n                                XVel [1.01]\n                            else\n                                XVel [1.03]\n                            end\n                        end\n                    end\n                end\n            else\n                XVel [4]\n                change [yvelocity v] by (-0.79)\n                if <(GroundShaking) > [0.96]> then\n                    change [y v] by (-8)\n                    SimpleParticle [Koopaling]\n                    change [y v] by (8)\n                end\n            end\n        end\n    end\nend\nif <(Powerup) = [S]> then\n    if <<([abs v] of (XVelocity) ) > [7.5]> and <<(MoveRun) = [1]> and <(Holding) = [0]>>> then\n        set [powerupvariable one v] to [1]\n    else\n        if <<(MoveRun) = [0]> or <(Climbing) = [1]>> then\n            if <(PowerupVariable ONE) = [1]> then\n                set [crouching v] to [1]\n                set [hitboxheight v] to [28]\n            end\n            set [powerupvariable one v] to [0]\n        end\n    end\n    if <(PowerupVariable ONE) = [1]> then\n        set [hitboxheight v] to [28]\n    end\nend\nif <([abs v] of (XVelocity) ) > [16]> then\n    XVel [1.02]\nend\nset [#two v] to [0]\ndelete all of [nearbyentities v]\ndelete all of [nearbyuniques v]\nrepeat (length of [ent x v])\n    change [#two v] by (1)\n    if <not <[deleteentitylist v] contains (#Two)?>> then\n        set [#cus1 v] to (item (#Two) of [ent ty v])\n        if <<<(#Cus1) = [s]> or <<(#Cus1) = [ez]> or <(#Cus1) = [fa]>>> or <<(#Cus1) = [bp]> or <(#Cus1) = [br]>>> then\n            add (#Two) to [nearbyuniques v]\n        else\n            if <([abs v] of ((item (#Two) of [ent x v]) - (X)) ) < (((HitboxWidth) + (24)) + (([abs v] of (XVelocity) ) * (2)))> then\n                if < (item (#Two) of [ent bon v]) contains [\(]?> then\n                    if <not <<(Invincible) = [0.07]> or <<(Invincible) = ((0.07) + ((-1) / (30)))> or <(Invincible) = ((0.07) + ((-2) / (30)))>>>> then\n                        add (#Two) to [nearbyuniques v]\n                    end\n                else\n                    if <([abs v] of ((item (#Two) of [ent y v]) - ((Y) - (16))) ) < (((HitboxHeight) + (48)) + (([abs v] of (YVelocity) ) * (2)))> then\n                        if <[type - uniques v] contains (#Cus1)?> then\n                            add (#Two) to [nearbyuniques v]\n                        else\n                            add (#Two) to [nearbyentities v]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nset [onice v] to [0]\nset [staystill v] to [0.5]\nCollideAndMove\nif <(YVelocity) = [0]> then\n    if <(PlayerYVelocity) < [-4]> then\n        SimpleParticle [Skid]\n    end\n    set [climbing v] to [0]\nend\nif <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n    IKillEnemies\n    if <<(XVelocity) = [0]> and <not <(PlayerXVelocity) = [0]>>> then\n        Interact ((X) + (((Direction) / (90)) * (24))) ((Y) + (2)) [HitS]\n        CreateParticle ((X) + (((Direction) / (90)) * (12))) [] [Skid]\n        TurnAround\n        set [xvelocity v] to ((Direction) / (9))\n    end\nend\nif <(Powerup) = [U]> then\n    if <(Crouching) = [0]> then\n        set [onice v] to [0]\n    end\n    if <(PowerupVariable ONE) = [1]> then\n        IKillEnemies\n        Interact ((X) + (((XVelocity) * (2)) + (((Direction) / (90)) * (6)))) ((Y) + (2)) [HitS]\n        if <(XVelocity) > [0]> then\n            set [direction v] to [90]\n        end\n        if <(XVelocity) < [0]> then\n            set [direction v] to [-90]\n        end\n        if <<(XVelocity) = [0]> and <not <(PlayerXVelocity) = [0]>>> then\n            change [powerupvariable two v] by (1)\n            Interact ((X) + (((Direction) / (90)) * (24))) ((Y) + (2)) [HitS]\n            if <(PowerupVariable TWO) < [2]> then\n                set [xvelocity v] to (PlayerXVelocity)\n            else\n                CreateParticle ((X) + (((Direction) / (90)) * (12))) [] [Skid]\n            end\n        else\n            set [powerupvariable two v] to [0]\n        end\n    end\nend\nif <<<(Powerup) = [O]> and <(Holding) = [0]>> and <<(YVelocity) = [0]> and <(Crouching) = [0]>>> then\n    if <((((PlayerTimer) * (20)) - (3)) mod (4)) < [0.5]> then\n        XVel [2]\n    end\nend\nif <not <(Climbing) = [1]>> then\n    if <<<(Underwater) = [1]> and <(YVelocity) > [2]>> and <not <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))>>> then\n        set [underwater v] to [0]\n        set [yvelocity v] to [9]\n    end\n    change [sliding v] by (-0.04)\n    if <<(Sliding) < [0]> or <(XVelocity) = [0]>> then\n        set [sliding v] to [0]\n    end\n    if <<(YVelocity) = [-0.79]> or <(YVelocity) = [-0.39]>> then\n        set [#eight v] to (Y)\n        change [y v] by (((([abs v] of (XVelocity) ) + (2)) + (([abs v] of (PlayerPreviousStandingYVelocity) ) * <([abs v] of (XVelocity) ) < [6]>)) * (-1.5))\n        Collision [V] []\n        if <<(YVelocity) = [-0.79]> or <(YVelocity) = [-0.39]>> then\n            set [y v] to (#Eight)\n        else\n            XVel ((1) - (((ProposedPosition) - (#Eight)) / (-500)))\n        end\n        set [playerpreviousstandingyvelocity v] to ((PlayerPreviousStandingYVelocity) / (1.1))\n    else\n        set [playerpreviousstandingyvelocity v] to [0]\n    end\n    if <<(Powerup) = [H]> or <(GroundShaking) > [0]>> then\n        set [sliding v] to [0]\n    end\n    if <<<<(Crouching) = [1]> and <(GroundShaking) = [0]>> and <not <<(Powerup) = [H]> or <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>>>>> and <<(YVelocity) = [0]> or <<(YVelocity) = [-0.79]> or <(YVelocity) = [-0.39]>>>> then\n        set [#thirteen v] to (YVelocity)\n        set [#twelve v] to (DownLimit)\n        set [#eight v] to (Y)\n        change [y v] by (-8)\n        change [x v] by (6)\n        Collision [V] []\n        change [x v] by (-6)\n        if <(Y) < (#Eight)> then\n            if <not <<<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> and <(XVelocity) < [-3.5]>>> then\n                if <<(XVelocity) < [10]> and <not <(Y) = ((#Eight) - (8))>>> then\n                    if <(Underwater) = [1]> then\n                        change [xvelocity v] by (((Y) - (#Eight)) / (-56))\n                    else\n                        if <<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> then\n                            change [xvelocity v] by (((Y) - (#Eight)) / (-32))\n                        else\n                            change [xvelocity v] by (((Y) - (#Eight)) / (-11))\n                        end\n                    end\n                    set [sliding v] to [1]\n                end\n            end\n        else\n            set [y v] to (#Eight)\n            change [y v] by (-8)\n            change [x v] by (-6)\n            Collision [V] []\n            change [x v] by (6)\n            if <(Y) < (#Eight)> then\n                if <not <<<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> and <(XVelocity) > [3.5]>>> then\n                    if <<(XVelocity) > [-10]> and <not <(Y) = ((#Eight) - (8))>>> then\n                        if <(Underwater) = [1]> then\n                            change [xvelocity v] by (((Y) - (#Eight)) / (56))\n                        else\n                            if <<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> then\n                                change [xvelocity v] by (((Y) - (#Eight)) / (32))\n                            else\n                                change [xvelocity v] by (((Y) - (#Eight)) / (11))\n                            end\n                        end\n                        set [sliding v] to [1]\n                    end\n                end\n            end\n        end\n        set [y v] to (#Eight)\n        set [downlimit v] to (#Twelve)\n        set [yvelocity v] to (#Thirteen)\n    end\n    if <(Underwater) = [0]> then\n        if <<<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> or <(Powerup) = [M]>> then\n            if <<((Y) / (32)) < ((CurrentWaterLevel) + (0.5))> and <([abs v] of (XVelocity) ) > [5]>> then\n                if <(Powerup) = [M]> then\n                    if <((GameTimer) mod (0.04)) < [0.01]> then\n                        start sound [nsmbwiiMiniWalkOnWater v]\n                    end\n                else\n                    set [onice v] to [1]\n                end\n                set [y v] to (((CurrentWaterLevel) + (0.5)) * (32))\n                set [yvelocity v] to [-0.79]\n            end\n        end\n    end\n    if <<<(YVelocity) = [0]> or <(YVelocity) = [-0.79]>> or <<(Underwater) = [1]> and <<(YVelocity) < [1]> and <not <(YVelocity) = [0.5]>>>>> then\n        if <(Powerup) = [C]> then\n            set [powerupvariable two v] to [0]\n        end\n        if <<(MoveUp) = [1]> and <(GroundShaking) = [0]>> then\n            if <<<(Crouching) = [1]> and <not <<<(Powerup) = [S]> or <(Powerup) = [U]>> and <(PowerupVariable ONE) = [1]>>>> and <(BlockAboveHead) = [1]>> then\n                if <(JumpPause) = [0]> then\n                    start sound [jump v]\n                    set [yvelocity v] to [6]\n                    set [jumppause v] to [1]\n                    if <([abs v] of (XVelocity) ) < [5]> then\n                        if <<(MoveRight) = [1]> or <(MoveLeft) = [1]>> then\n                            change [xvelocity v] by ((Direction) / (70))\n                        end\n                    end\n                end\n            else\n                if <(Underwater) = [1]> then\n                    if <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n                        if <(YVelocity) = [0]> then\n                            start sound [swim v]\n                            set [yvelocity v] to [8]\n                            set [crouching v] to [0]\n                            set [jumppause v] to [1]\n                        end\n                    else\n                        if <<not <<(Powerup) = [O]> or <(Powerup) = [U]>>> or <(YVelocity) = [0]>> then\n                            if <not <<(PlayerYVelocity) = [-3]> or <(PlayerYVelocity) = [0.5]>>> then\n                                start sound [swim v]\n                            end\n                            set [yvelocity v] to [5]\n                            set [jumppause v] to [1]\n                            if <not <<(Powerup) = [O]> or <(Powerup) = [U]>>> then\n                                set [crouching v] to [0]\n                            end\n                        end\n                    end\n                else\n                    set [#one v] to (([abs v] of (XVelocity) ) / (3))\n                    if <(#One) > [1.7]> then\n                        set [#one v] to [1.7]\n                    end\n                    set [jumppause v] to [1]\n                    if <(Powerup) = [M]> then\n                        start sound [nsmbwiiJumpMini v]\n                        set [yvelocity v] to (((10.5) + ((#One) / (1.6))) + (<(Powerup) = [O]> * (1.7)))\n                    else\n                        set [yvelocity v] to (((15) + (#One)) + (<(Powerup) = [O]> * (1.7)))\n                        if <(PlayerYVelocity) < [12]> then\n                            start sound [jump v]\n                        end\n                    end\n                end\n                if <<(Crouching) = [1]> and <not <<<(Powerup) = [S]> or <(Powerup) = [U]>> and <(PowerupVariable ONE) = [1]>>>> then\n                    if <([abs v] of (XVelocity) ) < [6]> then\n                        if <(MoveRight) = [1]> then\n                            change [xvelocity v] by (2)\n                        end\n                        if <(MoveLeft) = [1]> then\n                            change [xvelocity v] by (-2)\n                        end\n                    end\n                end\n            end\n        else\n            if <<<<(YVelocity) = [0]> or <(YVelocity) = [-0.79]>> or <(YVelocity) = [-0.39]>> and <(Holding) = [0]>> then\n                if <<(MoveDown) = [1]> and <(GroundShaking) = [0]>> then\n                    set [crouching v] to [1]\n                    if <not <(Powerup) = [M]>> then\n                        set [hitboxheight v] to [28]\n                    end\n                end\n            end\n        end\n    end\n    if <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n        set [crouching v] to [0]\n        set [sliding v] to [0]\n    end\n    if <(Crouching) = [0]> then\n        if <(Powerup) = [U]> then\n            set [powerupvariable one v] to [0]\n        end\n        Powerups\n    end\n    if <(Crouching) = [1]> then\n        if <(Powerup) = [U]> then\n            if <([abs v] of (XVelocity) ) > [4]> then\n                set [powerupvariable one v] to [1]\n                set [sliding v] to [0.01]\n            end\n            if <<([abs v] of (XVelocity) ) < [0.5]> and <(Sliding) = [0]>> then\n                set [powerupvariable one v] to [0]\n            end\n        else\n            if <not <(Powerup) = [C]>> then\n                set [powerupvariable one v] to [0]\n            end\n            set [powerupvariable two v] to [0]\n        end\n        set [powerupvariable three v] to [0]\n        if <<(MoveDown) = [0]> or <<<(Powerup) = [O]> or <(Powerup) = [U]>> and <<(Underwater) = [1]> and <not <(YVelocity) = [0]>>>>> then\n            if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n                set [blockabovehead v] to [0]\n            else\n                set [hitboxheight v] to [48]\n                set [blockabovehead v] to [0]\n                set [colliding v] to [0]\n                set [#twelve v] to [NoColl]\n                change [hitboxheight v] by (2)\n                Collision [V] []\n                change [hitboxheight v] by (-2)\n                set [#twelve v] to [0]\n                if <(Colliding) = [1]> then\n                    set [blockabovehead v] to [1]\n                end\n                set [hitboxheight v] to [28]\n            end\n            if <(BlockAboveHead) = [0]> then\n                set [crouching v] to [0]\n            end\n        end\n    end\n    set [playerheight v] to (HitboxHeight)\nend\nif <<(UpLimit) < ((DownLimit) - (4))> or <<<(RightLimit) < ((LeftLimit) + ((36) - (<([abs v] of ((X) - (MapX)) ) > [235.5]> * (24))))> and <<not <(Powerup) = [N]>> or <([abs v] of ((X) - (MapX)) ) > [235.5]>>> or <(RightLimit) < ((LeftLimit) - (2))>>> then\n    set [dead v] to [1]\n    broadcast (Death v)\n    set [x v] to (PreviousXPosition)\n    set [y v] to (PreviousYPosition)\nend\nif <((Y) / (32)) < ((CurrentLavaLevel) + (0.5))> then\n    set [dead v] to [1]\n    broadcast (Death v)\nend\nif <<(PreviousYPosition) < (Y)> and <(YVelocity) = [0]>> then\n    if <<([abs v] of (XVelocity) ) > [4]> or <not <<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>>>> then\n        XVel ((1) + ([abs v] of (((Y) - (PreviousYPosition)) / ((((OnIce) * (3.8)) + (1)) * (60))) ))\n    end\nend\nif <<(Y) < (PreviousYPosition)> and <not <(YVelocity) = [0]>>> then\n    if <<(Powerup) = [U]> and <(PowerupVariable ONE) = [1]>> then\n        change [xvelocity v] by (((Direction) / (360)) / (6))\n    end\nend\n\ndefine HorizontalCollision (type)\nset [#cus1 v] to ((BlockScanX) * (32))\nset [#cus2 v] to ((BlockScanY) * (32))\nset [colliding v] to [0]\nif <not <<((Y) - (#Cus2)) < [28]> and <((Y) - (#Cus2)) > ((HitboxHeight) * (-1))>>> then\n    stop [this script v]\nend\nif <not <<(type) = [Semi]> or <<(FoundBlockSubtype) = [es]> or <(FoundBlockSubtype) = [et]>>>> then\n    if <<(Type) = [ac]> and <(State) = [-1]>> then\n        set [#seven v] to (XVelocity)\n        set [#nine v] to (BlockScanX)\n        set [#ten v] to (BlockScanY)\n        change [blockscany v] by (-1)\n        SimpleBlockScan []\n        set [blockscanx v] to (#Nine)\n        set [blockscany v] to (#Ten)\n        if <(FoundBlockType) = [i]> then\n            set [#three v] to (Y)\n            set [#four v] to (YVelocity)\n            VerticalCollision (type) []\n            if <([abs v] of ((#Three) - (ProposedPosition)) ) < (([abs v] of (XVelocity) ) + (8))> then\n                set [xvelocity v] to (#Seven)\n                stop [this script v]\n            end\n            set [y v] to (#Three)\n            set [yvelocity v] to (#Four)\n            set [downlimit v] to ((UpLimit) + (-32))\n        end\n    else\n        if <<<((YVelocity) mod (-0.79)) = [0]> or <(YVelocity) = [-0.39]>> or <<((YVelocity) mod (-0.69)) = [0]> or <(YVelocity) = [-0.31]>>> then\n            if <<<not <(Type) = [ec]>> or <(FoundBlockType) = [Unique]>> and <<(YVelocity) > [-4]> and <not <(YVelocity) > [0]>>>> then\n                set [#seven v] to (XVelocity)\n                if <<<<(YVelocity) = [0]> or <<(YVelocity) = [-0.79]> or <(YVelocity) = [-0.39]>>> and <(FoundBlockType) = [Unique]>> or <not <(FoundBlockType) = [Unique]>>> then\n                    set [#nine v] to (BlockScanX)\n                    set [#ten v] to (BlockScanY)\n                    change [blockscany v] by (1)\n                    SimpleBlockScan []\n                    if <<<(HitboxHeight) > [30]> and <<((Y) mod (32)) > [12]> and <((Y) mod (32)) < [28]>>> and <(FoundBlockType) = [i]>> then\n                        change [blockscany v] by (1)\n                        SimpleBlockScan []\n                    end\n                    set [blockscanx v] to (#Nine)\n                    set [blockscany v] to (#Ten)\n                    if <<(FoundBlockType) = [i]> or <<(HitboxHeight) < [20]> and <<((Y) mod (32)) > [20]> or <((Y) mod (32)) < [12]>>>> then\n                        set [#three v] to (Y)\n                        set [#four v] to (YVelocity)\n                        VerticalCollision (type) []\n                        if <<([abs v] of ((#Three) - (ProposedPosition)) ) < (([abs v] of (XVelocity) ) + (8))> and <not <(#Cus2) > ((Y) + ((16) - (<(HitboxHeight) < [20]> * (4))))>>> then\n                            set [xvelocity v] to (#Seven)\n                            stop [this script v]\n                        end\n                        set [y v] to (#Three)\n                        set [yvelocity v] to (#Four)\n                    end\n                end\n            end\n        end\n    end\n    if <(CollidingBlockType) = [x]> then\n        if <(PreviousXPosition) > (#Cus1)> then\n            set [proposedposition v] to ((#Cus1) + (HitboxWidth))\n            if <(ProposedPosition) > (X)> then\n                set [x v] to (ProposedPosition)\n                set [leftlimit v] to (ProposedPosition)\n                MeltFrozCoin\n                if <(XVelocity) < [0.5]> then\n                    XVel0\n                end\n                if <(Type) = [Player]> then\n                    if <not <<(FoundBlockType) = [Unique]> and <(FoundBlockSubtype) = [v]>>> then\n                        set [player springx v] to [0]\n                    end\n                end\n            end\n        else\n            set [proposedposition v] to ((#Cus1) - (HitboxWidth))\n            if <(ProposedPosition) < (X)> then\n                set [x v] to (ProposedPosition)\n                set [rightlimit v] to (ProposedPosition)\n                MeltFrozCoin\n                if <(XVelocity) > [-0.5]> then\n                    XVel0\n                end\n                if <(Type) = [Player]> then\n                    if <not <<(FoundBlockType) = [Unique]> and <(FoundBlockSubtype) = [v]>>> then\n                        set [player springx v] to [0]\n                    end\n                end\n            end\n        end\n    else\n        VerticalCollision (type) [x]\n        if <(Colliding) = [1]> then\n            set [#five v] to (X)\n            set [#six v] to [0]\n            repeat until <(Colliding) = [0]>\n                change [#six v] by (1)\n                set [x v] to ((#Five) + (#Six))\n                VerticalCollision (type) [x]\n                set [x v] to ((#Five) + (#Six))\n                if <(Colliding) = [1]> then\n                    set [x v] to ((#Five) - (#Six))\n                    VerticalCollision (type) [x]\n                    set [x v] to ((#Five) - (#Six))\n                end\n                if <(#Six) > ((([abs v] of (XVelocity) ) + (8)) * (1.5))> then\n                    set [x v] to (#Five)\n                    stop [this script v]\n                end\n            end\n            if <(Type) = [ec]> then\n                set [xvelocity v] to [0]\n                set [yvelocity v] to [-0.0001]\n            else\n                set [x v] to ((round ((X) / (2))) * (2))\n                if <<((Y) mod (1)) = [0]> or <(YVelocity) > [8]>> then\n                    XVel0\n                end\n            end\n        end\n    end\nend\n\ndefine ConsiderPotentialEntities\nset [#four v] to [0]\nrepeat (length of [potentialentityspawn v])\n    change [#four v] by (1)\n    set [#twelve v] to (item (#Four) of [potentialentityspawn v])\n    ExtractFrom [2]\n    set [x v] to ((#Three) * (32))\n    ExtractFrom [3]\n    set [y v] to ((#Three) * (32))\n    if <(AlternateLoading) = [1]> then\n        IsPosOnAlt\n    else\n        set [#cus2 v] to <<([abs v] of ((X) - (MapX)) ) < [386]> and <([abs v] of ((Y) - (MapY)) ) < [276]>>\n    end\n    if <(#Cus2) = [1]> then\n        add (X) to [ent x v]\n        add (Y) to [ent y v]\n        ExtractFrom [1]\n        add (#Three) to [ent ty v]\n        ExtractFrom [4]\n        add (#Three) to [ent x v v]\n        ExtractFrom [5]\n        add (#Three) to [ent y v v]\n        ExtractFrom [6]\n        add (#Three) to [ent state v]\n        ExtractFrom [7]\n        add (#Three) to [ent bon v]\n        ExtractFrom [8]\n        add (#Three) to [ent dir v]\n        add [0] to [ent mo v]\n        delete (#Four) of [potentialentityspawn v]\n        change [#four v] by (-1)\n    else\n        set [#one v] to ((((round ((X) / (32))) - (1)) * (WorldHeight)) + (round ((Y) / (32))))\n        if <<((X) / (32)) < [1]> or <((Y) / (32)) < [1]>> then\n            delete (#Four) of [potentialentityspawn v]\n            change [#four v] by (-1)\n        else\n            if <(item (#One) of [entity list type v]) = [i]> then\n                replace item (#One) of [entity list type v] with (item (#Four) of [potentialentityspawn v])\n                delete (#Four) of [potentialentityspawn v]\n                change [#four v] by (-1)\n            end\n        end\n    end\nend\n\ndefine ExtractFrom (part)\nset [#two v] to [0]\nrepeat ((part) - (1))\n    change [#two v] by (1)\n    repeat until <<(letter (#Two) of (#Twelve)) = [,]> or <(#Two) > (length of (#Twelve))>>\n        change [#two v] by (1)\n    end\nend\nchange [#two v] by (1)\nset [#three v] to []\nrepeat until <<(letter (#Two) of (#Twelve)) = [,]> or <(#Two) > (length of (#Twelve))>>\n    set [#three v] to (join (#Three) (letter (#Two) of (#Twelve)))\n    change [#two v] by (1)\nend\n\ndefine EntityMovement\ndelete all of [loadedentities v]\ndelete all of [loadedsolids v]\nset [previousframeuniques v] to (ThisFrameUniques)\nset [thisframeuniques v] to [0]\nset [entityno. v] to [0]\nset [thrownentities v] to [0]\nrepeat (length of [ent x v])\n    change [entityno. v] by (1)\n    SetVars (EntityNo.)\n    set [#sixteen v] to [0]\n    if <(AllowMovement) = [0]> then\n        if <<(TransitionType) = [Transport]> and <<(TransitionProgress) > [30]> and <(TransitionProgress) < [40]>>> then\n            set [#sixteen v] to [1]\n            if <((Y) / (32)) > ((AreaHeight) + (AreaStartHeight))> then\n                set [#sixteen v] to [2]\n            end\n        end\n    end\n    if <((Y) / (32)) < ((AreaStartHeight) - (2))> then\n        set [#sixteen v] to [1]\n    end\n    if <(AlternateLoading) = [1]> then\n        IsPosOnAlt\n    else\n        set [#cus2 v] to <<([abs v] of ((X) - (MapX)) ) < [384]> and <([abs v] of ((Y) - (MapY)) ) < [384]>>\n    end\n    if <<<(#Cus2) = [1]> or <<<<(letter (1) of (Bonus)) = [!]> and <(UnloadTracks) = [0]>> or <<(Type) = [r]> and <(State) < [330]>>> and <not <<(Type) = [ar]> and <(State) > [29]>>>>> and <(#Sixteen) = [0]>> then\n        if <<(Type) = [bo]> or <<(Type) = [bw]> or <(Type) = [cu]>>> then\n            if <(State) = [0]> then\n                FixPiranhas\n            end\n            if <<not <(Type) = [cu]>> and <<(UsingPipe) = [2]> and <<(AllowMovement) = [0]> and <(PlayerTimer) > [0.15]>>>> then\n                set [state v] to [1]\n                RealEntityMovement\n            end\n            if <([abs v] of (XVelocity) ) > [12]> then\n                add (EntityNo.) to [renderinbackgroundentities v]\n            end\n        end\n        if <(AllowMovement) = [1]> then\n            RealEntityMovement\n            if <(Frozen) = [0]> then\n                EntityInteractions <<<([abs v] of ((X) - (PlayerX)) ) < [24]> and <<((Y) - ((PlayerY) + (<<(Sliding) > [0.2]> or <<<(Powerup) = [U]> or <(Powerup) = [S]>> and <<(PowerupVariable ONE) = [1]> and <(PlayerYVelocity) = [0]>>>> * (20)))) > (((HitboxHeight) + (<(YVelocity) > [8]> * (4))) * (-1))> and <((Y) - (PlayerY)) < [-8]>>> and <<<<(PlayerYVelocity) < [11]> or <<(Y) > ((PreviousYPosition) + (9))> and <<not <(YVelocity) > [24]>> or <(YVelocity) = [x]>>>> or <<(PlayerYVelocity) = [15]> or <(PlayerYVelocity) = [19]>>> and <not <(PlayerYVelocity) = [9.9]>>>>\n            end\n        end\n        if <<[type - uniques v] contains (Type)?> or <(Frozen) = [1]>> then\n            if <[type - uniques v] contains (Type)?> then\n                add (EntityNo.) to [loadedsolids v]\n                if <not <(Type) = [c]>> then\n                    change [thisframeuniques v] by (1)\n                end\n            else\n                add (EntityNo.) to [loadedentities v]\n            end\n            Is (Type)\n            if <<(#Eleven) = [1]> or <(Frozen) = [1]>> then\n                if <(PlayerMoved) = [0]> then\n                    IsPlayerAbove\n                    if <(#Sixteen) = [1]> then\n                        set [player movement v] to ((X) - (PreviousXPosition))\n                        set [player y movement v] to (((PlayerY) - ((Y) + ((28) + (< (Bonus) contains [\)]?> * (32))))) * (-1))\n                        set [playermoved v] to [1]\n                    end\n                end\n            end\n        else\n            add (EntityNo.) to [loadedentities v]\n        end\n        replace item (EntityNo.) of [ent ty v] with (Type)\n        replace item (EntityNo.) of [ent x v] with (X)\n        replace item (EntityNo.) of [ent y v] with (Y)\n        replace item (EntityNo.) of [ent x v v] with (XVelocity)\n        replace item (EntityNo.) of [ent y v v] with (YVelocity)\n        replace item (EntityNo.) of [ent state v] with (State)\n        replace item (EntityNo.) of [ent bon v] with (Bonus)\n        replace item (EntityNo.) of [ent dir v] with (Direction)\n        replace item (EntityNo.) of [ent mo v] with (Movement)\n    else\n        if <<<(Type) = [ar]> or <<(Type) = [es]> or <(Type) = [et]>>> and <not <<<(State) = [1]> or <(State) = [0]>> or <(State) = [2]>>>> then\n            ResetItemToPosition\n        else\n            if <(Type) = [dd]> then\n                if <<(Y) < ((AreaStartHeight) * (32))> and <not <(CurrentLavaLevel) = [-8]>>> then\n                    set [y v] to ((AreaStartHeight) * (32))\n                end\n            end\n            if <not <<<<(Type) = [x]> or <(Bonus) = [Delete]>> or <<(Y) < ((AreaStartHeight) * (32))> or <(#Sixteen) = [2]>>> or <<<<<<(Type) = [ao]> or <(Type) = [ec]>> or <<(Type) = [di]> or <(Type) = [dm]>>> or <<(Type) = [bu]> or <(Type) = [dj]>>> or <<<(Type) = [at]> or <(Type) = [cv]>> or <(Type) = [ck]>>> or <<<(Type) = [bg]> or <(Type) = [cb]>> or <<(Type) = [by]> or <<(Type) = [cf]> and <(XVelocity) = [1]>>>>>>> then\n                add (join (join (join (join (Type) [,]) (join ((round (X)) / (32)) [,])) (join (join ((round (Y)) / (32)) [,]) (join (XVelocity) [,]))) (join (join (join (YVelocity) [,]) (join (State) [,])) (join (join (Bonus) [,]) (join (Direction) [,])))) to [potentialentityspawn v]\n            end\n            delete (EntityNo.) of [ent ty v]\n            delete (EntityNo.) of [ent x v]\n            delete (EntityNo.) of [ent y v]\n            delete (EntityNo.) of [ent x v v]\n            delete (EntityNo.) of [ent y v v]\n            delete (EntityNo.) of [ent state v]\n            delete (EntityNo.) of [ent bon v]\n            delete (EntityNo.) of [ent dir v]\n            delete (EntityNo.) of [ent mo v]\n            change [entityno. v] by (-1)\n        end\n    end\nend\n\ndefine RenderEntities (type)\nif <(type) = [Back]> then\n    set [#ten v] to (length of [renderinbackgroundentities v])\nelse\n    set [#ten v] to (length of [loadedentities v])\nend\nset [#sixteen v] to [0]\nrepeat (#Ten)\n    change [#sixteen v] by (1)\n    if <(type) = [Back]> then\n        set [#ten v] to (item (#Sixteen) of [renderinbackgroundentities v])\n    else\n        set [#ten v] to (item (#Sixteen) of [loadedentities v])\n    end\n    set [x v] to ((item (#Ten) of [ent x v]) - (MapX))\n    set [y v] to ((item (#Ten) of [ent y v]) - (MapY))\n    if <<<<([abs v] of (X) ) < (RenderWidth)> and <(item (#Ten) of [ent x v]) > [8]>> and <([abs v] of (Y) ) < [196]>> or <<(item (#Ten) of [ent ty v]) = [en]> or <(item (#Ten) of [ent ty v]) = [eo]>>> then\n        SetVars (#Ten)\n        change [x v] by ((MapX) * (-1))\n        change [y v] by ((MapY) * (-1))\n        set [#eight v] to [0]\n        if <(type) = [Shadow]> then\n            set [#eight v] to [1]\n        else\n            if <not <(length of [deleteentitylist v]) = [0]>> then\n                if <[deleteentitylist v] contains (#Ten)?> then\n                    set [#eight v] to [1]\n                end\n            end\n            if <(type) = []> then\n                if <[renderinbackgroundentities v] contains (#Ten)?> then\n                    set [#eight v] to [1]\n                end\n            end\n        end\n        if <(type) = [Shadow]> then\n            set [#eight v] to [0]\n            change [x v] by (8)\n            change [y v] by (-8)\n            set [brightness v] effect to (-100)\n            set [ghost v] effect to (50)\n        end\n        if <(#Eight) = [0]> then\n            switch costume to (large v)\n            go to x: (X) y: ((Y) + (4))\n            point in direction (item (#Ten) of [ent dir v])\n            set [frozen v] to < (Bonus) contains [\(]?>\n            if <(Frozen) = [1]> then\n                if <([abs v] of (direction) ) < [15]> then\n                    if <not < (Bonus) contains [!]?>> then\n                        change [x v] by ([sin v] of ((GameTimer) * ((720) * (12))) )\n                        switch costume to (large v)\n                        set x to (X)\n                    end\n                end\n                set [#nine v] to (GameTimer)\n                set [gametimer v] to [0]\n                set [#cus1 v] to (22Mod2+1)\n                set [#cus2 v] to (22Mod4+1)\n                set [22mod2+1 v] to [1]\n                set [22mod4+1 v] to [1]\n                CostumeEntity\n                set rotation style [left-right v]\n                stamp\n                if < (Bonus) contains [\)]?> then\n                    Common\n                else\n                    set x to (0)\n                    set y to (240)\n                    change y by (-30)\n                    if <touching (_edge_ v)?> then\n                        Common\n                        if <not < (Bonus) contains [\)]?>> then\n                            replace item (#Ten) of [ent bon v] with (join (item (#Ten) of [ent bon v]) [\)])\n                        end\n                    else\n                        Common\n                        switch costume to (large v)\n                        switch costume to (ice1 v)\n                    end\n                end\n                set [gametimer v] to (#Nine)\n                set [22mod2+1 v] to (#Cus1)\n                set [22mod4+1 v] to (#Cus2)\n                stamp\n            else\n                if <(Type) = [cm]> then\n                    if <not <<(type) = [Shadow]> or < (Bonus) contains [!]?>>> then\n                        set rotation style [left-right v]\n                        switch costume to (large v)\n                        change x by ((item (#Ten) of [ent x v v]) * (-8))\n                        change y by ((item (#Ten) of [ent y v v]) * (-8))\n                        set [ghost v] effect to (25)\n                        switch costume to (cm3 v)\n                        stamp\n                        clear graphic effects\n                        switch costume to (large v)\n                        go to x: (X) y: ((Y) + (4))\n                    end\n                end\n                CostumeEntity\n                stamp\n            end\n        end\n    end\nend\n\ndefine Standard (xspeed)\nset [previouslystacked v] to [0]\nif <<(YVelocity) = [x]> or <(YVelocity) = [y]>> then\n    set [previouslystacked v] to [1]\n    set [yvelocity v] to [0]\nend\nset [movedbyenvironment v] to [0]\nset [staystill v] to [0]\nset [underwater v] to <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))>\nif <(Underwater) = [0]> then\n    set [underwater v] to <((Y) / (32)) < ((CurrentLavaLevel) + (0.5))>\nend\nif <<(Type) = [ao]> or <(Type) = [bu]>> then\n    set [underwater v] to [0]\nend\nif <(Underwater) = [1]> then\n    if <(YVelocity) = [0.001]> then\n        change [yvelocity v] by (-0.5)\n    end\n    if <(YVelocity) = [0.5]> then\n        change [yvelocity v] by (-0.31)\n    end\n    change [yvelocity v] by (-0.31)\n    if <<(Frozen) = [1]> or <(Type) = [ev]>> then\n        if <(YVelocity) < [-0.9]> then\n            set [yvelocity v] to [-0.9]\n        end\n        change [yvelocity v] by (0.32)\n    end\n    if <(Type) = [be]> then\n        if <(YVelocity) < [-4]> then\n            set [yvelocity v] to [-4]\n        end\n    else\n        if <(YVelocity) < [-2]> then\n            set [yvelocity v] to [-2]\n        end\n    end\n    if <(YVelocity) > [9.9]> then\n        set [yvelocity v] to [9.9]\n    end\n    if <([abs v] of (XVelocity) ) > [4]> then\n        XVel [1.1]\n    end\nelse\n    change [yvelocity v] by (-0.69)\n    if <<(Type) = [be]> or <(Type) = [eq]>> then\n        if <(YVelocity) < [-16]> then\n            set [yvelocity v] to [-16]\n        end\n    else\n        if <(YVelocity) < [-10]> then\n            set [yvelocity v] to [-10]\n        end\n    end\nend\nif <<([abs v] of (XVelocity) ) > [3]> and <<(Frozen) = [1]> and <(Underwater) = [0]>>> then\n    if <([abs v] of (XVelocity) ) > [8]> then\n        ApproachSpeed [-24] (xspeed)\n    end\nelse\n    if <not <<<(YVelocity) = [-0.69]> or <(YVelocity) = [-0.31]>> or <(YVelocity) = ((6) - (0.69))>>> then\n        ApproachSpeed [-24] (xspeed)\n    else\n        if <<([abs v] of (XVelocity) ) > (xspeed)> and <([abs v] of (XVelocity) ) > [2]>> then\n            ApproachSpeed [-12] (xspeed)\n        else\n            ApproachSpeed [-3] (xspeed)\n        end\n    end\nend\nScanNearbyEntities\nif <(Type) = [es]> then\n    delete all of [nearbyentities v]\nend\nchange [x v] by (Movement)\nset [movement v] to [0]\nCollideAndMove\nif <([abs v] of (item (EntityNo.) of [ent x v v]) ) = [32]> then\n    if <<not <(XVelocity) = [0]>> or <(xspeed) > [6]>> then\n        set [xvelocity v] to (((Direction) / (90)) * (11.25))\n        if <(xspeed) > [6]> then\n            XVel [1.5]\n        end\n    end\n    replace item (EntityNo.) of [ent x v v] with (XVelocity)\nend\nif <<(YVelocity) = [-0.69]> or <(YVelocity) = [-0.31]>> then\n    change [y v] by (-12)\n    Collision [V] []\n    if <<(YVelocity) = [-0.69]> or <(YVelocity) = [-0.31]>> then\n        change [y v] by (12)\n    end\nend\nif <<(OnIce) = [1]> and <not <(XVelocity) = [0]>>> then\n    if <(xspeed) > [3]> then\n        if <([abs v] of (XVelocity) ) < ((xspeed) + (4))> then\n            set [xvelocity v] to ((XVelocity) * (1.05))\n        end\n    end\n    change [xvelocity v] by (((XVelocity) - (item (EntityNo.) of [ent x v v])) / (-1.1))\n    if <(xspeed) = [0]> then\n        set [xvelocity v] to ((XVelocity) * (0.98))\n    end\nend\nif <<(StayStill) = [0]> or <(xspeed) > [6]>> then\n    if <<(XVelocity) = [0]> and <not <(xspeed) = [0]>>> then\n        TurnAround\n    else\n        if <<<<(Type) = [h]> or <(Type) = [y]>> and <(State) = [0]>> or <<(Type) = [ay]> or <(Type) = [cq]>>> then\n            if <<(Frozen) = [0]> and <(X) > [20]>> then\n                if <(YVelocity) = [0]> then\n                    TurnAtEdge [-12]\n                end\n            end\n        end\n        if <<<(Type) = [ac]> or <(Type) = [ea]>> and <(State) = [-1]>> then\n            if <(YVelocity) = [0.5]> then\n                TurnAtEdge [12]\n                set [yvelocity v] to [0.5]\n            end\n        end\n    end\nelse\n    if <<not <([abs v] of (xspeed) ) > [2]>> and <([abs v] of ((item (StayStill) of [ent x v]) - (X)) ) < [8]>> then\n        set [xvelocity v] to (item (StayStill) of [ent x v v])\n        change [x v] by (((item (StayStill) of [ent x v]) - (X)) / (4))\n    end\nend\nset [#four v] to [1]\nif <<<(Type) = [bk]> or <(Type) = [be]>> or <<(Type) = [bl]> or <(Type) = [bn]>>> then\n    set [#four v] to [0]\nend\nset [#two v] to [0]\nset [#six v] to (Y)\nset [#eight v] to <<(XVelocity) = [0]> or <<[type - uniques v] contains (Type)?> or <[type - bosses v] contains (Type)?>>>\nset [#thirteen v] to (X)\nrepeat until <<not <(#Two) < (length of [nearbyentities v])>> or <<(#Four) = [0]> and <(#Eight) = [1]>>>\n    change [#two v] by (1)\n    set [#ten v] to (item (#Two) of [nearbyentities v])\n    if <(#Eight) = [0]> then\n        if <<([abs v] of ((item (#Ten) of [ent y v]) - (Y)) ) < [24]> and <([abs v] of ((item (#Ten) of [ent x v]) - (X)) ) < (HitboxWidth)>> then\n            if <(item (EntityNo.) of [ent dir v]) = (Direction)> then\n                if <([abs v] of ((item (#Ten) of [ent x v]) - (X)) ) > ((HitboxWidth) - (([abs v] of (XVelocity) ) + (2)))> then\n                    if <(X) > (item (#Ten) of [ent x v])> then\n                        set [direction v] to [90]\n                    else\n                        set [direction v] to [-90]\n                    end\n                    if <not <(item (EntityNo.) of [ent dir v]) = (Direction)>> then\n                        XVel [-1]\n                    end\n                    change [x v] by (XVelocity)\n                    set [#eight v] to [1]\n                end\n            end\n        end\n    end\n    if <<(#Four) = [1]> and <not <(YVelocity) > [0]>>> then\n        if <<([abs v] of ((item (#Ten) of [ent x v]) - (X)) ) < [20]> and <([abs v] of ((item (#Ten) of [ent y v]) - ((Y) - (32))) ) < [24]>> then\n            if <((item (#Ten) of [ent y v]) + (32)) > ((Y) - ((2) + ((PreviouslyStacked) * (16))))> then\n                set [y v] to ((item (#Ten) of [ent y v]) + (32))\n                if <<[type - uniques v] contains (item (#Ten) of [ent ty v])?> and <(HitboxWidth) < [25]>> then\n                    change [y v] by (-4)\n                end\n                if <([abs v] of (((item (#Ten) of [ent x v]) - (item (#Ten) of [ent x v v])) - ((X) - (XVelocity))) ) < ((4) + (<(xspeed) = [0]> * (16)))> then\n                    if <(item (EntityNo.) of [ent dir v]) = (Direction)> then\n                        if <(xspeed) = [0]> then\n                            set [xvelocity v] to [0]\n                            set [#one v] to [1]\n                        else\n                            set [#one v] to [2]\n                        end\n                        change [x v] by (((item (#Ten) of [ent x v]) - (X)) / (#One))\n                        if <not <(xspeed) = [0]>> then\n                            if <(item (#Ten) of [ent dir v]) > [0]> then\n                                set [direction v] to [90]\n                            else\n                                set [direction v] to [-90]\n                            end\n                        end\n                    end\n                end\n                set [colliding v] to [0]\n                if <<(Y) > ((PreviousYPosition) + (28))> or <<([abs v] of ((X) - (#Thirteen)) ) > [4]> or <(Y) < (PreviousYPosition)>>> then\n                    set [#twelve v] to [NoColl]\n                    Collision [V] []\n                    set [#twelve v] to [0]\n                end\n                if <(Colliding) = [0]> then\n                    if <[type - uniques v] contains (item (#Ten) of [ent ty v])?> then\n                        set [xvelocity v] to [0]\n                        set [yvelocity v] to [y]\n                        if <<[type - bosses v] contains (Type)?> and <<not <(Type) = [eq]>> or <not <(item (#Ten) of [ent ty v]) = [m]>>>> then\n                            set [yvelocity v] to [0]\n                        end\n                    else\n                        set [xvelocity v] to (item (#Ten) of [ent x v v])\n                        set [yvelocity v] to [x]\n                    end\n                else\n                    set [y v] to (#Six)\n                    set [x v] to (#Thirteen)\n                end\n                set [#four v] to [0]\n            end\n        end\n    end\nend\nif <<(RightLimit) < ((LeftLimit) + ((36) - (<(YVelocity) = [y]> * (40))))> or <(UpLimit) < ((DownLimit) - ((2) + (<<(HitboxWidth) > [25]> or <(Frozen) = [1]>> * (6))))>> then\n    if <<(Type) = [du]> and <(State) > [75]>> then\n        set [state v] to [80]\n    else\n        set [x v] to (PreviousXPosition)\n        set [y v] to (PreviousYPosition)\n        SimpleDeleteWithKey\n        DeathParticle []\n        if <(Frozen) = [1]> then\n            SimpleParticle [BIce]\n        end\n        set [y v] to [-900]\n    end\nend\nif <((Y) / (32)) < ((CurrentLavaLevel) + (0.5))> then\n    if <[type - entities v] contains (Type)?> then\n        if <(Type) = [cw]> then\n            set [yvelocity v] to [0]\n            set [y v] to (((CurrentLavaLevel) + (0.5)) * (32))\n        else\n            SimpleDeleteWithKey\n            CreateParticle [] ((Y) + (4)) [Explode]\n        end\n    end\nend\n\ndefine RealEntityMovement\nset [frozen v] to < (Bonus) contains [\(]?>\nset [onice v] to [0]\nset [previousxposition v] to (X)\nset [previousyposition v] to (Y)\nset [hitboxheight v] to [28]\nset [hitboxwidth v] to [24]\nif <(Type) = [dz]> then\n    if <(PTimer) = [0]> then\n        stop [this script v]\n    end\nend\nif <(Type) = [cy]> then\n    set [type v] to [h]\n    set [state v] to [-1]\nend\nif <(Type) = [cz]> then\n    set [type v] to [f]\n    set [state v] to [-1]\nend\nif <(Type) = [ei]> then\n    set [type v] to [a]\n    set [state v] to [-18]\nend\nif <(Type) = [ed]> then\n    set [type v] to [h]\n    set [state v] to [1]\n    if <([abs v] of (XVelocity) ) > [3]> then\n        set [state v] to [2]\n    end\nend\nif <(Type) = [dy]> then\n    set [type v] to [y]\n    set [state v] to [-1]\nend\nif <not <<(Type) = [ar]> and <(State) > [29]>>> then\n    if < (Bonus) contains [*]?> then\n        if <<(Type) = [fa]> and <(YVelocity) < [3]>> then\n            change [yvelocity v] by (0.25)\n            if <(YVelocity) < [-4.5]> then\n                set [yvelocity v] to [-4.5]\n            end\n        end\n        PlatformsOffPlatform\n        if <(YVelocity) < [-3.6]> then\n            if <([abs v] of ((round ((Y) / (32))) - (round ((Y) / (32)))) ) < ([abs v] of ((YVelocity) / (1.5)) )> then\n                BlockAt ((X) / (32)) ((Y) / (32)) [Track] [1]\n                if <not <(FoundBlockType) = [i]>> then\n                    RoundPos\n                    set [playermoved v] to [0]\n                    set [xvelocity v] to [0]\n                    set [yvelocity v] to [0]\n                    Replace [*] ofBonusWith [!]\n                    IsPlayerAbove\n                    set [#ten v] to [Tracks]\n                    TrackMovement\n                    if <(#Sixteen) = [1]> then\n                        change [player movement v] by ((X) - (PreviousXPosition))\n                        set [player y movement v] to ((Y) - (PreviousYPosition))\n                    end\n                end\n            end\n        end\n        stop [this script v]\n    end\n    if <(Type) = [r]> then\n        if <not <((State) mod (1)) = [0]>> then\n            change [state v] by (1)\n        end\n    end\n    if < (Bonus) contains [!]?> then\n        if <not <<<<<(Type) = [r]> or <(Type) = [an]>> or <<(Type) = [al]> or <<(Type) = [am]> or <(Type) = [bp]>>>> and <<(State) = [0]> or <(State) = []>>> or <<(Type) = [fa]> and <(State) < [1]>>>> then\n            if <<(State) > [330]> and <(Type) = [r]>> then\n                set [bonus v] to [i]\n            end\n            set [#ten v] to [0]\n            TrackMovement\n        end\n        if <(State) = []> then\n            set [state v] to [0]\n        end\n        if <(X) < [1]> then\n            DeleteThisEntity [] []\n        end\n        stop [this script v]\n    end\nend\nif <(Frozen) = [1]> then\n    change [thisframeuniques v] by (1)\n    if <<(Type) = [cw]> or <(Type) = [dd]>> then\n        Delete+Key+Explode\n        stop [this script v]\n    end\n    if <<<<(Type) = [bg]> or <<(Type) = [dj]> or <(Type) = [du]>>> or <<(Type) = [cb]> or <<(Type) = [az]> or <(Type) = [dn]>>>> and <not <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))>>> then\n        set [xvelocity v] to [0]\n        set [yvelocity v] to [0]\n    else\n        if < (Bonus) contains [\)]?> then\n            set [hitboxheight v] to [60]\n        end\n        set [#cus3 v] to (item (EntityNo.) of [ent x v v])\n        Standard [0]\n        if <<<(XVelocity) = [0]> and <([abs v] of (#Cus3) ) > [3]>> or <(YVelocity) = [0.5]>> then\n            if <(XVelocity) = [0]> then\n                Interact ((X) + (((Direction) / (90)) * (28))) ((Y) + (2)) [HitS]\n            end\n            SimpleParticle [BIce]\n            Delete+Key+Explode\n            start sound [ICEBREAK v]\n        end\n        IamEnvironmental\n        if <([abs v] of (XVelocity) ) > [3]> then\n            ICollectCoins\n            change [x v] by (((Direction) / (90)) * (16))\n            IKillEnemies\n            change [y v] by (12)\n            IKillEnemies\n            if < (Bonus) contains [\)]?> then\n                change [y v] by (32)\n                IKillEnemies\n                change [y v] by (-32)\n            end\n            change [y v] by (-12)\n            change [x v] by (((Direction) / (90)) * (-16))\n        end\n        InPosition\n        if <<(InPositionToPickup) = [1]> and <(Underwater) = [0]>> then\n            set [holding v] to (join [Ice] (Type))\n            set [holdingbonus v] to (Bonus)\n            set [holdingstate v] to (State)\n            DeleteThisEntity [] []\n            stop [this script v]\n        end\n    end\n    set [#one v] to [0.3]\n    if <(Underwater) = [1]> then\n        if <(Direction) > [0]> then\n            set [direction v] to [90]\n        else\n            set [direction v] to [-90]\n        end\n    end\n    if <([abs v] of (XVelocity) ) < [2]> then\n        if <(Direction) > [0]> then\n            change [direction v] by ((#One) * (-1))\n        else\n            change [direction v] by (#One)\n        end\n    end\n    if <([abs v] of (Direction) ) < [1]> then\n        if <(Direction) > [0]> then\n            set [direction v] to [90]\n        else\n            set [direction v] to [-90]\n        end\n        SimpleParticle [BIce]\n        start sound [ICEBREAK v]\n        if <<<(Type) = [bo]> or <(Type) = [bw]>> or <<<<(Type) = [bg]> or <<(Type) = [dj]> or <(Type) = [du]>>> or <(Type) = [cb]>> or <<(Type) = [az]> or <(Type) = [cu]>>>> then\n            Delete+Key+Explode\n        else\n            Replace [\(] ofBonusWith []\n            Replace [\)] ofBonusWith []\n            set [yvelocity v] to [2]\n            if <<<(Type) = [f]> or <(Type) = [h]>> or <(Type) = [ac]>> then\n                if <(State) = [2]> then\n                    set [state v] to [1]\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [a]> or <<(Type) = [ay]> or <(Type) = [cq]>>> then\n    Standard [1.5]\n    if <(State) < [0]> then\n        if <<(YVelocity) = [0]> and <(item (EntityNo.) of [ent y v v]) = [0]>> then\n            if <(State) < [-4.5]> then\n                change [state v] by (0.9)\n            else\n                if <(State) > [-2]> then\n                    set [yvelocity v] to [10.2]\n                else\n                    set [yvelocity v] to [3.2]\n                end\n                change [state v] by (1)\n            end\n            if <(State) > [-1]> then\n                set [state v] to [-18]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [z]> then\n    stop [this script v]\nend\nif <<(Type) = [af]> or <(Type) = [c]>> then\n    Standard [0]\n    change [state v] by (1)\n    if <(State) > [210]> then\n        DeleteThisEntity [] []\n    end\n    stop [this script v]\nend\nif <<(Type) = [dx]> or <<(Type) = [ex]> or <(Type) = [nx]>>> then\n    set [direction v] to ((Direction) + (0.01))\n    if < (Bonus) contains ["]?> then\n        set [xvelocity v] to [-1.5]\n    else\n        set [xvelocity v] to [1.5]\n    end\n    set [yvelocity v] to (([sin v] of ((Direction) * (360)) ) * (1.5))\n    change [x v] by (XVelocity)\n    change [y v] by (YVelocity)\n    stop [this script v]\nend\nif <<<<(Type) = [b]> or <(Type) = [bv]>> or <<(Type) = [bj]> or <(Type) = [bt]>>> or <<<<<(Type) = [ap]> or <(Type) = [db]>> or <(Type) = [ch]>> or <<(Type) = [bq]> or <(Type) = [eb]>>> or <<<(Type) = [av]> or <(Type) = [da]>> or <<(Type) = [bm]> or <(Type) = [dr]>>>>> then\n    if <(Type) = [dr]> then\n        set [hitboxheight v] to [16]\n    end\n    if <(State) < [-1]> then\n        add (EntityNo.) to [renderinbackgroundentities v]\n        change [state v] by ((1) / (13))\n        if <(State) > [-1]> then\n            set [state v] to [0]\n        end\n        change [y v] by (-1.5)\n        stop [this script v]\n    else\n        if <(State) < [0]> then\n            add (EntityNo.) to [renderinbackgroundentities v]\n            change [state v] by ((1) / (13))\n            if <(State) > [0]> then\n                set [state v] to [0]\n            end\n            change [y v] by (1.5)\n            stop [this script v]\n        else\n            if <<<<(Type) = [ap]> or <(Type) = [eb]>> or <<(Type) = [da]> or <(Type) = [db]>>> or <<(Type) = [bq]> or <(Type) = [bt]>>> then\n                Standard [0]\n                if <<<(YVelocity) = [0]> or <(YVelocity) = [x]>> and <(Type) = [db]>> then\n                    set [yvelocity v] to [5]\n                end\n                if <(Type) = [bq]> then\n                    if <(Underwater) = [1]> then\n                        Delete+Key+Explode\n                    end\n                end\n            else\n                if <(Type) = [bj]> then\n                    SlowTurning [15]\n                    Standard ([abs v] of (([sin v] of ((State) - (90)) ) * (3)) )\n                    if <(YVelocity) = [0]> then\n                        BlockAt (((X) + ((Direction) / (2.7))) / (32)) ((Y) / (32)) [Block] []\n                        if <not <(FoundBlockType) = [i]>> then\n                            set [yvelocity v] to [7.5]\n                            BlockAt (((X) + ((Direction) / (2.7))) / (32)) (((Y) + (32)) / (32)) [Block] []\n                            if <not <(FoundBlockType) = [i]>> then\n                                set [yvelocity v] to [11]\n                            end\n                        end\n                    end\n                    if <(YVelocity) = [0]> then\n                        if <(PlayerY) > ((Y) + (28))> then\n                            set [yvelocity v] to [7.5]\n                        end\n                    end\n                else\n                    Standard [1.5]\n                    if <<(Type) = [av]> or <<(Type) = [bm]> or <(Type) = [ch]>>> then\n                        if <(YVelocity) = [0]> then\n                            if <(Underwater) = [1]> then\n                                set [yvelocity v] to [8]\n                            else\n                                set [yvelocity v] to [10]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [f]> or <(Type) = [h]>> then\n    if <(State) < [0]> then\n        if <(Type) = [h]> then\n            change [state v] by (2)\n            if <not <(State) < [0]>> then\n                set [state v] to [-360]\n            end\n            set [yvelocity v] to ((([cos v] of (State) ) * (2)) + (0.69))\n            Standard [0]\n        else\n            Standard [1.5]\n            if <<(YVelocity) = [0]> and <(item (EntityNo.) of [ent y v v]) = [0]>> then\n                set [yvelocity v] to [10.5]\n            end\n        end\n    else\n        if <(State) = [0]> then\n            Standard [1.5]\n        else\n            if <(State) = [1]> then\n                Standard [0]\n            else\n                Standard [7.5]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [t]> or <<(Type) = [ae]> or <(Type) = [v]>>> then\n    set [hitboxwidth v] to [28]\n    Standard [0]\n    stop [this script v]\nend\nIs (Type)\nif <(#Eleven) = [1]> then\n    set [hitboxwidth v] to [28]\n    if <(Type) = [m]> then\n        if <(YVelocity) < [0]> then\n            EntInt (X) ((Y) - (32)) [PSwitch]\n        end\n    end\n    if <(Type) = [bz]> then\n        if <<<(YVelocity) = [0]> and <(State) < [-2]>> or <<(XVelocity) = [0]> and <(Movement) = [Die]>>> then\n            broadcast (POW v)\n            SimpleParticle [Goop]\n            DeleteThisEntity [] []\n            stop [this script v]\n        end\n    end\n    set [#cus3 v] to (item (EntityNo.) of [ent x v v])\n    Standard [0]\n    if <<<((Y) - (MapY)) < [-192]> and <(Y) > (((AreaStartHeight) * (32)) + (-32))>> and <<(YVelocity) > [-4]> and <(YVelocity) < [0]>>> then\n        change [y v] by ((YVelocity) * (-1))\n        if <(YVelocity) < [0]> then\n            set [yvelocity v] to [0.001]\n        end\n    end\n    if <(Type) = [bz]> then\n        if <<(XVelocity) = [0]> and <([abs v] of (#Cus3) ) > [2]>> then\n            set [movement v] to [Die]\n        end\n        set [state v] to (item (EntityNo.) of [ent y v v])\n    end\n    stop [this script v]\nend\nif <<(Type) = [p]> or <<(Type) = [y]> or <(Type) = [ey]>>> then\n    if <(State) < [0]> then\n        change [state v] by (2)\n        if <not <(State) < [0]>> then\n            set [state v] to [-360]\n        end\n        set [yvelocity v] to ((([cos v] of (State) ) * (2)) + (0.69))\n        Standard [0]\n    else\n        if <(State) = [0]> then\n            Standard [1.5]\n        else\n            Standard [0]\n        end\n    end\n    if <(Type) = [ey]> then\n        if <(State) = [0]> then\n            if <((GameTimer) mod (0.8)) > [0.78]> then\n                TurnToPlayer\n            end\n        else\n            if <([abs v] of (XVelocity) ) > [1.5]> then\n                ICollectCoins\n                IKillEnemies\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [r]> then\n    if < (Bonus) contains [*]?> then\n        PlatformsOffPlatform\n    else\n        if <(State) = [0]> then\n            set [direction v] to [90]\n            set [state v] to [1]\n        end\n        if <not <((State) mod (1)) = [0]>> then\n            if <(State) > [330]> then\n                if <(State) < [331]> then\n                    set [yvelocity v] to [0]\n                end\n                if <(YVelocity) < [6]> then\n                    change [yvelocity v] by (-0.5)\n                end\n                change [y v] by (YVelocity)\n                set [xvelocity v] to [0]\n            else\n                TrackMovement\n                if <not <(FoundBlockType) = [i]>> then\n                    set [bonus v] to (join (Bonus) [!])\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<<(Type) = [s]> or <(Type) = [bp]>> or <<(Type) = [ez]> or <(Type) = [fa]>>> then\n    if <(State) < [1]> then\n        set [yvelocity v] to [0.39]\n        if <(Type) = [bp]> then\n        change [state v] by (-2)\n        if <(State) < [-359]> then\n            set [state v] to [0]\n        end\n    else\n        set [bonus v] to (join (Bonus) [*])\n    end\n    PlatformsOffPlatform\n    stop [this script v]\nend\nif <(Type) = [w]> then\n    if <(State) < [75]> then\n        Standard [1.5]\n    else\n        Standard [0]\n        TurnToPlayer\n    end\n    stop [this script v]\nend\nif <(Type) = [x]> then\n    if <(State) = [0]> then\n        change [y v] by (YVelocity)\n        change [yvelocity v] by (-0.89)\n        change [x v] by (XVelocity)\n        set [xvelocity v] to ((XVelocity) / (1.01))\n        if <(YVelocity) < [1]> then\n            ScanNearbyEntities\n            set [#eight v] to [0]\n            repeat (length of [nearbyentities v])\n                change [#eight v] by (1)\n                if <<([abs v] of ((X) - (item (item (#Eight) of [nearbyentities v]) of [ent x v])) ) < [16]> and <([abs v] of (((Y) - (24)) - (item (item (#Eight) of [nearbyentities v]) of [ent y v])) ) < [8]>> then\n                    set [state v] to [1]\n                    set [x v] to (item (item (#Eight) of [nearbyentities v]) of [ent x v])\n                    set [y v] to ((item (item (#Eight) of [nearbyentities v]) of [ent y v]) + (32))\n                    set [xvelocity v] to (item (item (#Eight) of [nearbyentities v]) of [ent x v v])\n                    set [yvelocity v] to (item (item (#Eight) of [nearbyentities v]) of [ent y v v])\n                end\n            end\n        end\n    else\n        if <(State) > [15]> then\n            if <(Direction) > [0]> then\n                set [direction v] to [90]\n            else\n                set [direction v] to [-90]\n            end\n            ScanNearbyEntities\n            set [xvelocity v] to ((Direction) / (15))\n            Collision [H] []\n            change [x v] by (XVelocity)\n            if <(XVelocity) = [0]> then\n                set [x v] to (PreviousXPosition)\n                Interact ((round ((X) / (32))) * (32)) ((Y) + (2)) [HitSpike]\n                Delete+Key+Explode\n            end\n        else\n            set [yvelocity v] to ((YVelocity) / (1.05))\n            set [xvelocity v] to ((XVelocity) / (1.05))\n            change [y v] by (YVelocity)\n            change [x v] by (XVelocity)\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [aa]> or <(Type) = [cn]>> then\n    if <<([abs v] of ((X) - (PlayerX)) ) < [22.5]> and <([abs v] of (((Y) + (28)) - (PlayerY)) ) < [2]>> then\n        change [state v] by (6)\n        set [#three v] to (State)\n        if <(#Three) > [180]> then\n            set [#three v] to [180]\n        end\n        set [yvelocity v] to (([sin v] of ((#Three) - (90)) ) * (1.5))\n        if <(Type) = [cn]> then\n            if <(State) > [230]> then\n                set [yvelocity v] to [0]\n            end\n        end\n        if <(#Three) < [90]> then\n            set [yvelocity v] to ((YVelocity) * (2))\n        end\n    else\n        set [state v] to [0]\n        set [yvelocity v] to ((YVelocity) / (1.5))\n    end\n    change [y v] by (YVelocity)\n    if <(Type) = [cn]> then\n        set [xvelocity v] to ((Direction) / (30))\n    else\n        set [xvelocity v] to ((Direction) / (60))\n    end\n    change [x v] by (XVelocity)\n    stop [this script v]\nend\nif <<(Type) = [ac]> or <(Type) = [ea]>> then\n    if <(State) = [-1]> then\n        set [yvelocity v] to [6]\n        Standard [1.5]\n        if <not <(YVelocity) = [0.5]>> then\n            set [yvelocity v] to [0.1]\n            set [state v] to [3]\n            set [xvelocity v] to [0.01]\n            TurnToPlayer\n        end\n    else\n        if <(State) = [0]> then\n            Standard [1.5]\n        else\n            if <<(State) = [1]> or <(State) = [3]>> then\n                Standard [0]\n            else\n                Standard [7.5]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [al]> then\n    if <(State) = [0]> then\n        set [direction v] to [90]\n        set [state v] to [1]\n    end\n    if <not <((State) mod (1)) = [0]>> then\n        TrackMovement\n        if <not <(FoundBlockType) = [i]>> then\n            set [bonus v] to (join (Bonus) [!])\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [am]> then\n    if <((State) mod (1)) > [0.7]> then\n        if <(State) < [0]> then\n            PlatformsOffPlatform\n        else\n            set [state v] to ((round (((State) - (1)) * (10))) / (10))\n            change [x v] by (XVelocity)\n            change [y v] by (YVelocity)\n            if <(State) < [24]> then\n                set [xvelocity v] to [0]\n                set [yvelocity v] to [0]\n            end\n        end\n    else\n        if <(State) = [0]> then\n            set [direction v] to [90]\n            set [state v] to [1]\n        end\n        if <not <((State) mod (1)) = [0]>> then\n            TrackMovement\n            if <not <(FoundBlockType) = [i]>> then\n                set [bonus v] to (join (Bonus) [!])\n            else\n                set [state v] to [47]\n                set [state v] to ((round (((State) - (0.2)) * (10))) / (10))\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [an]> then\n    if <((State) mod (1)) > [0.7]> then\n        if <(State) < [0]> then\n            PlatformsOffPlatform\n        else\n            if <(State) < [24]> then\n                set [state v] to ((round (((State) - (1)) * (10))) / (10))\n                set [xvelocity v] to [0]\n                set [yvelocity v] to [0]\n            else\n                set [state v] to ((round (((State) - (2)) * (10))) / (10))\n                change [x v] by (XVelocity)\n                change [y v] by (YVelocity)\n            end\n        end\n    else\n        if <(State) = [0]> then\n            set [direction v] to [90]\n            set [state v] to [1]\n        end\n        if <not <((State) mod (1)) = [0]>> then\n            TrackMovement\n            if <not <(FoundBlockType) = [i]>> then\n                set [bonus v] to (join (Bonus) [!])\n            else\n                set [state v] to [47]\n                set [state v] to ((round (((State) - (0.2)) * (10))) / (10))\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [ao]> or <(Type) = [bu]>> then\n    set [hitboxheight v] to [12]\n    MoveSteps [8] [V]\n    set [#one v] to [15]\n    if <(Type) = [bu]> then\n        set [#one v] to [8]\n        set [xvelocity v] to ((XVelocity) / (1.2))\n        change [yvelocity v] by (([cos v] of (Direction) ) * (4))\n        if <(TypesOnScreenCheck?) = [1]> then\n            SimpleParticle [Ice]\n        end\n    end\n    if <(Direction) > [0]> then\n        change [direction v] by (#One)\n        if <(Direction) > [135]> then\n            set [direction v] to [135]\n        end\n    else\n        change [direction v] by ((#One) * (-1))\n        if <(Direction) < [-135]> then\n            set [direction v] to [-135]\n        end\n    end\n    Standard (XVelocity)\n    if <(XVelocity) = [0]> then\n        TurnAround\n        change [y v] by (4)\n        change [state v] by (-1)\n        if <(item (EntityNo.) of [ent x v v]) = [0]> then\n            DeleteThisEntity [] []\n            SimpleParticle [Skid]\n        end\n    end\n    if <<(YVelocity) = [0.5]> or <(State) > [4]>> then\n        DeleteThisEntity [] []\n        if <(Type) = [bu]> then\n            SimpleParticle [Ice]\n        else\n            SimpleParticle [Skid]\n        end\n    end\n    if <(YVelocity) = [0]> then\n        if <(Direction) > [0]> then\n            set [direction v] to [25]\n        else\n            set [direction v] to [-25]\n        end\n        change [state v] by (1)\n        if <(Type) = [bu]> then\n            change [state v] by (3)\n        end\n        if <(XVelocity) = [0]> then\n            set [direction v] to ((Direction) / (100))\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [aq]> or <(Type) = [bs]>> then\n    if <(State) < [-1]> then\n        add (EntityNo.) to [renderinbackgroundentities v]\n        change [state v] by ((1) / (6))\n        if <(State) > [-1]> then\n            set [state v] to [0]\n        end\n        change [y v] by (-6)\n        stop [this script v]\n    else\n        if <(State) < [0]> then\n            add (EntityNo.) to [renderinbackgroundentities v]\n            change [state v] by ((1) / (12))\n            if <(State) > [0]> then\n                set [state v] to [0]\n            end\n            change [y v] by (6)\n            stop [this script v]\n        else\n            if <(Type) = [bs]> then\n                change [x v] by (XVelocity)\n                set [xvelocity v] to ((XVelocity) / (1.1))\n                if <(Direction) > [0]> then\n                    change [xvelocity v] by (0.1)\n                else\n                    change [xvelocity v] by (-0.1)\n                end\n                change [y v] by ((-0.25) + (([cos v] of ((GameTimer) * (360)) ) * (0.75)))\n            else\n                change [x v] by (XVelocity)\n                set [xvelocity v] to ((XVelocity) / (1.1))\n                if <(Direction) = [-90]> then\n                    set [direction v] to [90]\n                end\n                change [direction v] by (6)\n                if <(Direction) = [450]> then\n                    set [direction v] to [90]\n                end\n                change [x v] by (([cos v] of (Direction) ) * (-3.36))\n                change [y v] by ((-0.25) + (([abs v] of ([cos v] of (Direction) ) ) * (-1.25)))\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [ar]> then\n    if <(State) > [30]> then\n        set [xvelocity v] to [0]\n        PlatformsOffPlatform\n        if <(YVelocity) < [-7.8]> then\n            set [yvelocity v] to [-7.8]\n        end\n    end\n    stop [this script v]\nend\nif <<<(Type) = [as]> or <(Type) = [dl]>> or <<(Type) = [au]> or <(Type) = [dc]>>> then\n    if <((State) mod (100)) < [20]> then\n        Standard [1.5]\n    else\n        if <((State) mod (100)) < [60]> then\n            Standard [-1.5]\n            if <<((State) mod (100)) > [38]> and <((State) mod (100)) < [40]>> then\n                TurnToPlayer\n                if <(YVelocity) = [0]> then\n                    set [yvelocity v] to [4]\n                end\n            end\n        else\n            if <((State) mod (100)) < [80]> then\n                Standard [1.5]\n            else\n                TurnToPlayer\n                Standard [0]\n                if <<((State) mod (100)) > [82]> and <((State) mod (100)) < [84]>> then\n                    if <<(YVelocity) = [0]> and <(State) > [200]>> then\n                        set [yvelocity v] to [10]\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [at]> then\n    if <(Direction) > [0]> then\n        change [direction v] by (7)\n        if <(Direction) > [150]> then\n            set [direction v] to [150]\n        end\n    else\n        change [direction v] by (-7)\n        if <(Direction) < [-150]> then\n            set [direction v] to [-150]\n        end\n    end\n    change [x v] by ((([sin v] of (Direction) ) * (5)) + (XVelocity))\n    change [y v] by (([cos v] of (Direction) ) * (10))\n    set [xvelocity v] to ((XVelocity) / (1.03))\n    stop [this script v]\nend\nif <(Type) = [be]> then\n    if <(State) = [0]> then\n        set [yvelocity v] to [0.001]\n        if <<([abs v] of ((X) - (PlayerX)) ) < [80]> and <(PlayerY) < (Y)>> then\n            set [bonus v] to (Y)\n            set [state v] to [1]\n            change [yvelocity v] by (-0.69)\n        end\n    else\n        if <(State) = [1]> then\n            if <(YVelocity) = [0]> then\n                set [state v] to [2]\n                start sound [Thwomp v]\n                if <(CameraShake) = [0]> then\n                    set [camerashake v] to [1]\n                end\n            else\n                change [yvelocity v] by (-0.69)\n                Standard [0]\n            end\n        else\n            if <(State) < [16]> then\n                Standard [0]\n                change [state v] by (0.7)\n                if <((Y) + (1)) < (PreviousYPosition)> then\n                    set [y v] to (PreviousYPosition)\n                end\n            else\n                if <(State) < [18]> then\n                    set [yvelocity v] to [2]\n                    change [y v] by (2)\n                    if <(Y) > (Bonus)> then\n                        set [y v] to (Bonus)\n                        set [state v] to [18]\n                    end\n                else\n                    if <(State) < [32]> then\n                        change [state v] by (1)\n                    else\n                        set [state v] to [0]\n                    end\n                end\n            end\n        end\n    end\n    CreateEntity (X) (((Y) + ((YVelocity) * (0.5))) + (32)) [90] [bf] [Delete] [0] (XVelocity) (YVelocity)\n    stop [this script v]\nend\nif <(Type) = [bf]> then\n    DeleteThisEntity [] []\n    stop [this script v]\nend\nif <(Type) = [bg]> then\n    MoveSteps [4] [X]\n    stop [this script v]\nend\nif <(Type) = [en]> then\n    MoveSteps [3] [X]\n    stop [this script v]\nend\nif <(Type) = [bi]> then\n    SlowTurning [8]\n    Standard ([abs v] of (([sin v] of ((State) - (90)) ) * (4.5)) )\n    if <(XVelocity) = [0]> then\n        TurnToPlayer\n        if <([abs v] of ((State) - (90)) ) > [45]> then\n            if <(YVelocity) = [0]> then\n                set [yvelocity v] to [8.2]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<<(Type) = [bk]> or <(Type) = [fc]>> or <<(Type) = [bl]> or <(Type) = [bn]>>> then\n    if <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))> then\n        set [yvelocity v] to ((YVelocity) / (1.046))\n        change [yvelocity v] by (0.31)\n        if <(Type) = [bk]> then\n            Standard [1.5]\n        else\n            if <(Type) = [fc]> then\n                change [state v] by (((3) - (State)) / (30))\n                TurnSlowlyTo [3] []\n                if <(State) = [0.4]> then\n                    Standard [0.5]\n                else\n                    ScanNearbyEntities\n                    MoveSteps (State) [V]\n                    CollideAndMove\n                end\n            else\n                if <(Type) = [bn]> then\n                    if <(State) = [0]> then\n                        Standard [0.5]\n                        if <<<<((PlayerX) + (16)) < (X)> and <(Direction) < [0]>> or <<((X) + (16)) < (PlayerX)> and <(Direction) > [0]>>> and <(PlayerUnderwater) = [1]>> then\n                            if <<([abs v] of ((PlayerX) - (X)) ) < [224]> and <([abs v] of ((PlayerY) - (Y)) ) < [192]>> then\n                                change [state v] by (1)\n                            end\n                        end\n                    else\n                        if <(State) > [30]> then\n                            if <(State) < [45]> then\n                                TurnSlowlyTo [1] []\n                            end\n                            MoveSteps [3] [V]\n                            ScanNearbyEntities\n                            CollideAndMove\n                            change [state v] by (1)\n                            if <not <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))>> then\n                                set [state v] to [0]\n                                set [yvelocity v] to ((YVelocity) * (2))\n                                set [xvelocity v] to ((XVelocity) * (2))\n                            end\n                            if <<<(YVelocity) = [0]> or <(YVelocity) = [0.5]>> or <(XVelocity) = [0]>> then\n                                Delete+Key+Explode\n                            end\n                        else\n                            change [state v] by (1)\n                            TurnSlowlyTo [3] []\n                        end\n                    end\n                else\n                    Standard [3]\n                end\n            end\n        end\n    else\n        if <(YVelocity) = [0]> then\n            Standard [0]\n        else\n            Standard [1.5]\n        end\n        if <(YVelocity) = [0]> then\n            if <((round (((GameTimer) * (100)) + ((EntityNo.) * (10)))) mod (60)) = [30]> then\n                set [yvelocity v] to [5]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [bo]> or <(Type) = [bw]>> then\n    if <(State) = [0]> then\n        FixPiranhas\n    else\n        set [x v] to (XVelocity)\n        set [y v] to (YVelocity)\n        if <(State) < [30]> then\n            change [state v] by (1)\n            if <(Direction) = [90]> then\n                if <<([abs v] of ((PlayerX) - (X)) ) < [52]> and <(PlayerY) < ((Y) + (80))>> then\n                    set [state v] to [25]\n                end\n            else\n                if <<([abs v] of ((PlayerX) - ((X) + (([cos v] of (Direction) ) * (-48)))) ) < [52]> and <([abs v] of ((PlayerY) - ((Y) + (([sin v] of (Direction) ) * (48)))) ) < [52]>> then\n                    set [state v] to [25]\n                end\n            end\n        else\n            if <(State) < [60]> then\n                change [state v] by (1)\n                MoveSteps ((64) * (((State) - (30)) / (30))) [X1]\n            else\n                if <(State) < [90]> then\n                    change [state v] by (1)\n                    MoveSteps [64] [X1]\n                    if <(round (State)) = [75]> then\n                        if <(Type) = [bw]> then\n                            set [#four v] to (Direction)\n                            MoveSteps [40] [X1]\n                            PointTowards (PlayerX) (PlayerY)\n                            CreateEntity (X) (Y) (Direction) [by] [1] [0] [0] [0]\n                            start sound [EnemyFireball v]\n                            set [direction v] to (#Four)\n                            MoveSteps [-40] [X1]\n                        end\n                    end\n                else\n                    if <(State) < [120]> then\n                        change [state v] by (1)\n                        MoveSteps ((64) * (((120) - (State)) / (30))) [X1]\n                    else\n                        if <(State) < [135]> then\n                            change [state v] by (1)\n                        else\n                            set [state v] to [1]\n                        end\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [br]> then\n    change [state v] by (1)\n    if <<not <(Powerup) = [C]>> and <(State) < [349]>> then\n        set [state v] to [349]\n    end\n    change [y v] by (YVelocity)\n    set [yvelocity v] to (([cos v] of ((State) * (5)) ) * (0.1))\n    if <(State) > [360]> then\n        Delete+Key+Explode\n    end\n    stop [this script v]\nend\nif <(Type) = [by]> then\n    set [hitboxheight v] to [16]\n    MoveSteps [4] [V]\n    ScanNearbyEntities\n    CollideAndMove\n    change [state v] by (1)\n    if <<<(YVelocity) = [0]> or <(YVelocity) = [0.5]>> or <(XVelocity) = [0]>> then\n        SimpleDeleteWithKey\n        SimpleParticle [Skid]\n    end\n    stop [this script v]\nend\nif <<(Type) = [cb]> or <(Type) = [eo]>> then\n    if <(State) < [300]> then\n        change [state v] by (1)\n        TurnSlowlyTo ((3) - (<(Type) = [eo]> * (2.5))) []\n    end\n    if <(Type) = [eo]> then\n        MoveSteps [3] [X]\n    else\n        MoveSteps [4] [X]\n    end\n    stop [this script v]\nend\nif <<<(Type) = [cc]> or <(Type) = [dt]>> or <<(Type) = [dk]> or <<<(Type) = [ds]> or <(Type) = [aw]>> or <<(Type) = [az]> or <(Type) = [af]>>>>> then\n    if <(Type) = [dt]> then\n        if <(State) = [0]> then\n            set [state v] to [1]\n            set [loadentitiesdelay v] to [0]\n            add (join (join [du,] (join ((X) / (32)) [,])) (join (join ((Y) / (32)) [,]) [0,0,0,0,-90,])) to [potentialentityspawn v]\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [ce]> then\n    set [hitboxheight v] to [48]\n    if <(State) > [5]> then\n        if <(State) > [6]> then\n            if <(State) > [7]> then\n                if <(State) > [8]> then\n                    if <(State) > [9]> then\n                        change [state v] by (0.1)\n                        if <(State) > [10]> then\n                            set [state v] to [0]\n                        end\n                    else\n                        if <(Y) < ((PlayerY) + (80))> then\n                            change [yvelocity v] by (-0.69)\n                            Standard [0]\n                            if <(YVelocity) = [0]> then\n                                set [state v] to [9.1]\n                                set [camerashake v] to [1]\n                                Interact ((X) + (8)) ((Y) + (-28)) [HitB]\n                                Interact ((X) + (-8)) ((Y) + (-28)) [HitB]\n                                EntInt (X) (Y) [Crush]\n                                start sound [Thwomp v]\n                                set [yvelocity v] to [0.1]\n                                SimpleParticle [Landed]\n                            end\n                        else\n                            change [y v] by (YVelocity)\n                            if <(YVelocity) > [2]> then\n                                set [state v] to [0]\n                            end\n                        end\n                    end\n                else\n                    set [yvelocity v] to [-16]\n                    change [state v] by (0.3)\n                end\n            else\n                change [yvelocity v] by (-1.38)\n                if <(Y) < ((PlayerY) + (128))> then\n                    set [yvelocity v] to [12]\n                end\n                change [y v] by (YVelocity)\n                TurnToPlayer\n                if <(Y) > ((PlayerY) - (96))> then\n                    if <([abs v] of ((PlayerX) - (X)) ) > [9]> then\n                        change [x v] by ((Direction) / (10))\n                    else\n                        set [x v] to (((X) + (PlayerX)) / (2))\n                    end\n                end\n                if <(YVelocity) < [1.38]> then\n                    set [yvelocity v] to [1.38]\n                    if <([abs v] of ((PlayerX) - (X)) ) < [5]> then\n                        set [state v] to [7.1]\n                        set [x v] to (PlayerX)\n                    end\n                end\n            end\n        else\n            Standard [0]\n            if <(YVelocity) = [0]> then\n                change [state v] by (0.05)\n                if <(State) > [6]> then\n                    set [yvelocity v] to [12]\n                end\n            end\n        end\n    else\n        Standard [0]\n        if <(YVelocity) = [0]> then\n            if <((GameTimer) mod (0.12)) > [0.1]> then\n                TurnToPlayer\n                if <(State) < [3]> then\n                    change [state v] by (1)\n                end\n                set [yvelocity v] to [7]\n            end\n        end\n        if <not <(State) < [3]>> then\n            change [state v] by (0.03)\n            if <((State) mod (1)) > [0.98]> then\n                CreateEntity ((X) + ((Direction) / (3))) ((Y) + (32)) (Direction) [cf] [0] [0] [1] [0]\n                start sound [EnemyFireball v]\n            end\n        end\n    end\n    Both []\n    stop [this script v]\nend\nif <<(Type) = [cf]> or <(Type) = [cv]>> then\n    if <(XVelocity) = [1]> then\n        if <(State) < [15]> then\n            change [state v] by (1)\n            if <([abs v] of ((PlayerY) - (Y)) ) > [4]> then\n                if <(PlayerY) > (Y)> then\n                    change [y v] by (2)\n                else\n                    change [y v] by (-2)\n                end\n            else\n                change [state v] by (15)\n            end\n        end\n    end\n    change [x v] by ((Direction) / (22.5))\n    if <(Type) = [cv]> then\n        Hitbox []\n    end\n    stop [this script v]\nend\nif <(Type) = [cg]> then\n    if <(State) < [0]> then\n        change [state v] by (0.02)\n        TurnToPlayer\n        if <not <(State) < [0]>> then\n            if < (Bonus) contains [9]?> then\n                Delete+Key+Explode\n                set [state v] to [-0.99]\n            end\n        end\n    else\n        if <(State) < [2]> then\n            if <(YVelocity) = [0]> then\n                Standard [0]\n                change [state v] by (0.03)\n                if <((State) mod (1)) > [0.97]> then\n                    if <<((GameTimer) mod (0.03)) > [0.01]> or <(State) < [1.1]>> then\n                        TurnToPlayer\n                        set [yvelocity v] to [12]\n                        set [state v] to [1]\n                    else\n                        set [state v] to [2]\n                    end\n                end\n            else\n                Standard [3]\n            end\n        else\n            TurnToPlayer\n            Standard [4.5]\n            change [state v] by (0.008)\n            if <(State) > [3]> then\n                set [state v] to [0]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <<<<(Type) = [cj]> or <(Type) = [eh]>> or <(Type) = [dw]>> or <<<(Type) = [cl]> or <(Type) = [ef]>> or <<(Type) = [dh]> or <(Type) = [ee]>>>> then\n    if <(Type) = [ef]> then\n        set [hitboxheight v] to [48]\n    end\n    if <(State) < [0]> then\n        change [state v] by (0.01)\n        if <(State) > [-0.9]> then\n            if < (Bonus) contains [9]?> then\n                set [xvelocity v] to [0]\n                set [yvelocity v] to [3]\n                change [state v] by (0.005)\n                if <not <(State) < [0]>> then\n                    Delete+Key+Explode\n                    set [state v] to [-0.99]\n                end\n                if <not <((Y) - (MapY)) > [116]>> then\n                    CollideAndMove\n                    set [yvelocity v] to [3]\n                end\n            else\n                TurnToPlayer\n                if <(Type) = [ef]> then\n                    Standard [0]\n                else\n                    Standard [4.5]\n                    if <<(YVelocity) = [0]> and <((GameTimer) mod (0.2)) > [0.18]>> then\n                        if <<(PlayerY) > ((Y) + (12))> or <(XVelocity) = [0]>> then\n                            set [yvelocity v] to [11]\n                        end\n                    end\n                end\n            end\n        end\n    else\n        change [state v] by (0.02)\n        if <(State) < [1]> then\n            Standard (<<not <(Type) = [ef]>> or <(State) < [0.3]>> * (3))\n            if <<(YVelocity) = [0]> and <((GameTimer) mod (0.2)) > [0.18]>> then\n                set [#eight v] to (letter (length of (Bonus)) of (Bonus))\n                if <<<(Type) = [dh]> or <(Type) = [dw]>> and <<(#Eight) > [7]> and <(#Eight) < [10]>>> then\n                    set [yvelocity v] to [13]\n                else\n                    if <<<(PlayerY) > ((Y) + (12))> and <not <(Type) = [ef]>>> or <(XVelocity) = [0]>> then\n                        set [yvelocity v] to [11]\n                    else\n                        if <<(Type) = [dh]> or <<(Type) = [dw]> or <(Type) = [eh]>>> then\n                            set [yvelocity v] to ((6) + (<(Type) = [eh]> * (4)))\n                        end\n                    end\n                end\n            end\n        else\n            Standard [0]\n            if <(State) > [1.5]> then\n                if <(State) > [1.51]> then\n                    if <(State) > [1.7]> then\n                        set [state v] to [0]\n                    end\n                else\n                    set [#eight v] to (Direction)\n                    PointTowards (PlayerX) (PlayerY)\n                    if <(Type) = [dh]> then\n                        CreateEntity ((X) + ((#Eight) / (8))) ((Y) + (16)) (Direction) [di] [] [0] [x] [x]\n                        set [state v] to [1.6]\n                    else\n                        if <(Type) = [ef]> then\n                            CreateEntity ((X) + ((#Eight) / (8))) (Y) (#Eight) [eg] [x] [0] ((#Eight) / (15)) [0]\n                        else\n                            set [#one v] to [0]\n                            if <(Type) = [eh]> then\n                                change [direction v] by (-30)\n                            end\n                            repeat (3)\n                                CreateEntity ((X) + ((#Eight) / (2))) ((Y) + (8)) (Direction) [ck] [0] (#One) [0] [0]\n                                if <(Type) = [eh]> then\n                                    change [direction v] by (30)\n                                else\n                                    change [#one v] by (-1)\n                                end\n                            end\n                            if <(Type) = [dw]> then\n                                set [state v] to [1.6]\n                            end\n                        end\n                    end\n                    set [direction v] to (#Eight)\n                end\n            end\n        end\n        TurnToPlayer\n    end\n    if <<(Type) = [ee]> or <(Type) = [eh]>> then\n        if <<(YVelocity) = [0]> and <(item (EntityNo.) of [ent y v v]) < [-1]>> then\n            if <(CameraShake) = [0]> then\n                set [camerashake v] to [1]\n            end\n            start sound [Bump v]\n            if <(PlayerYVelocity) = [0]> then\n                set [groundshaking v] to [1]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [eg]> then\n    if <not <(YVelocity) = [0.5]>> then\n        change [yvelocity v] by (0.29)\n    end\n    Standard [3]\n    if <(YVelocity) = [0]> then\n        set [yvelocity v] to [12]\n    end\n    if <<(TypesOnScreenCheck?) = [1]> and <(Bonus) = [x]>> then\n        if <not <[ent ty v] contains [ef]?>> then\n            Delete+Key+Explode\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [ck]> then\n    change [state v] by (0.2)\n    if <(State) < [0]> then\n    stop [this script v]\nend\nif <(Type) = [cm]> then\n    TurnToPlayer\n    if <((Direction) * (-1)) = (PlayerDirection)> then\n        set [state v] to [0]\n        set [xvelocity v] to [0]\n        set [yvelocity v] to [0]\n    else\n        set [#five v] to (Direction)\n        change [state v] by (0.03)\n        PointTowards (PlayerX) (PlayerY)\n        if <(State) > [1.5]> then\n            set [state v] to [1.5]\n        end\n        MoveSteps (State) [V]\n        change [x v] by (XVelocity)\n        change [y v] by (YVelocity)\n        set [direction v] to (#Five)\n    end\n    stop [this script v]\nend\nif <(Type) = [co]> then\n    if <(State) = [0]> then\n        if <(XVelocity) = [0]> then\n            set [xvelocity v] to ((Direction) / (24))\n            replace item (EntityNo.) of [ent x v v] with (XVelocity)\n        end\n        set [state v] to [1]\n    end\n    if <(XVelocity) = [0]> then\n        Delete+Key+Explode\n        set [xvelocity v] to ((Direction) / (24))\n        stop [this script v]\n    end\n    Standard ([abs v] of (XVelocity) )\n    if <not <([abs v] of (XVelocity) ) < [0.05]>> then\n        if <(YVelocity) = [0]> then\n            if <(item (EntityNo.) of [ent y v v]) < [-2]> then\n                if <(item (EntityNo.) of [ent y v v]) < [-8]> then\n                    set [yvelocity v] to ((item (EntityNo.) of [ent y v v]) * (-1))\n                else\n                    set [yvelocity v] to ((item (EntityNo.) of [ent y v v]) * (-0.7))\n                end\n            end\n            if <(item (EntityNo.) of [ent y v v]) = [0]> then\n                if <(Y) < ((PreviousYPosition) - (1))> then\n                    if <([abs v] of (XVelocity) ) < [8]> then\n                        change [xvelocity v] by ((Direction) / (360))\n                    end\n                else\n                    if <(Y) > ((PreviousYPosition) + (1))> then\n                        if <([abs v] of (XVelocity) ) > [2.9]> then\n                            change [xvelocity v] by ((Direction) / (-360))\n                        end\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [cr]> then\n    change [state v] by (1)\n    change [x v] by ((Direction) / (30))\n    change [y v] by (([cos v] of ((State) * (8)) ) * (4))\n    stop [this script v]\nend\nif <(Type) = [ct]> then\n    if <(State) < [0]> then\n        if <(State) < [-1]> then\n            change [y v] by (-8)\n            set [yvelocity v] to [-2]\n        else\n            change [y v] by (8)\n        end\n        set [state v] to [0]\n        RoundPos\n    end\n    if <((Y) mod (32)) < [2]> then\n        set [#one v] to ((((round ((X) / (32))) - (1)) * (WorldHeight)) + (round ((Y) / (32))))\n        if <<(item (#One) of [unique type v]) = [i]> and <(item (#One) of [bltyga v]) = [i]>> then\n            replace item (#One) of [unique type v] with [aw]\n        else\n            CreateEntity (X) (Y) [] [aw] [] [] [] []\n        end\n    end\n    if <(YVelocity) < [0]> then\n        set [yvelocity v] to [-2]\n        change [y v] by (-2)\n    else\n        set [yvelocity v] to [2]\n        change [y v] by (2)\n    end\n    ScanNearbyEntities\n    Collision [V] []\n    if <<not <([abs v] of (YVelocity) ) = [2]>> or <<(Y) > ((((AreaStartHeight) + (AreaHeight)) - (1)) * (32))> or <(Y) < ((AreaStartHeight) * (32))>>> then\n        Delete+Key+Explode\n    end\n    stop [this script v]\nend\nif <(Type) = [cu]> then\n    set [x v] to (XVelocity)\n    set [y v] to (YVelocity)\n    if <(State) < [45]> then\n        change [state v] by (1)\n        TurnToPlayer\n        if <(State) > [15]> then\n            set [#one v] to ((12) * (((State) - (15)) / (15)))\n            if <(#One) > [12]> then\n                set [#one v] to [12]\n            end\n            change [y v] by (#One)\n        end\n        if <<([abs v] of ((PlayerX) - (X)) ) < [32]> and <([abs v] of ((PlayerY) - ((Y) + (32))) ) < [24]>> then\n            if <(State) < [15]> then\n                set [state v] to [10]\n            end\n        end\n    else\n        if <(State) < [60]> then\n            change [state v] by (1)\n            change [y v] by ((12) + ((20) * (((State) - (45)) / (15))))\n            TurnToPlayer\n        else\n            if <(State) < [90]> then\n                TurnToPlayer\n                change [state v] by (1)\n                change [y v] by (32)\n                if <(round (State)) = [75]> then\n                    CreateEntity (X) (Y) (Direction) [cv] [0] [0] [1] [0]\n                end\n            else\n                if <(State) < [105]> then\n                    change [state v] by (1)\n                    change [y v] by ((32) * (((105) - (State)) / (15)))\n                else\n                    if <(State) < [120]> then\n                        change [state v] by (1)\n                    else\n                        set [state v] to [1]\n                    end\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [cw]> then\n    if <(YVelocity) = [0]> then\n        TurnToPlayer\n        Standard [0]\n        change [state v] by (1)\n        if <(State) > [10]> then\n            CreateParticle [] ((Y) + (12)) [Flame]\n            if <(State) > [12]> then\n                set [xvelocity v] to ((Direction) / (45))\n                set [state v] to [0]\n                set [yvelocity v] to [7]\n                if <(PlayerY) > ((Y) + (48))> then\n                    set [yvelocity v] to [8]\n                end\n            end\n        end\n    else\n        if <not <(YVelocity) = [0.5]>> then\n            change [yvelocity v] by (0.29)\n        end\n        CreateParticle [] ((Y) + (12)) [Flame]\n        Standard [3]\n        if <(YVelocity) = [0]> then\n            set [xvelocity v] to ((XVelocity) / (2))\n        end\n    end\n    if <((Y) / (32)) < ((CurrentWaterLevel) + (0.5))> then\n        Delete+Key+Explode\n        stop [this script v]\n    end\n    Both []\n    stop [this script v]\nend\nif <(Type) = [dd]> then\n    if <(State) = [0]> then\n        set [state v] to [1]\n        set [bonus v] to (Y)\n    end\n    change [yvelocity v] by (-0.69)\n    change [y v] by (YVelocity)\n    if <(State) = [90]> then\n        CreateParticle [] ((Y) - (16)) [Lava]\n        if <(Y) > ((Bonus) - (96))> then\n            set [y v] to ((Bonus) - (96))\n            set [yvelocity v] to [11.9]\n            set [state v] to [1]\n        else\n            set [yvelocity v] to [16]\n        end\n    else\n        if <((Y) / (32)) < ((CurrentLavaLevel) - (2))> then\n            set [y v] to (((CurrentLavaLevel) - (2)) * (32))\n            change [state v] by (1)\n            if <(State) > [45]> then\n                set [state v] to [90]\n                set [yvelocity v] to [8.5]\n                start sound [EnemyFireball v]\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [dg]> then\n    Standard [0]\n    stop [this script v]\nend\nif <(Type) = [di]> then\n    if <(State) = [0]> then\n        MoveSteps [4.5] [V]\n        replace item (EntityNo.) of [ent x v v] with (XVelocity)\n        replace item (EntityNo.) of [ent y v v] with (YVelocity)\n        set [state v] to [1]\n    end\n    ScanNearbyEntities\n    CollideAndMove\n    if <<(YVelocity) = [0.5]> or <(YVelocity) = [0]>> then\n        set [y v] to (PreviousYPosition)\n        set [yvelocity v] to (item (EntityNo.) of [ent y v v])\n        set [yvelocity v] to ((YVelocity) * (-1))\n        if <(XVelocity) = [0]> then\n            if <(State) = [2]> then\n                DeleteThisEntity [] []\n            else\n                set [state v] to [2]\n            end\n        end\n    end\n    if <(XVelocity) = [0]> then\n        set [x v] to (PreviousXPosition)\n        set [xvelocity v] to (item (EntityNo.) of [ent x v v])\n        set [xvelocity v] to ((XVelocity) * (-1))\n    else\n        set [state v] to [1]\n    end\n    if <(TypesOnScreenCheck?) = [1]> then\n        if <not <[ent ty v] contains [dh]?>> then\n            Delete+Key+Explode\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [dj]> then\n    MoveSteps [4.5] [X]\n    if <(State) = [0]> then\n        ExplodeParticle\n        set [state v] to [1]\n    end\n    stop [this script v]\nend\nif <(Type) = [dm]> then\n    if <(Direction) > [0]> then\n        change [direction v] by (5)\n    else\n        change [direction v] by (-5)\n    end\n    if <<([abs v] of (Direction) ) < [90]> or <([abs v] of (Direction) ) > [270]>> then\n        if <([abs v] of (Direction) ) > [270]> then\n            ScanNearbyEntities\n            repeat (length of [nearbyentities v])\n                if <(item (item (1) of [nearbyentities v]) of [ent ty v]) = [dl]> then\n                    if <<([abs v] of ((X) - (item (item (1) of [nearbyentities v]) of [ent x v])) ) < [24]> and <([abs v] of ((Y) - (item (item (1) of [nearbyentities v]) of [ent y v])) ) < [48]>> then\n                        SimpleDeleteWithKey\n                        stop [this script v]\n                    end\n                end\n                delete (1) of [nearbyentities v]\n            end\n        end\n        if <<<(Direction) > [0]> and <(Direction) < [270]>> or <(Direction) < [-270]>> then\n            change [x v] by (7.5)\n        else\n            change [x v] by (-7.5)\n        end\n    else\n        change [x v] by (([sin v] of (Direction) ) * (9))\n    end\n    if <([abs v] of (Direction) ) < [180]> then\n        change [y v] by (([cos v] of (Direction) ) * (6))\n    else\n        change [y v] by (([cos v] of (Direction) ) * (3))\n    end\n    stop [this script v]\nend\nif <(Type) = [dn]> then\n    change [state v] by (1)\n    if <(State) > [200]> then\n        if <<(State) > [265]> or <(XVelocity) = [0]>> then\n            change [yvelocity v] by (1.43)\n            set [state v] to [45]\n        end\n        Standard [1.5]\n    else\n        Standard [1]\n        if <(round (State)) = [90]> then\n            TurnAround\n        end\n        if <(round (State)) = [180]> then\n            set [state v] to [0]\n            TurnAround\n        end\n    end\n    if <<<((PlayerX) + (16)) < (X)> and <(Direction) < [0]>> or <<((X) + (16)) < (PlayerX)> and <(Direction) > [0]>>> then\n        if <<([abs v] of ((PlayerX) - (X)) ) < [160]> and <([abs v] of ((PlayerY) - (Y)) ) < [48]>> then\n            if <(State) < [200]> then\n                change [yvelocity v] by (-2)\n            end\n            set [state v] to [210]\n        end\n    end\n    set [yvelocity v] to ((YVelocity) / (1.4))\n    if <(Underwater) = [1]> then\n        change [yvelocity v] by (0.31)\n    else\n        change [yvelocity v] by (0.69)\n    end\n    stop [this script v]\nend\nif <(Type) = [du]> then\n    if <(Bonus) = [0]> then\n        set [bonus v] to ((((round ((X) / (32))) - (1)) * (WorldHeight)) + (round ((Y) / (32))))\n    end\n    if <(State) < [46]> then\n        Standard [4.5]\n    else\n        if <(State) < [52]> then\n            MoveSteps [15] [V]\n            CollideAndMove\n            set [direction v] to (item (EntityNo.) of [ent dir v])\n        end\n    end\n    change [state v] by (1.1)\n    set [#one v] to ((([floor v] of ((Bonus) / (WorldHeight)) ) + (1)) * (32))\n    set [#six v] to (((Bonus) mod (WorldHeight)) * (32))\n    if <(State) < [46]> then\n        if <([abs v] of ((X) - (#One)) ) > [40]> then\n            change [state v] by (-0.2)\n            if <(#One) > (X)> then\n                set [direction v] to [90]\n            else\n                set [direction v] to [-90]\n            end\n        end\n        IamEnvironmental\n        if <<(YVelocity) = [0]> or <(Y) < ((#Six) - (84))>> then\n            set [yvelocity v] to [4]\n        end\n    else\n        if <(State) > [75]> then\n            set [state v] to [1]\n            set [xvelocity v] to [0]\n            set [yvelocity v] to [1]\n            TurnToPlayer\n        end\n        if <<<(State) < [52]> and <(State) > [50]>> and <(([abs v] of ((X) - (#One)) ) + ([abs v] of ((Y) - (#Six)) )) < [72]>> then\n            change [state v] by (-0.99)\n        end\n        if <(State) < [47]> then\n            set [direction v] to (round ((((GameTimer) + (EntityNo.)) * (1000)) mod (75)))\n            if <(X) < (#One)> then\n                change [direction v] by (-75)\n            end\n            if <([abs v] of ((X) - (#One)) ) > [64]> then\n                TurnAround\n            end\n        end\n    end\n    set [previousxposition v] to (X)\n    set [previousyposition v] to (Y)\n    set [#three v] to (((X) - (#One)) / (-4.4))\n    set [#four v] to (((Y) - (#Six)) / (-4.8))\n    repeat (4)\n        change [x v] by (#Three)\n        change [y v] by (#Four)\n        SimpleParticle [Chain]\n    end\n    set [x v] to (PreviousXPosition)\n    set [y v] to (PreviousYPosition)\n    stop [this script v]\nend\nif <(Type) = [ec]> then\n    change [thrownentities v] by (1)\n    ApproachSpeed [-8] [12]\n    ScanNearbyEntities\n    CollideAndMove\n    if <<<<(YVelocity) = [0]> or <(YVelocity) = [0.5]>> or <([abs v] of ((Y) - (PreviousYPosition)) ) > [2]>> or <<(XVelocity) = [0]> and <<(State) > [36]> and <((State) mod (1)) < [0.5]>>>> then\n        Delete+Key+Explode\n        stop [this script v]\n    end\n    if <(XVelocity) = [0]> then\n        if <(item (EntityNo.) of [ent x v v]) > [0]> then\n            set [#eight v] to [90]\n        else\n            set [#eight v] to [-90]\n        end\n        TurnToPlayer\n        if <<(#Eight) = (Direction)> and <(State) > [36]>> then\n            Delete+Key+Explode\n        end\n        set [direction v] to (#Eight)\n        Interact ((X) + (((Direction) / (90)) * (24))) (Y) [HitS]\n    end\n    if <(State) > [32]> then\n        if <(PlayerY) > ((Y) + (24))> then\n            set [yvelocity v] to [2]\n        else\n            if <(PlayerY) < ((Y) + (-24))> then\n                set [yvelocity v] to [-2]\n            else\n                set [yvelocity v] to ((YVelocity) / (1.1))\n            end\n        end\n        set [hitboxwidth v] to [12]\n        Hitbox []\n        set [#eight v] to (Direction)\n        TurnToPlayer\n        if <not <(#Eight) = (Direction)>> then\n            change [state v] by ((0.09) + ((([floor v] of (State) ) - (36)) / (20)))\n        end\n        set [direction v] to (#Eight)\n        if <(XVelocity) = [0]> then\n            set [state v] to ([ceiling v] of (State) )\n            TurnAround\n            set [xvelocity v] to ((Direction) / (12))\n        else\n            if <((State) mod (1)) > [0.85]> then\n                set [state v] to (([floor v] of (State) ) + (1))\n                TurnAround\n            end\n        end\n    else\n        change [state v] by (1.9)\n        if <<(XVelocity) = [0]> or <(State) > [32]>> then\n            TurnAround\n            set [state v] to [36]\n            if <(XVelocity) = [0]> then\n                set [xvelocity v] to ((Direction) / (12))\n            end\n        end\n    end\n    if <(State) > [40]> then\n        Delete+Key+Explode\n    end\n    ICollectCoins\n    change [y v] by (-4)\n    IKillEnemies\n    change [y v] by (4)\n    stop [this script v]\nend\nif <(Type) = [ep]> then\n    if <(State) > [0]> then\n        change [state v] by (0.5)\n        if <(State) > [22]> then\n            set [state v] to [0]\n        end\n    end\n    if <<(State) > [0.5]> and <(State) < [9.5]>> then\n        MoveSteps ((10) - (State)) [V]\n        change [x v] by (XVelocity)\n        change [y v] by (YVelocity)\n    else\n        if <<(Y) > ((PlayerY) + (32))> or <(State) > [0]>> then\n            change [yvelocity v] by (-0.2)\n            if <(YVelocity) < [-2]> then\n                set [yvelocity v] to [-2]\n            end\n            change [y v] by (YVelocity)\n        else\n            TurnToPlayer\n            set [state v] to [0.01]\n            if <([abs v] of ((X) - (PlayerX)) ) < [80]> then\n                if <(TypesOnScreenCheck?) = [1]> then\n                    set [direction v] to ((Direction) * (-1))\n                end\n            end\n            set [direction v] to ((Direction) * (0.5))\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [eq]> then\n    TurnToPlayer\n    if <(State) < [0]> then\n        if < (Bonus) contains [9]?> then\n            DeathParticle []\n            SimpleDeleteWithKey\n            stop [this script v]\n        end\n        if <(State) < [-0.9]> then\n            Standard [0]\n        else\n            Standard [4.5]\n        end\n        if <<(XVelocity) = [0]> and <(YVelocity) = [0]>> then\n            set [yvelocity v] to [8]\n        end\n        change [state v] by (0.006)\n        if <(State) > [0]> then\n            set [state v] to [0]\n        end\n    else\n        if <(State) < [27]> then\n            if <<((State) mod (9)) < [1]> and <(State) > [2]>> then\n                change [state v] by (0.03)\n                if <<(YVelocity) = [0]> and <((State) mod (9)) < [0.5]>> then\n                    set [yvelocity v] to [8]\n                    if <(State) < [11]> then\n                        set [xvelocity v] to ((Direction) / (-18))\n                    else\n                        set [xvelocity v] to ((Direction) / (18))\n                    end\n                end\n            else\n                change [state v] by (0.1)\n                if <(round (((State) mod (3)) * (10))) = [27]> then\n                    set [#four v] to (Direction)\n                    PointTowards (PlayerX) ((PlayerY) - (8))\n                    CreateEntity ((X) + ((#Four) / (9))) ((Y) + (10)) (Direction) [er] [0] [0] [0] [0]\n                    start sound [EnemyFireball v]\n                    set [direction v] to (#Four)\n                end\n            end\n        else\n            if <(State) > [31]> then\n                change [state v] by (0.1)\n                if <(State) > [34]> then\n                    set [state v] to [0]\n                end\n            else\n                if <(State) > [29]> then\n                    if <<(YVelocity) > [-8]> and <(YVelocity) < [0]>> then\n                        if <(YVelocity) > [-2]> then\n                            set [yvelocity v] to [-4]\n                        end\n                        change [yvelocity v] by (-0.69)\n                    end\n                    if <(YVelocity) = [0]> then\n                        set [state v] to [32]\n                        if <(CameraShake) = [0]> then\n                            set [camerashake v] to [1]\n                        end\n                        start sound [Bump v]\n                        if <(PlayerYVelocity) = [0]> then\n                            set [groundshaking v] to [1]\n                        end\n                    end\n                else\n                    if <([abs v] of ((X) - (PlayerX)) ) > [256]> then\n                        set [state v] to [-0.5]\n                    else\n                        if <(YVelocity) = [0]> then\n                            set [yvelocity v] to [14]\n                            set [state v] to [30]\n                        else\n                            set [state v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n        Standard [0]\n    end\n    stop [this script v]\nend\nif <(Type) = [er]> then\n    set [hitboxheight v] to [16]\n    MoveSteps [4] [X]\n    ThisMelts\n    Hitbox []\n    stop [this script v]\nend\nif <<(Type) = [es]> or <(Type) = [et]>> then\n    if <(State) = [-94]> then\n        SimpleParticle [BIce]\n        ResetItemToPosition\n    else\n        if <(State) > [30]> then\n            change [yvelocity v] by (0.2)\n            Standard [0]\n            set [xvelocity v] to [0]\n            EntInt (X) (Y) [Kill]\n            EntInt (X) ((Y) - (32)) [Kill]\n            if <(YVelocity) = [0]> then\n                Interact (X) ((Y) - (28)) [HitB]\n                SimpleParticle [BIce]\n                ResetItemToPosition\n            end\n        end\n    end\n    stop [this script v]\nend\n\ndefine DeleteEntities\nrepeat until <(length of [deleteentitylist v]) = [0]>\n    set [#six v] to (item (1) of [deleteentitylist v])\n    if <(item (#Six) of [ent ty v]) = [ec]> then\n        set [spacepause v] to [1]\n    end\n    delete (#Six) of [ent ty v]\n    delete (#Six) of [ent x v]\n    delete (#Six) of [ent y v]\n    delete (#Six) of [ent x v v]\n    delete (#Six) of [ent y v v]\n    delete (#Six) of [ent state v]\n    delete (#Six) of [ent bon v]\n    delete (#Six) of [ent dir v]\n    delete (#Six) of [ent mo v]\n    repeat until <not <[deleteentitylist v] contains (#Six)?>>\n        delete (item # of (#Six) in [deleteentitylist v]) of [deleteentitylist v]\n    end\n    set [#five v] to [0]\n    repeat (length of [deleteentitylist v])\n        change [#five v] by (1)\n        if <(item (#Five) of [deleteentitylist v]) > (#Six)> then\n            replace item (#Five) of [deleteentitylist v] with ((item (#Five) of [deleteentitylist v]) - (1))\n        end\n    end\nend\n\ndefine CostumeEntity\nset rotation style [left-right v]\nset [#fifteen v] to [0]\nif <(State) = []> then\n    set [state v] to [0]\nend\nif <(Direction) = [x]> then\n    point in direction (-90)\nend\nif <<(Type) = [a]> or <(Type) = [ay]>> then\n    set rotation style [don't rotate v]\n    if <(State) < [0]> then\n        switch costume to (join (Type) ((22Mod2+1) + (2)))\n    end\nend\nif <(Type) = [ep]> then\n    if <<<(State) > [0.5]> and <(State) < [12]>> or < (Bonus) contains [!]?>> then\n        switch costume to (ep v)\n    else\n        switch costume to (ep2 v)\n    end\nend\nif <(Type) = [b]> then\n    switch costume to (b v)\n    set rotation style [don't rotate v]\nend\nif <<(Type) = [f]> or <(Type) = [h]>> then\n    if <(State) < [0]> then\n        switch costume to (join (Type) ((22Mod2+1) + (6)))\n    else\n        if <(State) = [0]> then\n    end\nend\nif <(Type) = [p]> then\n    if <(State) = [0]> then\nend\nif <<<(Type) = [bs]> or <<(Type) = [ec]> or <(Type) = [er]>>> or <<(Type) = [bu]> or <(Type) = [dm]>>> then\n    switch costume to (join (Type) (22Mod4+1))\nend\nif <(Type) = [t]> then\n    set rotation style [don't rotate v]\n    if <(State) = [0]> then\n        switch costume to (t1 v)\n    else\n        if <(State) < [0.2]> then\n            switch costume to (t2 v)\n        else\n            if <(State) < [0.6]> then\n                switch costume to (t3 v)\n            else\n                switch costume to (t2 v)\n            end\n        end\n    end\nend\nif <(Type) = [w]> then\n    if <(State) > [101]> then\n        set [#fifteen v] to [1]\n    else\n        if <(State) > [96]> then\n            switch costume to (w5 v)\n        else\n            if <(State) > [87]> then\n                switch costume to (w6 v)\n            else\n                if <(State) > [82]> then\n                    switch costume to (w5 v)\n                end\n            end\n        end\n    end\nend\nif <<(Type) = [y]> or <(Type) = [ey]>> then\n    if <(State) < [0]> then\n        switch costume to (join [y] ((22Mod2+1) + (7)))\n    else\n        if <(State) = [0]> then\n            if <(Type) = [ey]> then\n                switch costume to (join [ey] (22Mod4+1))\n            end\n        else\n            if <(State) < [6]> then\n                switch costume to (join (Type) [5])\n            else\n                if <(State) < [120]> then\n                    switch costume to (join (Type) [6])\n                else\n                    if <(State) < [144]> then\n                        switch costume to (join (Type) ((22Mod2+1) + (5)))\n                    else\n                        switch costume to (join (Type) [5])\n                    end\n                end\n            end\n        end\n    end\nend\nif <<(Type) = [ac]> or <(Type) = [ea]>> then\n    set [#eight v] to << (Bonus) contains [^]?> or < (Bonus) contains [&]?>>\n    if <(State) = [-1]> then\n        set [#fifteen v] to [1]\n    else\n        if <<(State) = [1]> or <(State) = [3]>> then\n            if <(#Eight) = [1]> then\n                switch costume to (join (Type) [9])\n            else\n                switch costume to (join (Type) [5])\n            end\n        else\n            if <(State) = [2]> then\n                if <(#Eight) = [1]> then\n                    switch costume to (join (Type) ((22Mod4+1) + (8)))\n                else\n                    switch costume to (join (Type) ((22Mod4+1) + (4)))\n                end\n            end\n        end\n    end\nend\nif <(Type) = [ae]> then\n    set rotation style [don't rotate v]\n    if <(State) = [0]> then\n        switch costume to (join [ae] (22Mod4+1))\n    else\n        switch costume to (ae5 v)\n    end\nend\nif <<(Type) = [ao]> or <(Type) = [by]>> then\n    switch costume to (join [ao] (22Mod4+1))\nend\nif <<<(Type) = [ap]> or <<(Type) = [dj]> or <(Type) = [ed]>>> or <<(Type) = [da]> or <<(Type) = [db]> or <(Type) = [eb]>>>> then\n    set rotation style [don't rotate v]\n    switch costume to (Type)\nend\nif <(Type) = [aq]> then\n    set rotation style [left-right v]\n    turn left (90) degrees\n    switch costume to (aq1 v)\nend\nif <<(Type) = [as]> or <(Type) = [dl]>> then\n    if <<((State) mod (100)) > [58]> and <((State) mod (100)) < [88]>> then\n        set [#fifteen v] to [1]\n    end\nend\nif <(Type) = [at]> then\n    set rotation style [all around v]\n    point in direction (([floor v] of (22Mod4+1) ) * (90))\n    if <(Bonus) = [1]> then\n        switch costume to (at2 v)\n    else\n        switch costume to (at1 v)\n    end\nend\nif <<(Type) = [au]> or <(Type) = [dc]>> then\n    if <<((State) mod (100)) > [84]> and <((State) mod (100)) < [90]>> then\n        switch costume to (join (Type) [3])\n    end\nend\nif <(Type) = [av]> then\n    switch costume to (av v)\nend\nif <(Type) = [bj]> then\n    switch costume to (bj v)\nend\nif <(Type) = [bm]> then\n    switch costume to (bm v)\nend\nif <(Type) = [dr]> then\n    switch costume to (dr v)\nend\nif <<(Type) = [bn]> or <(Type) = [fc]>> then\n    if <<(State) = [0]> or <(Frozen) = [1]>> then\nend\nif <(Type) = [bo]> then\n    set rotation style [all around v]\nend\nif <(Type) = [bq]> then\n    switch costume to (bq v)\nend\nif <(Type) = [bt]> then\n    switch costume to (bt v)\nend\nif <(Type) = [bv]> then\n    switch costume to (bv v)\nend\nif <(Type) = [bw]> then\n    set rotation style [all around v]\n    if <(Frozen) = [0]> then\n        change [x v] by (MapX)\n        change [y v] by (MapY)\n        PointTowards (PlayerX) (PlayerY)\n        change [x v] by ((MapX) * (-1))\n        change [y v] by ((MapY) * (-1))\n        change [direction v] by (90)\n        change [direction v] by ((direction) * (-1))\n        set [#two v] to (direction)\n        point in direction (Direction)\n        set [direction v] to (direction)\n        point in direction (#Two)\n    end\n    if <(Direction) > [90]> then\n        switch costume to (bw3 v)\n    else\n        if <(Direction) > [0]> then\n            switch costume to (bw4 v)\n        else\n            if <(Direction) > [-90]> then\n                switch costume to (bw2 v)\n            else\n                switch costume to (bw1 v)\n            end\n        end\n    end\nend\nif <<<(Type) = [cb]> or <(Type) = [bg]>> or <<(Type) = [eo]> or <(Type) = [en]>>> then\n    if <<(Type) = [eo]> or <(Type) = [en]>> then\n        change y by (16)\n    end\n    set rotation style [all around v]\n    if <(direction) > [0]> then\n        switch costume to (join (Type) [1])\n    else\n        switch costume to (join (Type) [2])\n    end\nend\nif <(Type) = [ce]> then\n    if <(State) > [9]> then\n        switch costume to (ce5 v)\n    else\n        if <(State) > [7]> then\n            switch costume to (ce6 v)\n        else\n            if <(State) > [5]> then\n                switch costume to (ce v)\n            else\n                if <(State) < [3]> then\n                    if <(YVelocity) = [0]> then\n                        switch costume to (ce v)\n                    else\n                        switch costume to (ce2 v)\n                    end\n                else\n                    if <((State) mod (1)) > [0.5]> then\n                        if <((State) mod (1)) > [0.75]> then\n                            switch costume to (ce4 v)\n                        else\n                            switch costume to (ce3 v)\n                        end\n                    else\n                        switch costume to (ce v)\n                    end\n                end\n            end\n        end\n    end\nend\nif <(Type) = [cf]> then\n    switch costume to (join [cf] (22Mod3+1))\nend\nif <(Type) = [cg]> then\n    if <(State) < [0]> then\n        set [#one v] to (([floor v] of (((GameTimer) * (32)) mod (8)) ) + (7))\n        if <((#One) mod (2)) = [1]> then\n            switch costume to (cg7 v)\n        else\n            switch costume to (join [cg] (#One))\n        end\n    else\n        if <(State) < [2]> then\n            if <(YVelocity) = [0]> then\n                switch costume to (cg1 v)\n            else\n                switch costume to (cg2 v)\n            end\n        else\n            switch costume to (join [cg] ((22Mod4+1) + (2)))\n        end\n    end\nend\nif <(Type) = [dn]> then\n    if <(State) > [200]> then\n        switch costume to (join [dn] (([floor v] of (((GameTimer) * (48)) mod (2)) ) + (3)))\n    end\nend\nif <(Type) = [ch]> then\n    switch costume to (join [ch] (22Mod3+1))\nend\nif <<<(Type) = [cj]> or <<(Type) = [dw]> or <(Type) = [ef]>>> or <<<(Type) = [cl]> or <(Type) = [eh]>> or <<(Type) = [dh]> or <(Type) = [ee]>>>> then\n    if <<(Type) = [ef]> and <not <(YVelocity) = [3]>>> then\n        switch costume to (join [eg] (22Mod4+1))\n        stamp\n        switch costume to (large v)\n    end\n    if <(State) < [0]> then\n        if <(Type) = [eh]> then\n            set [type v] to [cj]\n        end\n        if <(YVelocity) = [3]> then\n            switch costume to (join (Type) (([floor v] of (((GameTimer) * (24)) mod (8)) ) + (11)))\n        else\n            switch costume to (join (Type) (([floor v] of (((GameTimer) * (24)) mod (6)) ) + (5)))\n        end\n    else\n        if <(State) < [1]> then\n    end\nend\nif <(Type) = [ck]> then\n    if <(State) < [0]> then\n        switch costume to (invis v)\n    else\n        if <(State) < [0.4]> then\n            switch costume to (ck1 v)\n        else\n            if <(State) < [0.8]> then\n                switch costume to (ck2 v)\n            else\n                set [#fifteen v] to [1]\n            end\n        end\n    end\nend\nif <(Type) = [cm]> then\n    if <<(State) = [0]> and <not < (Bonus) contains [!]?>>> then\n        switch costume to (cm1 v)\n    else\n        switch costume to (cm v)\n    end\nend\nif <(Type) = [co]> then\n    if <not < (Bonus) contains [!]?>> then\n        set rotation style [all around v]\n        point in direction (((GameTimer) * ((direction) * (24))) mod (360))\n    end\n    switch costume to (x1 v)\nend\nif <(Type) = [cq]> then\n    switch costume to (join [cq] (([floor v] of (((GameTimer) * (24)) mod (8)) ) + (1)))\nend\nif <(Type) = [ct]> then\n    if <(YVelocity) < [0]> then\n        set rotation style [all around v]\n        point in direction (-90)\n    end\nend\nif <(Type) = [cu]> then\n    if <<(State) < [65]> or <(State) > [85]>> then\n        switch costume to (cu1 v)\n    else\n        if <(State) < [75]> then\n            switch costume to (cu2 v)\n        else\n            switch costume to (cu3 v)\n        end\n    end\nend\nif <(Type) = [cv]> then\n    set rotation style [all around v]\n    point in direction (([floor v] of (((GameTimer) * (12)) mod (4)) ) * (90))\nend\nif <(Type) = [cy]> then\n    switch costume to (h7 v)\nend\nif <(Type) = [cz]> then\n    switch costume to (f7 v)\nend\nif <(Type) = [dy]> then\n    switch costume to (y8 v)\nend\nif <(Type) = [ei]> then\n    switch costume to (a3 v)\nend\nif <(Type) = [dd]> then\n    set rotation style [all around v]\n    if <not < (Bonus) contains [!]?>> then\n        if <(YVelocity) > [0]> then\n            point in direction (0)\n        else\n            point in direction (180)\n        end\n    end\n    switch costume to (join [dd] (22Mod3+1))\nend\nif <(Type) = [eq]> then\n    if <(State) < [0]> then\n        switch costume to (join [eq] ((22Mod4+1) + (8)))\n    else\n        if <(State) > [27]> then\n            if <<(State) = [30]> and <(YVelocity) > [0]>> then\n                switch costume to (eq1 v)\n            else\n                if <(State) > [30]> then\n                    switch costume to (eq8 v)\n                else\n                    switch costume to (eq7 v)\n                end\n            end\n        else\n            if <((State) mod (3)) < [1]> then\n                switch costume to (eq1 v)\n            else\n                switch costume to (join [eq] (([floor v] of (((State) mod (3)) * (1.65)) ) + (2)))\n            end\n        end\n    end\nend\nif <(costume [name v]) = [Large]> then\n    if <(#Fifteen) = [0]> then\n        switch costume to (join (Type) (22Mod2+1))\n    else\n        switch costume to (join (Type) ((22Mod2+1) + (2)))\n    end\nend\n\nwhen I receive [interactionsfinalupdate v]\nif <not <(length of [entintx v]) = [0]>> then\n    EntityInteractions\nend\nbroadcast (RenderBackgroundBlocks v)\n\ndefine ICollectCoins\nInteract (X) ((Y) + (4)) [Coin]\n\ndefine IamEnvironmental\nif <<(YVelocity) = [0]> or <(YVelocity) = [y]>> then\n    if <not < (Bonus) contains [!]?>> then\n        Interact (X) ((Y) + (-24)) [Feet]\n    end\nend\n\ndefine EntityInteractions <stomped>\nInPosition\nif <<(Type) = [a]> or <(Type) = [ay]>> then\n    if <stomped> then\n        if <not <(Powerup) = [M]>> then\n            if <(State) < [0]> then\n                GetOffTrack\n                set [state v] to [0]\n            else\n                if <(Type) = [a]> then\n                    SimpleParticle [Goomba]\n                else\n                    SimpleParticle [Goombrat]\n                end\n                SimpleDeleteWithKey\n            end\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    Both [1]\n    stop [this script v]\nend\nset [#one v] to [x]\nTryPowerup [b] [B]\nTryPowerup [dr] [M]\nTryPowerup [eb] [G]\nTryPowerup [db] [U]\nTryPowerup [da] [S]\nTryPowerup [bv] [1]\nTryPowerup [bt] [I]\nTryPowerup [ap] [F]\nTryPowerup [aq] [R]\nTryPowerup [av] [H]\nTryPowerup [bm] [O]\nTryPowerup [bq] [C]\nTryPowerup [bs] [P]\nTryPowerup [ch] [!]\nif <(#One) = [z]> then\n    stop [this script v]\nend\nif <(Type) = [bj]> then\n    Both []\n    stop [this script v]\nend\nif <(Type) = [co]> then\n    if <(XVelocity) = [0]> then\n        if <not < (Bonus) contains [!]?>> then\n            Interact ((X) + (((Direction) / (90)) * (-24))) ((Y) + (2)) [HitS]\n        end\n    end\n    IKillEnemies\n    ICollectCoins\n    Both []\n    stop [this script v]\nend\nif <<<(Type) = [f]> or <(Type) = [ea]>> or <<(Type) = [h]> or <(Type) = [ac]>>> then\n    if <(State) = [2]> then\n        if <(XVelocity) = [0]> then\n            if <(YVelocity) < [-8]> then\n                set [y v] to (((round (((Y) + (4)) / (16))) * (16)) - (4))\n            end\n            set [xvelocity v] to ((item (EntityNo.) of [ent x v v]) * (-1))\n            if <([abs v] of (item (EntityNo.) of [ent x v v]) ) = [32]> then\n                XVel [3]\n            end\n            Interact ((X) + (((Direction) / (90)) * (-24))) ((Y) + (2)) [HitS]\n        end\n    end\n    if <<(State) = [3]> and <(YVelocity) = [0]>> then\n        set [state v] to [2]\n    end\n    if <(State) = [-1]> then\n        if <<(Type) = [ac]> or <(Type) = [ea]>> then\n            if <<([abs v] of ((PlayerX) - (X)) ) < [96]> and <(PlayerY) < (Y)>> then\n                set [state v] to [3]\n                set [xvelocity v] to [0.01]\n                TurnToPlayer\n            end\n        end\n    end\n    if <<stomped> and <<not <(Type) = [ea]>> or << (Bonus) contains [^]?> or < (Bonus) contains [&]?>>>> then\n        if <not <(Powerup) = [M]>> then\n            if <<not <<(Type) = [ac]> or <(Type) = [ea]>>> and <(State) < [0]>> then\n                set [state v] to [0]\n            else\n                if <(State) = [1]> then\n                    set [direction v] to (PlayerDirection)\n                    if <not < (Bonus) contains [!]?>> then\n                        set [state v] to [2]\n                    end\n                else\n                    set [state v] to [1]\n                    XVel [4]\n                end\n            end\n            GetOffTrack\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    else\n        if <<(InPositionToPickup) = [1]> and <(State) = [1]>> then\n            set [holding v] to (Type)\n            set [holdingstate v] to [2]\n            SimpleDeleteWithKey\n            stop [this script v]\n        else\n            if <<(State) = [1]> and <not < (Bonus) contains [!]?>>> then\n                if <<([abs v] of (((PlayerX) + (PlayerXVelocity)) - (X)) ) < [28]> and <([abs v] of ((PlayerY) - (Y)) ) < [16]>> then\n                    set [kicking v] to [8]\n                    start sound [Kick v]\n                    set [state v] to [2]\n                    if <(PlayerX) > (X)> then\n                        set [direction v] to [-90]\n                    else\n                        set [direction v] to [90]\n                    end\n                    set [xvelocity v] to ((Direction) / (12))\n                    stop [this script v]\n                end\n            end\n        end\n    end\n    if <(State) = [2]> then\n        ICollectCoins\n        IKillEnemies\n    end\n    Both [1]\n    stop [this script v]\nend\nif <(Type) = [v]> then\n    if <<([abs v] of ((PlayerX) - (PreviousXPosition)) ) < [26]> and <([abs v] of ((PlayerY) - (PreviousYPosition)) ) < [24]>> then\n        if <(PlayerX) > (X)> then\n            set [player springx v] to [16]\n            set [playerxvelocity v] to [1]\n            set [state v] to [1]\n        else\n            set [player springx v] to [-16]\n            set [playerxvelocity v] to [-1]\n            set [state v] to [31]\n        end\n        set [playeryvelocity v] to [7]\n        if <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n            if <(PlayerX) > (X)> then\n                set [playerdirection v] to [90]\n            else\n                set [playerdirection v] to [-90]\n            end\n            set [playerxvelocity v] to ((Direction) / (9))\n        end\n    end\n    EntInt ((X) + (28)) (Y) [RBounce]\n    EntInt ((X) + (-28)) (Y) [LBounce]\n    if <not <(length of [nearbyuniques v]) = [0]>> then\n        Interact ((X) + (28)) (Y) [RBounce]\n        Interact ((X) + (-28)) (Y) [LBounce]\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nIs (Type)\nif <(#Eleven) = [1]> then\n    if <<(Type) = [bh]> or <(Type) = [ca]>> then\n        if <not <<([abs v] of ((PlayerX) - (PreviousXPosition)) ) < [28]> and <(PlayerY) < ((PreviousYPosition) + (32))>>> then\n            change [state v] by (1)\n            if <(Type) = [ca]> then\n                change [state v] by (0.25)\n            end\n            if <(round (State)) = [30]> then\n                if <(PlayerX) > (PreviousXPosition)> then\n                    set [#two v] to [90]\n                else\n                    set [#two v] to [-90]\n                end\n                BlasterCanFire?\n                if <(#Seven) = [1]> then\n                    ExtractOtherStuffFromBonus\n                    CreateParticle ((X) + ((#Two) / (5))) (Y) [Explode]\n                    set [#one v] to [15]\n                    if <(Type) = [ca]> then\n                        set [#one v] to [7.5]\n                    end\n                    start sound [bomb-omb v]\n                    if <[type - uniques v] contains (#Seven)?> then\n                        CreateEntity ((X) + ((#Two) / (3.21))) (Y) (#Two) (#Seven) [] [0] ((#Two) / (#One)) ((1) + (<(Y) > (PreviousYPosition)> * (3)))\n                    else\n                        CreateEntity ((X) + ((#Two) / (3.75))) ((Y) + (2)) (#Two) (#Seven) [] [0] ((#Two) / (#One)) ((1) + (<(Y) > (PreviousYPosition)> * (3)))\n                    end\n                end\n            end\n        end\n        if <(State) > [120]> then\n            set [state v] to [0]\n        end\n    end\n    if <<(Type) = [bz]> or <(Type) = [ev]>> then\n        if <(InPositionToPickup) = [1]> then\n            set [holding v] to (Type)\n            set [holdingstate v] to [0]\n            SimpleDeleteWithKey\n        end\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [dk]> then\n    change [state v] by (1)\n    if <(State) > [30]> then\n        start sound [bomb-omb v]\n        set [state v] to [-75]\n        if < (Bonus) contains ["]?> then\n            set [#one v] to [-45]\n        else\n            if < (Bonus) contains [^]?> then\n                set [#one v] to [-135]\n            else\n                if < (Bonus) contains [£]?> then\n                    set [#one v] to [45]\n                else\n                    set [#one v] to [135]\n                end\n            end\n        end\n        CreateEntity ((X) + (([sin v] of (#One) ) * (8))) ((Y) + (([cos v] of (#One) ) * (8))) (#One) [dj] [] [0] [] []\n    end\n    stop [this script v]\nend\nif <(Type) = [p]> then\n    if <(State) = [0]> then\n        if <stomped> then\n            set [playeryvelocity v] to [15]\n            start sound [Stomp v]\n            if <not <(Powerup) = [M]>> then\n                set [state v] to [1]\n            end\n        else\n            Hitbox []\n        end\n    else\n        if <<(InPositionToPickup) = [1]> and <(State) < [115]>> then\n            set [holding v] to (Type)\n            set [holdingstate v] to (State)\n            SimpleDeleteWithKey\n        else\n            change [state v] by (1)\n            if <(State) > [120]> then\n                set [hitboxheight v] to [48]\n                set [hitboxwidth v] to [48]\n                Hitbox [1]\n                set [#two v] to ((Y) + (32))\n                repeat (3)\n                    set [#one v] to ((X) + (-32))\n                    repeat (3)\n                        EntInt (#One) (#Two) [Bomb]\n                        Interact (#One) (#Two) [Bomb]\n                        change [#one v] by (32)\n                    end\n                    change [#two v] by (-32)\n                end\n                start sound [bomb-omb v]\n                if <(CameraShake) = [0]> then\n                    set [camerashake v] to [1]\n                end\n                Delete+Key+Explode\n            end\n        end\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [t]> then\n    if <(State) > [0]> then\n        change [state v] by (0.1)\n        if <(State) > [0.6]> then\n            set [state v] to [0]\n        end\n    end\n    if <<stomped> and <<not <(PlayerYVelocity) < [18]>> or <(PlayerYVelocity) < [12]>>> then\n        start sound [Stomp v]\n        set [playeryvelocity v] to [19]\n        set [playerxvelocity v] to ((PlayerXVelocity) / (4))\n        set [state v] to [0.1]\n    else\n        if <(InPositionToPickup) = [1]> then\n            set [holding v] to (Type)\n            set [holdingstate v] to [0]\n            SimpleDeleteWithKey\n        end\n    end\n    EntInt (X) ((Y) + (28)) [Bounce]\n    Interact (X) ((Y) + (28)) [Bounce]\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [w]> then\n    if <stomped> then\n        if <not <(Powerup) = [M]>> then\n            Delete+Key+Explode\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    change [state v] by (1)\n    if <(round (State)) = [90]> then\n        CreateEntity (X) ((Y) + (12)) (Direction) [x] [0] [0] (XVelocity) [5]\n    end\n    if <(State) > [130]> then\n        set [state v] to [0]\n    end\n    Both [1]\n    stop [this script v]\nend\nif <(Type) = [x]> then\n    Hitbox []\n    if <(State) > [0]> then\n        change [state v] by (1)\n        if <(State) > [15]> then\n            EntInt ((X) + ((Direction) / (9))) ((Y) + (2)) [SpikeBall]\n            Interact ((X) + (((Direction) / (90)) * (16))) ((Y) + (2)) [HitSpike]\n        end\n    end\n    ICollectCoins\n    stop [this script v]\nend\nif <<(Type) = [y]> or <(Type) = [ey]>> then\n    if <(State) < [1]> then\n        if <stomped> then\n            if <(Powerup) = [M]> then\n                start sound [Stomp v]\n            else\n                GetOffTrack\n                if <(State) = [0]> then\n                    if <(Type) = [y]> then\n                        start sound [dry bones v]\n                    else\n                        start sound [Stomp v]\n                    end\n                    set [state v] to [1]\n                else\n                    start sound [Stomp v]\n                    set [state v] to [0]\n                end\n            end\n            set [playeryvelocity v] to [15]\n            stop [this script v]\n        end\n        Hitbox [1]\n    else\n        if <<(Type) = [ey]> and <<(InPositionToPickup) = [1]> and <(State) < [116]>>> then\n            set [holding v] to [ey]\n            set [holdingstate v] to (State)\n            SimpleDeleteWithKey\n        else\n            change [state v] by (1)\n            if <<<(State) > [10]> and <(State) < [140]>> and <(Type) = [ey]>> then\n                change [state v] by (-0.5)\n            end\n            if <(State) > [150]> then\n                set [state v] to [0]\n            end\n        end\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [ae]> then\n    if <(PTimer) = [0]> then\n        set [state v] to [0]\n    end\n    if <(State) = [0]> then\n        if <<(InPositionToPickup) = [1]> and <(State) = [0]>> then\n            set [holding v] to (Type)\n            set [holdingstate v] to [0]\n            SimpleDeleteWithKey\n        else\n            if <stomped> then\n                set [state v] to [1]\n                set [ptimer v] to [10]\n                broadcast (MidGameUpdateScroll v)\n                stop all sounds\n            end\n        end\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <<(Type) = [ao]> or <(Type) = [by]>> then\n    if <(Bonus) = [1]> then\n        if <not <<(Powerup) = [H]> and <(Crouching) = [1]>>> then\n            Hitbox []\n        end\n        EntInt (X) (Y) [IgniteTouching]\n    else\n        EntInt (X) (Y) [Fireball]\n        Thrown\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [bu]> then\n    EntInt (X) (Y) [Ice]\n    if <(Bonus) = [1]> then\n        Hitbox []\n    else\n        Thrown\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <<<(Type) = [as]> or <(Type) = [dl]>> or <<(Type) = [au]> or <(Type) = [dc]>>> then\n    if <stomped> then\n        if <not <(Powerup) = [M]>> then\n            Delete+Key+Explode\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    change [state v] by (1)\n    if <<((State) mod (100)) > [86]> and <((State) mod (100)) < [88]>> then\n        if <(Type) = [au]> then\n            CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) ((Direction) / (3)) [ao] [1] [0] ((Direction) / (3.6)) [5]\n            start sound [EnemyFireball v]\n        else\n            if <(Type) = [dc]> then\n                CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) ((Direction) / (1.5)) [bu] [1] [0] ((Direction) / (3.6)) [5]\n                start sound [ICEBALL v]\n            else\n                if <(Type) = [dl]> then\n                    CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) ((Direction) / (15)) [dm] [0] [0] [0] [0]\n                    if <([floor v] of ((State) / (100)) ) = [0]> then\n                        change [state v] by (52)\n                    end\n                else\n                    CreateEntity ((X) + ((Direction) / (10))) ((Y) + (12)) ((Direction) / (15)) [at] [0] [0] [0] [0]\n                end\n            end\n        end\n    end\n    if <(State) > [300]> then\n        set [state v] to [0]\n    end\n    Both [1]\n    stop [this script v]\nend\nif <(Type) = [at]> then\n    if <(Bonus) = [1]> then\n        EntInt (X) (Y) [Kill]\n        Thrown\n    else\n        Hitbox []\n    end\n    stop [this script v]\nend\nif <<(Type) = [az]> or <<<(Type) = [ck]> or <(Type) = [di]>> or <<<(Type) = [cm]> or <(Type) = [dm]>> or <<(Type) = [cr]> or <(Type) = [du]>>>>> then\n    Hitbox []\n    stop [this script v]\nend\nif <(Type) = [be]> then\n    if <<(YVelocity) = [0]> and <(State) = [1]>> then\n        Interact ((X) + (8)) ((Y) + (-28)) [HitB]\n        Interact ((X) + (-8)) ((Y) + (-28)) [HitB]\n        EntInt (X) (Y) [Crush]\n    end\n    set [hitboxheight v] to [68]\n    set [hitboxwidth v] to [34]\n    Both []\n    stop [this script v]\nend\nif <<(Type) = [bg]> or <<(Type) = [dj]> or <(Type) = [eg]>>> then\n    if <(Type) = [dj]> then\n        set [hitboxwidth v] to [16]\n    end\n    if <stomped> then\n        if <not <<(Powerup) = [M]> or <(Type) = [eg]>>> then\n            Delete+Key+Explode\n        end\n        if <(Type) = [eg]> then\n            set [yvelocity v] to [0]\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    Hitbox [1]\n    stop [this script v]\nend\nif <<(Type) = [bi]> or <<(Type) = [cb]> or <(Type) = [dn]>>> then\n    if <stomped> then\n        if <not <(Powerup) = [M]>> then\n            Delete+Key+Explode\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    Both [1]\n    stop [this script v]\nend\nif <<<(Type) = [bk]> or <(Type) = [bl]>> or <<(Type) = [bn]> or <(Type) = [fc]>>> then\n    Both [1]\n    stop [this script v]\nend\nif <<(Type) = [bo]> or <(Type) = [bw]>> then\n    set [hitboxheight v] to [28]\n    set [hitboxwidth v] to [24]\n    set [#three v] to (X)\n    set [#four v] to (Y)\n    Hitbox []\n    MoveSteps [28] [X1]\n    Hitbox []\n    set [x v] to (#Three)\n    set [y v] to (#Four)\n    stop [this script v]\nend\nif <(Type) = [cc]> then\n    change [state v] by (1.8)\n    if <(State) > [359]> then\n        set [state v] to [0]\n    end\n    set [#five v] to (EntityNo.)\n    set [#three v] to (X)\n    set [#four v] to (Y)\n    set [hitboxheight v] to [20]\n    set [hitboxwidth v] to [20]\n    repeat (3)\n        change [x v] by (([sin v] of ((State) + (90)) ) * (32))\n        change [y v] by (([cos v] of ((State) + (90)) ) * (32))\n        EntInt (X) (Y) [IgniteTouching]\n        if <((GameTimer) mod (0.04)) < [0.01]> then\n            ThisMelts\n        end\n        Hitbox []\n    end\n    set [x v] to (#Three)\n    set [y v] to (#Four)\n    stop [this script v]\nend\nif <(Type) = [cg]> then\n    if <(State) > [0]> then\n        if <<(State) > [2]> or <not <(YVelocity) = [0]>>> then\n            if <stomped> then\n                if <not <(Powerup) = [M]>> then\n                    set [state v] to [-1]\n                    BossTakesDamage (EntityNo.) [4] [-1]\n                    set [xvelocity v] to [0]\n                    set [yvelocity v] to [1]\n                end\n                set [playeryvelocity v] to [15]\n                start sound [Stomp v]\n                stop [this script v]\n            end\n        end\n        Both []\n    end\n    stop [this script v]\nend\nif <<<<<(Type) = [cj]> or <(Type) = [eq]>> or <(Type) = [ef]>> or <<(Type) = [dw]> or <(Type) = [eh]>>> or <<(Type) = [cl]> or <<(Type) = [dh]> or <(Type) = [ee]>>>> then\n    set [hitboxheight v] to [24]\n    if <(State) > [0]> then\n        if <stomped> then\n            if <not <(Powerup) = [M]>> then\n                set [state v] to [-1]\n                BossTakesDamage (EntityNo.) [4] [-1]\n                set [xvelocity v] to [0]\n                set [yvelocity v] to [1]\n                set [playeryvelocity v] to [15]\n                SimpleParticle [Koopaling]\n            end\n            set [playeryvelocity v] to [15]\n            start sound [Stomp v]\n            stop [this script v]\n        end\n        Both []\n    else\n        if < (Bonus) contains [9]?> then\n    end\n    stop [this script v]\nend\nif <(Type) = [cf]> then\n    EntInt (X) (Y) [IgniteTouching]\n    ThisMelts\n    Hitbox []\n    stop [this script v]\nend\nif <(Type) = [cq]> then\n    EntInt (X) ((Y) + (76)) [Twister]\n    Interact (X) ((Y) + (76)) [Twister]\n    if <(TypesOnScreenCheck?) = [1]> then\n        CreateParticle [] ((Y) + (16)) [Twister]\n    end\n    if <<([abs v] of ((PlayerX) - (X)) ) < [28]> and <([abs v] of ((PlayerY) - ((Y) + (76))) ) < [84]>> then\n        if <(PlayerYVelocity) < [-2]> then\n            change [playeryvelocity v] by (1)\n        end\n        if <(PlayerYVelocity) < [6]> then\n            change [playeryvelocity v] by (3)\n        end\n        if <<(MoveUp) = [1]> and <(PlayerY) > ((Y) + (148))>> then\n            if <(PlayerYVelocity) > [2.5]> then\n                set [playeryvelocity v] to [12]\n            end\n        end\n        change [playerxvelocity v] by (((PlayerX) - ((((PlayerX) * (15)) + (X)) / (16))) * (-1))\n        if <(PlayerY) < ((Y) + (80))> then\n            change [playerx v] by (((PlayerX) - ((((PlayerX) * (9)) + (PreviousXPosition)) / (10))) * (-1))\n            change [playeryvelocity v] by (1)\n        end\n    end\n    IamEnvironmental\n    stop [this script v]\nend\nif <(Type) = [cu]> then\n    if <<stomped> and <not <(PlayerYVelocity) = [0]>>> then\n        if <not <(Powerup) = [M]>> then\n            SimpleDeleteWithKey\n            DeathParticle []\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    Hitbox []\n    stop [this script v]\nend\nif <(Type) = [dd]> then\n    EntInt (X) (Y) [IgniteTouching]\n    ThisMelts\n    Hitbox []\n    stop [this script v]\nend\nif <<(Type) = [ds]> or <(Type) = [em]>> then\n    change [y v] by (-32)\n    set [hitboxheight v] to [94]\n    set [hitboxwidth v] to [24]\n    Hitbox []\n    set [hitboxheight v] to [64]\n    change [x v] by (-24)\n    change [y v] by (16)\n    Hitbox []\n    change [x v] by (48)\n    Hitbox []\n    change [y v] by (16)\n    change [x v] by (-24)\n    if <(State) > [0]> then\n        change [state v] by (1)\n        if <(State) > [8]> then\n            set [state v] to [0]\n        end\n    end\n    stop [this script v]\nend\nif <<(Type) = [en]> or <(Type) = [eo]>> then\n    if <(State) = [0]> then\n        set [state v] to [1]\n        start sound [bomb-omb v]\n    end\n    set [#five v] to (Direction)\n    if <(Direction) < [0]> then\n        set [direction v] to [-90]\n    else\n        set [direction v] to [90]\n    end\n    change [y v] by (-32)\n    set [hitboxheight v] to [128]\n    set [hitboxwidth v] to [64]\n    if <(round (([abs v] of (#Five) ) / (30))) = [3]> then\n        MoveSteps [-16] [X]\n        Hitbox []\n        change [y v] by (24)\n        MoveSteps [56] [X]\n        set [hitboxheight v] to [64]\n        set [hitboxwidth v] to [24]\n        Hitbox []\n        change [y v] by (8)\n        MoveSteps [-40] [X]\n    else\n        set [hitboxwidth v] to [72]\n        Hitbox []\n        change [y v] by (32)\n    end\n    set [direction v] to (#Five)\n    stop [this script v]\nend\nif <(Type) = [ep]> then\n    if <<stomped> and <(PlayerUnderwater) = [0]>> then\n        if <not <(Powerup) = [M]>> then\n            SimpleDeleteWithKey\n            DeathParticle []\n        end\n        set [playeryvelocity v] to [15]\n        start sound [Stomp v]\n        stop [this script v]\n    end\n    Hitbox []\n    stop [this script v]\nend\nif <<(Type) = [ar]> or <<(Type) = [es]> or <(Type) = [et]>>> then\n    if <(State) < [0]> then\n        change [state v] by (1.4)\n        if <(State) > [-1]> then\n            set [state v] to [1]\n        end\n    else\n        set [#one v] to ([abs v] of ((PreviousXPosition) - (PlayerX)) )\n        if <(State) = [0]> then\n            set [bonus v] to (join (Bonus) ((((round ((PreviousXPosition) / (32))) - (1)) * (WorldHeight)) + (round ((PreviousYPosition) / (32)))))\n            set [state v] to [1]\n        end\n        if <not <(Type) = [et]>> then\n            if <(State) < [30]> then\n                if <<<(#One) < [24]> and <([abs v] of (((PreviousYPosition) + (28)) - (PlayerY)) ) < ((2) + (PlayerYVelocity))>> and <<<(PlayerYVelocity) = [0]> or <(PlayerYVelocity) > [13]>> and <not <(Powerup) = [M]>>>> then\n                    change [state v] by (1.1)\n                else\n                    if <<(Type) = [es]> and <<(State) > [3]> or <<(#One) < [80]> and <(PlayerY) < (PreviousYPosition)>>>> then\n                        change [state v] by (1.1)\n                    else\n                        set [state v] to [1]\n                    end\n                end\n            end\n        end\n        if <<<(Type) = [es]> and <(State) = [1]>> and <<(#One) < [112]> and <(PlayerY) < (PreviousYPosition)>>> then\n            set [state v] to [2]\n        end\n        if <not <(Type) = [ar]>> then\n            set [hitboxwidth v] to [20]\n            Hitbox [1]\n            if <(State) > [-90]> then\n                set [hitboxwidth v] to [16]\n                change [y v] by (-32)\n                Hitbox [1]\n                if <(State) > [-90]> then\n                    change [y v] by (32)\n                end\n            end\n        end\n    end\n    stop [this script v]\nend\nif <(Type) = [eu]> then\n    set [#three v] to (((GameTimer) + (1.5)) mod (2.1))\n    set [hitboxheight v] to [20]\n    set [hitboxwidth v] to [20]\n    if <<(#Three) > [0.02]> and <(#Three) < [0.98]>> then\n        repeat (3)\n            MoveSteps [32] [X]\n            Hitbox []\n            if <((GameTimer) mod (0.04)) < [0.01]> then\n                EntInt (X) (Y) [IgniteTouching]\n                ThisMelts\n            end\n        end\n        MoveSteps [-96] [X]\n    end\n    stop [this script v]\nend\n\nwhen I receive [renderbackgroundblocks v]\nif <(Edit/PlayMode) = [1]> then\n    if <(Shadows) = [1]> then\n        RenderEntities [Shadow]\n        clear graphic effects\n    end\nend\n\ndefine EntityInteractions\nset [entityno. v] to [0]\nrepeat (length of [loadedentities v])\n    change [entityno. v] by (1)\n    set [#cus1 v] to (item (EntityNo.) of [loadedentities v])\n    SetVars (#Cus1)\n    if <not <<<<<<(Type) = [cm]> or <(Type) = [er]>> or <<(Type) = [ec]> or <(Type) = [eo]>>> or <<<(Type) = [at]> or <(Type) = [en]>> or <<(Type) = [eu]> or <(Type) = [dm]>>>> or <<<(Type) = [bu]> or <(Type) = [di]>> or <<(Type) = [ck]> or <(Type) = [cv]>>>> or <<<<(Type) = [ct]> or <(Type) = [ao]>> or <<(Type) = [cq]> or <(Type) = [cr]>>> or <<<(Type) = [es]> or <(Type) = [et]>> or <<(Type) = [by]> or <(Type) = [cf]>>>>>> then\n        InteractingThisEntity\n    end\nend\nset [#cus4 v] to [0]\nset [#fourteen v] to [0]\nset [#twelve v] to [0]\n\ndefine InteractingThisEntity\nset [#cus2 v] to << (Bonus) contains [!]?> or < (Bonus) contains [*]?>>\nset [#two v] to [0]\nrepeat (length of [entintx v])\n    change [#two v] by (1)\n    set [#twelve v] to (item (#Two) of [entinttype v])\n    set [#fourteen v] to (item (#Two) of [entintsource v])\n    set [#three v] to ([abs v] of ((X) - (item (#Two) of [entintx v])) )\n    set [#four v] to ([abs v] of ((Y) - (item (#Two) of [entinty v])) )\n    set [#cus4 v] to (item (#Fourteen) of [ent ty v])\n    if <not <(#Cus1) = (#Fourteen)>> then\n        if <(#Twelve) = [Ice]> then\n            if <not <<(Type) = [dc]> and <(item (#Fourteen) of [ent bon v]) = [1]>>> then\n                if <<(#Three) < [16]> and <(#Four) < [18]>> then\n                    add (#Fourteen) to [deleteentitylist v]\n                    CreateParticle (item (#Two) of [entintx v]) (item (#Two) of [entinty v]) [Ice]\n                    if <[type - bosses v] contains (Type)?> then\n                        start sound [hit1 v]\n                        BossTakesDamage (#Cus1) [1] []\n                    else\n                        if <not < (Bonus) contains [\(]?>> then\n                            replace item (#Cus1) of [ent bon v] with (join (Bonus) [\(])\n                            start sound [Frozen v]\n                            if <<(Type) = [bo]> or <<(Type) = [bw]> or <(Type) = [cu]>>> then\n                                replace item (#Cus1) of [ent x v v] with [0]\n                                replace item (#Cus1) of [ent y v v] with [0]\n                                if <not <<(Direction) = [90]> or <(Type) = [cu]>>> then\n                                    DeleteThisEntity [1] (#Cus1)\n                                    FrozenInt (#Cus1)\n                                    stop [this script v]\n                                end\n                            end\n                            if <(#Cus2) = [0]> then\n                                if <(Direction) > [0]> then\n                                    replace item (#Cus1) of [ent dir v] with [90]\n                                else\n                                    replace item (#Cus1) of [ent dir v] with [-90]\n                                end\n                                replace item (#Cus1) of [ent x v v] with ((item (#Cus1) of [ent x v v]) / (3))\n                                replace item (#Cus1) of [ent y v v] with ((item (#Cus1) of [ent y v v]) + (1))\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        if <not <<<(Type) = [bg]> or <(Type) = [dj]>> or <<(Type) = [dd]> or <(Type) = [cb]>>>> then\n            if <(#Twelve) = [Twister]> then\n                if <<not <<(Type) = [bo]> or <<(Type) = [bw]> or <(Type) = [cu]>>>> or <not <((Direction) mod (90)) = [0]>>> then\n                    if <<(#Three) < [28]> and <(#Four) < [84]>> then\n                        if <(#Cus2) = [0]> then\n                            if <(YVelocity) < [6]> then\n                                replace item (#Cus1) of [ent y v v] with ((YVelocity) + (2))\n                                if <(YVelocity) < [-6]> then\n                                    replace item (#Cus1) of [ent y v v] with ((YVelocity) + (4))\n                                end\n                            end\n                            replace item (#Cus1) of [ent x v v] with (((X) - ((((X) * (7)) + (item (#Two) of [entintx v])) / (8))) * (-1))\n                            if <not < (Bonus) contains [\(]?>> then\n                                if <(item (#Two) of [entintx v]) > (X)> then\n                                    replace item (#Cus1) of [ent dir v] with [90]\n                                else\n                                    replace item (#Cus1) of [ent dir v] with [-90]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n            if <(#Twelve) = [Fireball]> then\n                if <<(#Three) < [16]> and <(#Four) < [18]>> then\n                    if <not <(Type) = [cw]>> then\n                        add (#Fourteen) to [deleteentitylist v]\n                        CreateParticle (item (#Two) of [entintx v]) (item (#Two) of [entinty v]) [Skid]\n                        if <[type - powerups v] contains (Type)?> then\n                            if <(#Cus2) = [0]> then\n                                replace item (#Cus1) of [ent y v v] with [7.6]\n                            end\n                        else\n                            if <<<<<(Type) = [y]> or <(Type) = [du]>> or <(Type) = [ac]>> or <<(Type) = [ae]> or <(Type) = [az]>>> or <<(Type) = [t]> or <(Type) = [ey]>>> then\n                        end\n                    end\n                end\n            end\n            if <(#Twelve) = [Kill]> then\n                if <<(#Three) < [20]> and <(#Four) < [12]>> then\n                    if < (Bonus) contains [\(]?> then\n                        start sound [hit1 v]\n                        if <<([abs v] of (item (#Cus1) of [ent x v v]) ) > ([abs v] of (item (#Fourteen) of [ent x v v]) )> and <not <(#Fourteen) = [0]>>> then\n                            DeleteThisEntity [1] (#Fourteen)\n                            FrozenInt (#Fourteen)\n                            DeathParticle (#Fourteen)\n                        else\n                            DeleteThisEntity [1] (#Cus1)\n                            FrozenInt (#Cus1)\n                            DeathParticle (#Cus1)\n                        end\n                    else\n                        KillInteraction\n                    end\n                end\n            end\n            if <(#Twelve) = [SpikeBall]> then\n                if <<(#Three) < [22]> and <(#Four) < [8]>> then\n                    KillInteraction\n                end\n            end\n            if <(#Twelve) = [PSwitch]> then\n                if <<(#Three) < [22]> and <(#Four) < [18]>> then\n                    if <(Type) = [ae]> then\n                        if <(State) = [0]> then\n                            replace item (#Cus1) of [ent state v] with [1]\n                            set [ptimer v] to [10]\n                            broadcast (MidGameUpdateScroll v)\n                            stop all sounds\n                        end\n                    end\n                end\n            end\n            if <(#Twelve) = [Tail]> then\n                if <<(#Three) < [24]> and <(#Four) < [16]>> then\n                    KillInteraction\n                end\n            end\n            if <(#Twelve) = [Bomb]> then\n                if <<(#Three) < [32]> and <(#Four) < [24]>> then\n                    if <[type - powerups v] contains (Type)?> then\n                        if <(#Cus2) = [0]> then\n                            replace item (#Cus1) of [ent y v v] with [7]\n                        end\n                    else\n                        if <[type - bosses v] contains (Type)?> then\n                            BossTakesDamage (#Cus1) [1] []\n                        else\n                            ExplodeParticle\n                            DeleteThisEntity [1] (#Cus1)\n                            FrozenInt (#Cus1)\n                            stop [this script v]\n                        end\n                    end\n                end\n            end\n            if <(#Twelve) = [Crush]> then\n                if <<(#Three) < [32]> and <(#Four) < [24]>> then\n                    KillInteraction\n                end\n            end\n            if <not <(Type) = [bo]>> then\n                if <(#Twelve) = [BlockBounce]> then\n                    if <<<(#Three) < [20]> and <(#Four) < [8]>> and <(YVelocity) = [0]>> then\n                        KillInteraction\n                    end\n                end\n                if <<(#Twelve) = [IgniteTouching]> and <not <(Type) = [ao]>>> then\n                    if <<(#Three) < [22]> and <(#Four) < [22]>> then\n                        if <(Type) = [p]> then\n                            if <not <<(#Cus4) = [cc]> or <<(#Cus4) = [dd]> or <(#Cus4) = [eu]>>>> then\n                                add (#Fourteen) to [deleteentitylist v]\n                                CreateParticle (item (#Two) of [entintx v]) (item (#Two) of [entinty v]) [Skid]\n                                if <(#Cus2) = [0]> then\n                                    replace item (#Cus1) of [ent y v v] with [4]\n                                end\n                            end\n                            if <(State) = [0]> then\n                                replace item (#Cus1) of [ent state v] with [1]\n                                if <(#Cus2) = [0]> then\n                                    replace item (#Cus1) of [ent y v v] with [4]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n            if <(#Cus2) = [0]> then\n                if <(#Twelve) = [Bounce]> then\n                    if <<(#Three) < [24]> and <(#Four) < [12]>> then\n                        if <not <<(Type) = [h]> and <(State) < [0]>>> then\n                            replace item (#Cus1) of [ent y v v] with [13.8]\n                            if <(#Cus4) = [t]> then\n                                replace item (#Fourteen) of [ent state v] with [0.1]\n                            end\n                        end\n                    end\n                end\n                if <<(#Three) < [4.5]> and <(#Four) < [24]>> then\n                    if <(#Twelve) = [LBounce]> then\n                        replace item (#Cus1) of [ent x v v] with [-15]\n                        replace item (#Cus1) of [ent y v v] with [6]\n                        replace item (#Cus1) of [ent dir v] with [-90]\n                        if <(#Cus4) = [v]> then\n                            replace item (#Fourteen) of [ent state v] with [31]\n                        end\n                    end\n                    if <(#Twelve) = [RBounce]> then\n                        replace item (#Cus1) of [ent x v v] with [15]\n                        replace item (#Cus1) of [ent y v v] with [6]\n                        replace item (#Cus1) of [ent dir v] with [90]\n                        if <(#Cus4) = [v]> then\n                            replace item (#Fourteen) of [ent state v] with [1]\n                        end\n                    end\n                    if <([abs v] of (item (#Cus1) of [ent x v v]) ) = [15]> then\n                        if <<<<(item (#Cus1) of [ent ty v]) = [f]> or <(item (#Cus1) of [ent ty v]) = [h]>> or <(item (#Cus1) of [ent ty v]) = [ac]>> and <(item (#Cus1) of [ent state v]) = [1]>> then\n                            replace item (#Cus1) of [ent state v] with [2]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine IKillEnemies\nEntInt (X) (Y) [Kill]\nEntInt ((X) + ((Direction) / (8))) (Y) [Kill]\n\ndefine TrackMovement\nif <not <(Direction) = [-90.01]>> then\n    if <<<(([abs v] of (((X) / (32)) - (round ((X) / (32)))) ) * (32)) < [0.9]> and <(([abs v] of (((Y) / (32)) - (round ((Y) / (32)))) ) * (32)) < [0.9]>> or <(#Ten) = [Tracks]>> then\n        RoundPos\n        set [foundblocksubtype v] to []\n        if <not <(#Ten) = [Tracks]>> then\n            set [#ten v] to [0]\n        end\n        BlockAt ((X) / (32)) ((Y) / (32)) [Track] [1]\n        if <(FoundBlockSubtype) = [l]> then\n            set [xvelocity v] to [0]\n            set [yvelocity v] to [0]\n            set [direction v] to [-90.01]\n        else\n            if <(FoundBlockType) = [i]> then\n                change [x v] by ((XVelocity) * (-2))\n                change [y v] by ((YVelocity) * (-2))\n                RoundPos\n            else\n                if <(FoundBlockSubtype) = [a]> then\n                    ChangeDirection [180] [180]\n                end\n                if <(FoundBlockSubtype) = [b]> then\n                    ContinueBetween [0] [180]\n                end\n                if <(FoundBlockSubtype) = [c]> then\n                    ChangeDirection [0] [0]\n                end\n                if <(FoundBlockSubtype) = [d]> then\n                    ChangeDirection [90] [90]\n                end\n                if <(FoundBlockSubtype) = [e]> then\n                    ContinueBetween [90] [-90]\n                end\n                if <(FoundBlockSubtype) = [f]> then\n                    ChangeDirection [-90] [-90]\n                end\n                if <(FoundBlockSubtype) = [g]> then\n                    ChangeDirection [180] [-90]\n                end\n                if <(FoundBlockSubtype) = [h]> then\n                    ChangeDirection [-90] [0]\n                end\n                if <(FoundBlockSubtype) = [i]> then\n                    ChangeDirection [0] [90]\n                end\n                if <(FoundBlockSubtype) = [k]> then\n                    ChangeDirection [90] [180]\n                end\n                if <(FoundBlockSubtype) = [m]> then\n                    ChangeDirection [-135] [-135]\n                end\n                if <(FoundBlockSubtype) = [n]> then\n                    ChangeDirection [-45] [-45]\n                end\n                if <(FoundBlockSubtype) = [o]> then\n                    ChangeDirection [45] [45]\n                end\n                if <(FoundBlockSubtype) = [p]> then\n                    ChangeDirection [135] [135]\n                end\n                if <(FoundBlockSubtype) = [q]> then\n                    ChangeDirection [-45] [45]\n                end\n                if <(FoundBlockSubtype) = [r]> then\n                    ChangeDirection [45] [135]\n                end\n                if <(FoundBlockSubtype) = [s]> then\n                    ChangeDirection [135] [-135]\n                end\n                if <(FoundBlockSubtype) = [t]> then\n                    ChangeDirection [-135] [-45]\n                end\n                if <(FoundBlockSubtype) = [u]> then\n                    ContinueBetween [-45] [135]\n                end\n                if <(FoundBlockSubtype) = [v]> then\n                    ContinueBetween [45] [-135]\n                end\n                if <(FoundBlockSubtype) = [w]> then\n                    ChangeDirection [45] [-90]\n                end\n                if <(FoundBlockSubtype) = [x]> then\n                    ChangeDirection [135] [-90]\n                end\n                if <(FoundBlockSubtype) = [y]> then\n                    ChangeDirection [45] [180]\n                end\n                if <(FoundBlockSubtype) = [z]> then\n                    ChangeDirection [-45] [180]\n                end\n                if <(FoundBlockSubtype) = [aa]> then\n                    ChangeDirection [90] [-45]\n                end\n                if <(FoundBlockSubtype) = [ab]> then\n                    ChangeDirection [90] [-135]\n                end\n                if <(FoundBlockSubtype) = [ac]> then\n                    ChangeDirection [0] [135]\n                end\n                if <(FoundBlockSubtype) = [ad]> then\n                    ChangeDirection [0] [-135]\n                end\n                if <(FoundBlockSubtype) = [ae]> then\n                    if <(On/Off) = [0]> then\n                        ChangeDirection [-90] [45]\n                    else\n                        ChangeDirection [-90] [135]\n                    end\n                end\n                if <(FoundBlockSubtype) = [af]> then\n                    if <(On/Off) = [0]> then\n                        ChangeDirection [0] [135]\n                    else\n                        ChangeDirection [0] [-135]\n                    end\n                end\n                if <(FoundBlockSubtype) = [ag]> then\n                    if <(On/Off) = [0]> then\n                        ChangeDirection [90] [-135]\n                    else\n                        ChangeDirection [90] [-45]\n                    end\n                end\n                if <(FoundBlockSubtype) = [ah]> then\n                    if <(On/Off) = [0]> then\n                        ChangeDirection [180] [-45]\n                    else\n                        ChangeDirection [180] [45]\n                    end\n                end\n            end\n            if <not <(#Ten) = [q]>> then\n                if <<<<(letter (2) of (Type)) = [x]> or <<(Type) = [eg]> or <(Type) = [cf]>>> or <<<(Type) = [al]> or <(Type) = [cn]>> or <<<(Type) = [az]> or <(Type) = [bl]>> or <<(Type) = [ez]> or <(Type) = [fa]>>>>> or <<<<(Type) = [f]> or <(Type) = [h]>> or <<(Type) = [y]> or <(Type) = [a]>>> and <(State) < [0]>>> then\n                    MoveSteps [4] [V]\n                else\n                    if <<(Type) = [am]> or <<(Type) = [bn]> or <(Type) = [dn]>>> then\n                        MoveSteps ((32) / (24)) [V]\n                    else\n                        if <<(Type) = [an]> or <(Type) = [cr]>> then\n                            MoveSteps ((32) / (12)) [V]\n                        else\n                            MoveSteps [2] [V]\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [x v] by (XVelocity)\n    change [y v] by (YVelocity)\nend\nset [#ten v] to [0]\n\ndefine ChangeDirection (option1) (option2)\npoint in direction (Direction)\nif <((Direction) mod (180)) = ((option1) mod (180))> then\n    set [direction v] to (option2)\nelse\n    if <(Direction) = [x]> then\n        if <([abs v] of ((Direction) - (option1)) ) < ([abs v] of ((Direction) - (option2)) )> then\n            set [direction v] to (option2)\n        else\n            set [direction v] to (option1)\n        end\n    else\n        set [direction v] to (option1)\n    end\nend\nif <<(FoundBlockMainType) = [8]> and <<not <(#Ten) = [Tracks]>> or <(Direction) = [0]>>> then\n    if <((option2) mod (180)) = ((option1) mod (180))> then\n        set [direction v] to (direction)\n        if <<(Type) = [am]> or <(Type) = [an]>> then\n            GetOffTrack\n            set [state v] to ((round (((round (State)) - (0.2)) * (10))) / (10))\n        else\n            JumpOffTrack\n        end\n    end\nend\npoint in direction (90)\n\ndefine ContinueBetween (option1) (option2)\nif <<not <<((Direction) mod (180)) = ((option1) mod (180))> or <((Direction) mod (180)) = ((option2) mod (180))>>> or <(Direction) = [x]>> then\n    if <([abs v] of ((Direction) - (option1)) ) < ([abs v] of ((Direction) - (option2)) )> then\n        set [direction v] to (option1)\n    else\n        set [direction v] to (option2)\n    end\nend\n\ndefine EntInt (x) (y) (type)\nadd (x) to [entintx v]\nadd (y) to [entinty v]\nadd (type) to [entinttype v]\nadd (EntityNo.) to [entintsource v]\n\ndefine Interact (x) (y) (type)\nadd (x) to [interactwithblockx v]\nadd (y) to [interactwithblocky v]\nadd (type) to [interactwithblocktype v]\nif <(Type) = [Player]> then\n    add [Player] to [interactwithblocksource v]\nelse\n    add (EntityNo.) to [interactwithblocksource v]\nend\n\ndefine ActivateThisSkull (x) (y)\nif <<(FoundBlockSubtype) = [am]> or <(FoundBlockSubtype) = [an]>> then\n    if < (item (item (#Five) of [nearbyuniques v]) of [ent bon v]) contains ["]?> then\n        set [#fourteen v] to [32]\n    else\n        set [#fourteen v] to [-32]\n    end\n    set [#one v] to [1]\n    repeat until <(#One) = [0]>\n        ScanForUniqueAt ((x) + (#Fourteen)) (y)\n        if < (item (item (#Five) of [nearbyuniques v]) of [ent bon v]) contains ["]?> then\n            change [#fourteen v] by (32)\n        else\n            change [#fourteen v] by (-32)\n        end\n    end\n    set [#two v] to ((#Fourteen) + (1))\n    replace item (item (#Five) of [nearbyuniques v]) of [ent state v] with (([abs v] of (((#Two) / (32)) * (24)) ) + (0.2))\nend\nset [#fourteen v] to [32]\nset [#one v] to [1]\nrepeat until <(#One) = [0]>\n    ScanForUniqueAt ((x) + (#Fourteen)) (y)\n    Common2\n    change [#fourteen v] by (32)\nend\nset [#fourteen v] to [-32]\nset [#one v] to [1]\nrepeat until <(#One) = [0]>\n    ScanForUniqueAt ((x) + (#Fourteen)) (y)\n    Common2\n    change [#fourteen v] by (-32)\nend\n\ndefine ScanForUniqueAt (x) (y)\nset [#one v] to [0]\nrepeat (length of [ent x v])\n    change [#one v] by (1)\n    if <(item (#One) of [ent ty v]) = (FoundBlockSubtype)> then\n        if <<(item (#One) of [ent x v]) = (x)> and <(item (#One) of [ent y v]) = (y)>> then\n            stop [this script v]\n        end\n    end\nend\nset [#one v] to [0]\n\ndefine CreateEntity (x) (y) (direction) (type) (bonus) (state) (xvel) (yvel)\nadd (x) to [ent x v]\nadd (y) to [ent y v]\nadd (type) to [ent ty v]\nadd (xvel) to [ent x v v]\nadd (yvel) to [ent y v v]\nadd (state) to [ent state v]\nadd (bonus) to [ent bon v]\nadd (direction) to [ent dir v]\nadd [0] to [ent mo v]\n\ndefine TurnToPlayer\nif <([abs v] of ((X) - (PlayerX)) ) > (((8) - (<(Type) = [bi]> * (6))) + (<(Type) = [bj]> * (8)))> then\n    if <(PlayerX) > (X)> then\n        set [direction v] to [90]\n    else\n        set [direction v] to [-90]\n    end\nend\n\ndefine ScanNearbyEntities\nset [#sixteen v] to [0]\ndelete all of [nearbyentities v]\ndelete all of [nearbyuniques v]\nif <not <<(Type) = [s]> or <(Type) = [at]>>> then\n    set [#fifteen v] to (((HitboxWidth) + (([abs v] of (XVelocity) ) * (3))) + (<(Type) = [v]> * (8)))\n    set [#ten v] to (((HitboxHeight) + (8)) + (([abs v] of (YVelocity) ) * (2)))\n    set [#eight v] to <<<<<<(Frozen) = [1]> or <(Type) = [c]>> or <<(Type) = [ao]> or <(Type) = [eg]>>> or <<<(Type) = [y]> or <(Type) = [ey]>> and <(State) > [0]>>> or <<<<(Type) = [f]> or <(Type) = [ea]>> or <<(Type) = [h]> or <(Type) = [ac]>>> and <(State) > [1]>>> or <<<<(Type) = [cg]> or <(Type) = [cq]>> or <<<(Type) = [cw]> or <(Type) = [du]>> or <(Type) = [bu]>>> or <<<(Type) = [be]> or <(Type) = [af]>> or <<<(Type) = [ce]> or <(Type) = [dn]>> or <(Type) = [co]>>>>>\n    if <not <<(#Eight) = [1]> and <(PreviousFrameUniques) = [0]>>> then\n        repeat until <<not <(#Sixteen) < (length of [ent x v])>> or <(length of [nearbyentities v]) > [7]>>\n            change [#sixteen v] by (1)\n            set [#two v] to (item (#Sixteen) of [organised entity list v])\n            if <not <(EntityNo.) = (#Two)>> then\n                set [#thirteen v] to (item (#Two) of [ent ty v])\n                if <<<(#Thirteen) = [s]> or <<(#Thirteen) = [ez]> or <(#Thirteen) = [fa]>>> or <<(#Thirteen) = [bp]> or <(#Thirteen) = [br]>>> then\n                    add (#Two) to [nearbyuniques v]\n                else\n                    if <(item (#Two) of [ent x v]) < ((X) - (#Fifteen))> then\n                end\n            end\n        end\n    end\nend\n\ndefine DeleteThisEntity (key) (no.)\nset [#fifteen v] to [0]\nif <(no.) = []> then\n    if <<(Type) = [es]> or <(Type) = [et]>> then\n        ResetItemToPosition\n    else\n        add (EntityNo.) to [deleteentitylist v]\n        if <(key) = [1]> then\n            Key (EntityNo.)\n        end\n    end\nelse\n    add (no.) to [deleteentitylist v]\n    if <(key) = [1]> then\n        Key (no.)\n    end\nend\nif <(#Fifteen) = [1]> then\n    broadcast (FlashBackground v)\n    start sound [Warp v]\n    set [#fourteen v] to [13]\n    if <((Y) - (MapY)) > [120]> then\n        set [#fourteen v] to [4]\n    end\n    CreateEntity (X) (Y) [90] [dg] [0] [0] [0] (#Fourteen)\nend\n\ndefine CreateParticle (x) (y) (type)\nadd (type) to [createparticletype v]\nif <(x) = []> then\n    add (X) to [createparticlex v]\nelse\n    add (x) to [createparticlex v]\nend\nif <(y) = []> then\n    add (Y) to [createparticley v]\nelse\n    add (y) to [createparticley v]\nend\n\ndefine Hitbox (dieifsliding)\nif <([abs v] of ((X) - (PlayerX)) ) < (HitboxWidth)> then\n    set [#sixteen v] to ((Y) - (PreviousYPosition))\n    if <<<(YVelocity) > [18]> and <not <(YVelocity) = [x]>>> or <<(#Sixteen) < [0]> or <<<(Type) = [cc]> or <(Type) = [eu]>> or <<(Type) = [ds]> or <(Type) = [em]>>>>> then\n        set [#sixteen v] to [0]\n    end\n    if <<((Y) - (PlayerY)) > ((((HitboxHeight) - (#Sixteen)) - ((4) + (<<(PlayerYVelocity) > [4]> and <not <(Type) = [be]>>> * (4)))) * (-1))> and <((Y) - (PlayerY)) < ((PlayerHeight) - (2))>> then\n        if <(Type) = [em]> then\n            set [#one v] to (Direction)\n            set [#five v] to (X)\n            set [#six v] to (Y)\n            set [x v] to (PreviousXPosition)\n            set [y v] to (PreviousYPosition)\n            PointTowards (PlayerX) (PlayerY)\n            if <([abs v] of (PlayerXVelocity) ) < [20]> then\n                change [playerxvelocity v] by (([sin v] of (Direction) ) * (8))\n            end\n            if <(PlayerY) > (Y)> then\n                set [playeryvelocity v] to ((([cos v] of (Direction) ) * (13.3)) + (5.5))\n            else\n                set [playeryvelocity v] to (([cos v] of (Direction) ) * ((2) + (<(PlayerYVelocity) > [4]> * (4))))\n            end\n            set [x v] to (#Five)\n            set [y v] to (#Six)\n            set [direction v] to (#One)\n            if <<(State) = [0]> or <(State) > [4]>> then\n                start sound [Bump v]\n                set [state v] to [1]\n            end\n        else\n            if <<<(Type) = [en]> or <(Type) = [eo]>> and <(PlayerY) > ((PreviousYPosition) + (72))>> then\n                if <(PlayerYVelocity) < [15]> then\n                    if <not <(Powerup) = [M]>> then\n                        SimpleDeleteWithKey\n                        SimpleParticle (join (Type) (Direction))\n                    end\n                    set [playeryvelocity v] to [15]\n                    start sound [Stomp v]\n                end\n            else\n                if <<(Type) = [et]> or <(Type) = [es]>> then\n                    if <<(Invincible) = [0]> or <(Sliding) > [0]>> then\n                        SimpleParticle [BIce]\n                        SimpleDeleteWithKey\n                        if <not <(Sliding) > [0]>> then\n                            broadcast (Powerdown v)\n                        end\n                    end\n                else\n                    if <(Type) = [ec]> then\n                        SimpleDeleteWithKey\n                    else\n                        if <<(Sliding) > [0]> and <(dieifsliding) = [1]>> then\n                            if <(Type) = [y]> then\n                                if <(State) = [0]> then\n                                    start sound [dry bones v]\n                                    set [state v] to [1]\n                                end\n                            else\n                                start sound [hit1 v]\n                                SimpleDeleteWithKey\n                                DeathParticle []\n                            end\n                        else\n                            if <(StarTimer) > [0]> then\n                                if <not <<(Type) = [cc]> or <<(Type) = [ds]> or <(Type) = [eu]>>>> then\n                                    Delete+Key+Explode\n                                    start sound [hit1 v]\n                                end\n                            else\n                                if <<<(Powerup) = [S]> and <<(PowerupVariable ONE) = [1]> or <(Crouching) = [1]>>> and <not <[type - bosses v] contains (Type)?>>> then\n                                    if <<(PowerupVariable ONE) = [1]> and <(dieifsliding) = [1]>> then\n                                        start sound [hit1 v]\n                                        SimpleDeleteWithKey\n                                    end\n                                else\n                                    if <(Type) = [bj]> then\n                                        Delete+Key+Explode\n                                    end\n                                    if <(Invincible) = [0]> then\n                                        broadcast (Powerdown v)\n                                        if <(Type) = [di]> then\n                                            Delete+Key+Explode\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine Replace (part) ofBonusWith (input)\nset [#ten v] to []\nset [#nine v] to [0]\nrepeat (length of (Bonus))\n    change [#nine v] by (1)\n    if <(letter (#Nine) of (Bonus)) = (part)> then\n        set [#ten v] to (join (#Ten) (input))\n    else\n        set [#ten v] to (join (#Ten) (letter (#Nine) of (Bonus)))\n    end\nend\nset [bonus v] to (#Ten)\nset [#ten v] to [q]\n\ndefine PlatformsOffPlatform\nchange [yvelocity v] by (-0.39)\nif <(YVelocity) < [-10]> then\n    set [yvelocity v] to [-10]\nend\nif <<((Y) / (32)) < ((CurrentLavaLevel) + (0.5))> and <((Y) / (32)) > ((CurrentLavaLevel) + (-1))>> then\n    if <(YVelocity) < [-1]> then\n        set [yvelocity v] to [-1]\n        set [xvelocity v] to ((XVelocity) * (0.8))\n    end\nend\nif <([abs v] of (XVelocity) ) < [4]> then\n    set [xvelocity v] to ((XVelocity) * (1.02))\nend\nchange [x v] by (XVelocity)\nchange [y v] by (YVelocity)\nPointTowards (PreviousXPosition) (PreviousYPosition)\nTurnAround\nif <(round (XVelocity)) = [0]> then\n    set [direction v] to [180]\nend\n\ndefine PointTowards (x) (y)\nset [#two v] to ((x) - (X))\nset [#three v] to ((y) - (Y))\nif <(#Three) = [0]> then\n    if <(#Two) < [0]> then\n        set [direction v] to [-90]\n    else\n        set [direction v] to [90]\n    end\nelse\n    if <(#Three) < [0]> then\n        set [direction v] to ((180) + ([atan v] of ((#Two) / (#Three)) ))\n    else\n        set [direction v] to ([atan v] of ((#Two) / (#Three)) )\n    end\nend\n\ndefine Powerup (type)\nif <<([abs v] of ((X) - (PlayerX)) ) < [24]> and <<((Y) - (PlayerY)) > [-24]> and <((Y) - (PlayerY)) < ((PlayerHeight) - (2))>>> then\n    SimpleDeleteWithKey\n    if <(type) = [1]> then\n        change [lives v] by (1)\n        start sound [1up v]\n    else\n        if <(type) = [!]> then\n            set [startimer v] to [10]\n            stop all sounds\n            GetPowerup\n        else\n            if <<(type) = (Powerup)> or <<(type) = [B]> and <not <<(Powerup) = [N]> or <(Powerup) = [M]>>>>> then\n                start sound [Coin v]\n                if <(Powerup) = [C]> then\n                    set [powerupvariable one v] to [0]\n                end\n            else\n                set [powerup v] to (type)\n                GetPowerup\n            end\n        end\n    end\nend\n\ndefine ExtractOtherStuffFromBonus\nset [#eight v] to [0]\nset [#seven v] to []\nrepeat (length of (Bonus))\n    change [#eight v] by (1)\n    set [#one v] to (letter (#Eight) of (Bonus))\n    if <not <<<(#One) = [!]> or <(#One) = ["]>> or <<(#One) = [£]> or <<(#One) = [*]> or <<(#One) = [i]> and <not << (Bonus) contains [bi]?> or < (Bonus) contains [ei]?>>>>>>>> then\n        set [#seven v] to (join (#Seven) (#One))\n    end\nend\n\ndefine BlasterCanFire?\nset [#seven v] to [1]\nset [blockscanx v] to (((X) + ((#Two) / (2.8))) / (32))\nset [blockscany v] to (((Y) / (32)) + (0.3))\nrepeat (2)\n    BlockAt (BlockScanX) (((Y) / (32)) + (-0.3)) [Block] []\n    if <not <(FoundBlockType) = [i]>> then\n        set [#seven v] to [0]\n        stop [this script v]\n    end\n    change [blockscany v] by (-0.6)\nend\nset [#one v] to [0]\nrepeat (length of [ent x v])\n    change [#one v] by (1)\n    if <<<([abs v] of (((X) + ((#Two) / (2.8))) - (item (#One) of [ent x v])) ) < [20]> and <([abs v] of ((Y) - (item (#One) of [ent y v])) ) < [24]>> and <not <(EntityNo.) = (#One)>>> then\n        set [#seven v] to [0]\n        stop [this script v]\n    end\nend\n\ndefine SlowTurning (speed)\nif <(XVelocity) = [0]> then\n    set [state v] to ((((State) - (90)) * (-0.05)) + (90))\nend\nTurnToPlayer\nif <(Direction) = [90]> then\n    change [state v] by (speed)\n    if <(State) > [180]> then\n        set [state v] to [180]\n    end\nelse\n    change [state v] by ((speed) * (-1))\n    if <(State) < [0]> then\n        set [state v] to [0]\n    end\nend\nif <(State) < [90]> then\n    set [direction v] to [-90]\nelse\n    set [direction v] to [90]\nend\n\ndefine FixPiranhas\nif <(Type) = [cu]> then\n    change [y v] by (-32)\nelse\n    if < (Bonus) contains ["]?> then\n        set [direction v] to [0]\n        change [y v] by (16)\n        change [x v] by (48)\n    else\n        if < (Bonus) contains [£]?> then\n            set [direction v] to [180]\n            change [x v] by (-80)\n            change [y v] by (16)\n        else\n            if < (Bonus) contains [$]?> then\n                set [direction v] to [90]\n                change [y v] by (-64)\n            else\n                set [direction v] to [-90]\n                change [x v] by (-32)\n                change [y v] by (64)\n            end\n        end\n    end\nend\nset [state v] to [1]\nset [xvelocity v] to (X)\nset [yvelocity v] to (Y)\n\ndefine UniquesCollision (hv) (unique)\nif <((Y) - ((BlockScanY) * (32))) < ((28) - (<(hv) = [H]> * (([abs v] of ((item (item (#Five) of [nearbyuniques v]) of [ent y v v]) * (1.5)) ) + (4))))> then\n    if <([abs v] of ((X) - ((BlockScanX) * (32))) ) < (((HitboxWidth) + ((<<<(FoundBlockSubtype) = [s]> or <<(FoundBlockSubtype) = [ez]> or <(FoundBlockSubtype) = [fa]>>> or <<(FoundBlockSubtype) = [bp]> or <(FoundBlockSubtype) = [br]>>> * (32)) + (<(FoundBlockSubtype) = [bf]> * (12)))) - (<(hv) = [V]> * (([abs v] of ((item (item (#Five) of [nearbyuniques v]) of [ent x v v]) * (1)) ) + (2))))> then\n        if <((Y) - ((BlockScanY) * (32))) > (((HitboxHeight) * (-1)) + (<(hv) = [H]> * (([abs v] of ((item (item (#Five) of [nearbyuniques v]) of [ent y v v]) * (2)) ) + (2))))> then\n            set [#fourteen v] to (YVelocity)\n            set [foundblocktype v] to [Unique]\n            set [collidingblocktype v] to [x]\n            CollideWithThis (hv) []\n            if <((BlockScanY) * (32)) > (Y)> then\n                if <not <(Type) = [Player]>> then\n                    if <([abs v] of ((X) - ((BlockScanX) * (32))) ) < [28]> then\n                        Is (#Sixteen)\n                        if <(#Eleven) = [1]> then\n                            if <not < (item (item (#Five) of [nearbyuniques v]) of [ent bon v]) contains [!]?>> then\n                                set [yvelocity v] to (#Fourteen)\n                                Is (Type)\n                                if <(#Eleven) = [1]> then\n                                    replace item (item (#Five) of [nearbyuniques v]) of [ent y v v] with (#Fourteen)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n            if <<(Y) > (((BlockScanY) * (32)) + (27.5))> and <(Y) < (((BlockScanY) * (32)) + (28.5))>> then\n                set [#one v] to (item (item (#Five) of [nearbyuniques v]) of [ent x v v])\n                if <(YVelocity) = [0]> then\n                    if <(Type) = [Player]> then\n                        if <<(FoundBlockSubtype) = [bp]> or <(FoundBlockSubtype) = [fa]>> then\n                            replace item (item (#Five) of [nearbyuniques v]) of [ent state v] with [1]\n                        end\n                        if <<(FoundBlockSubtype) = [r]> or <<(FoundBlockSubtype) = [al]> or <<(FoundBlockSubtype) = [am]> or <(FoundBlockSubtype) = [an]>>>> then\n                            if <((item (item (#Five) of [nearbyuniques v]) of [ent state v]) mod (1)) = [0]> then\n                                replace item (item (#Five) of [nearbyuniques v]) of [ent state v] with [2.1]\n                                ActivateThisSkull (item (item (#Five) of [nearbyuniques v]) of [ent x v]) (item (item (#Five) of [nearbyuniques v]) of [ent y v])\n                            end\n                        end\n                    end\n                    if <not <(#One) = [0]>> then\n                        Is (#Sixteen)\n                        if <not <<(#Eleven) = [1]> and <(StayStill) = [0.5]>>> then\n                            if <not <<<(#Sixteen) = [am]> or <(#Sixteen) = [an]>> and <(Type) = [Player]>>> then\n                                if <([abs v] of (#One) ) > ([abs v] of (Movement) )> then\n                                    set [movement v] to (#One)\n                                end\n                            end\n                        end\n                    end\n                    if <<(MovedByEnvironment) = [0]> and <(StayStill) = [0]>> then\n                        if <(#Sixteen) = [m]> then\n                            set [staystill v] to (item (#Five) of [nearbyuniques v])\n                            set [movedbyenvironment v] to [1]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine InPosition\nset [inpositiontopickup v] to [1]\nif <not <<<(PlayerDirection) = [90]> and <(PreviousXPosition) > (PlayerX)>> or <<(PlayerDirection) = [-90]> and <(PlayerX) > (PreviousXPosition)>>>> then\n    set [inpositiontopickup v] to [0]\nend\nif <(InPositionToPickup) = [1]> then\n    set [inpositiontopickup v] to <<([abs v] of ((PreviousXPosition) - ((PlayerX) + ((PlayerXVelocity) * (2)))) ) < ((HitboxWidth) + (4))> and <([abs v] of ((PreviousXPosition) - (PlayerX)) ) > ((HitboxWidth) - (10))>>\n    if <(InPositionToPickup) = [1]> then\n        set [inpositiontopickup v] to <<<<<(Climbing) = [0]> and <not <[deleteentitylist v] contains (EntityNo.)?>>> and <not <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>>>> and <([abs v] of ((PreviousYPosition) - (PlayerY)) ) < [16]>> and <<(MoveUseAbility) = [1]> and <<(Holding) = [0]> and <(Crouching) = [0]>>>>\n    end\nend\n\ndefine ReorganiseEntityList\ndelete all of [organised entity list v]\nset [#one v] to [0]\nrepeat (length of [ent x v])\n    change [#one v] by (1)\n    set [x v] to (item (#One) of [ent x v])\n    if <(length of [organised entity list v]) = [0]> then\n        insert (#One) at (1) of [organised entity list v] \n    else\n        set [#two v] to [1]\n        repeat until <<(item (item (#Two) of [organised entity list v]) of [ent x v]) > ((X) - (0.001))> or <(#Two) > (length of [organised entity list v])>>\n            change [#two v] by (1)\n        end\n        insert (#One) at (#Two) of [organised entity list v] \n    end\nend\n\ndefine FrozenInt (ent)\nif < (item (ent) of [ent bon v]) contains [\(]?> then\n    CreateParticle (item (ent) of [ent x v]) (item (ent) of [ent y v]) [BIce]\n    start sound [ICEBREAK v]\nend\n\ndefine DeathParticle (ent)\nif <(ent) = []> then\n    SimpleParticle (join [De] (Type))\nelse\n    CreateParticle (item (ent) of [ent x v]) (item (ent) of [ent y v]) (join [De] (item (ent) of [ent ty v]))\nend\n\ndefine POW\nset [entityno. v] to [0]\nrepeat (length of [ent x v])\n    change [entityno. v] by (1)\n    set [x v] to (item (EntityNo.) of [ent x v])\n    set [y v] to (item (EntityNo.) of [ent y v])\n    set [type v] to (item (EntityNo.) of [ent ty v])\n    if <<not <<[type - uniques v] contains (Type)?> or <[type - powerups v] contains (Type)?>>> or <<<(Type) = [m]> or <(Type) = [bj]>> or <(Type) = [be]>>> then\n        if <not <<(Type) = [t]> or <(Type) = [ae]>>> then\n            DeathParticle []\n            DeleteThisEntity [1] []\n        end\n    end\nend\n\nwhen I receive [pow v]\nset [pow v] to [1]\nif <(CameraShake) = [0]> then\n    set [camerashake v] to [1]\nend\nPOW\n\ndefine BossTakesDamage (ent) (damage) (type)\nset [#cus3 v] to (item (ent) of [ent ty v])\nif <(#Fourteen) = [0]> then\n    if <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n        if <<(item (ent) of [ent state v]) < [0]> and <not <(#Cus3) = [ce]>>> then\n            stop [this script v]\n        else\n            set [playerdirection v] to ((PlayerDirection) * (-1))\n            set [playerxvelocity v] to ((PlayerXVelocity) * (-1))\n        end\n    end\nend\nif <(#Cus4) = [es]> then\n    replace item (#Fourteen) of [ent state v] with [-94]\nend\nset [#sixteen v] to (letter (length of (Bonus)) of (Bonus))\nif <not <(#Sixteen) < [10]>> then\n    set [bonus v] to (join (Bonus) [0])\n    BossTakesDamage (ent) (damage) (type)\n    stop [this script v]\nend\nif <not <(item (#Two) of [entinttype v]) = []>> then\n    start sound [hit1 v]\nend\nif <((#Sixteen) + (damage)) > [9]> then\n    Replace (#Sixteen) ofBonusWith [9]\nelse\n    Replace (#Sixteen) ofBonusWith ((#Sixteen) + (damage))\nend\nreplace item (ent) of [ent bon v] with (Bonus)\nif <(type) = [-1]> then\n    replace item (ent) of [ent state v] with [-1]\nelse\n    if <(#Cus3) = [ce]> then\n        change [y v] by (16)\n        ExplodeParticle\n        change [y v] by (-16)\n        if <((#Sixteen) + (damage)) > [9]> then\n            DeleteThisEntity [1] (ent)\n            ExplodeParticle\n        end\n    else\n        replace item (ent) of [ent y v v] with [0.1]\n        if <(damage) > [2]> then\n            replace item (ent) of [ent state v] with [-1]\n        else\n            if <(#Cus3) = [cg]> then\n                replace item (ent) of [ent state v] with [-0.3]\n            else\n                if <((#Sixteen) + (damage)) > [9]> then\n                    if <(item (ent) of [ent state v]) > [0]> then\n                        replace item (ent) of [ent state v] with [-1]\n                    end\n                end\n            end\n        end\n        change [y v] by (16)\n        SimpleParticle [Skid]\n        change [y v] by (-16)\n    end\nend\n\nwhen I receive [rendermidgroundblocks v]\nif <(Edit/PlayMode) = [1]> then\n    if <not <(length of [renderinbackgroundentities v]) = [0]>> then\n        RenderEntities [Back]\n    end\nend\n\ndefine ThisMelts\nInteract (X) (Y) [Melt]\n\ndefine IsPlayerAbove\nset [#sixteen v] to [0]\nif <<<([abs v] of ((PlayerX) - (PreviousXPosition)) ) < [28]> and <([abs v] of ((PlayerY) - (((PreviousYPosition) + (28)) + (< (Bonus) contains [\)]?> * (32)))) ) < [4]>> and <<(PlayerYVelocity) = [0]> or <(PlayerYVelocity) = [-0.69]>>> then\n    if <not <<((PreviousXPosition) - (X)) = [0]> and <((PreviousYPosition) - (Y)) = [0]>>> then\n        set [#sixteen v] to [1]\n    end\nend\n\ndefine XVel0\nif <not <<(YVelocity) > [8]> and <<(#Cus2) < ((Y) - (24))> or <not <(CollidingBlockType) = [x]>>>>> then\n    set [xvelocity v] to [0]\nend\n\ndefine Key (no)\nif < (item (no) of [ent bon v]) contains [af]?> then\n    CreateParticle [] ((Y) + (8)) [af]\n    replace item (no) of [ent bon v] with []\nend\nif < (item (no) of [ent bon v]) contains [dg]?> then\n    SimpleParticle [Ball]\n    replace item (no) of [ent bon v] with []\n    set [#fifteen v] to [1]\nend\n\ndefine XVel (d)\nset [xvelocity v] to ((XVelocity) / (d))\n\ndefine MeltFrozCoin\nif <<(Type) = [by]> or <<(Type) = [ao]> or <(Type) = [cw]>>> then\n    Interact (#Cus1) (#Cus2) [Melt]\nend\n\ndefine StandardColl (hv)\nSimpleBlockScan [1]\nCollideWithThis (hv) []\nif <<not <(hv) = [H]>> and <(BlockScanY) < (((Y) / (32)) - (0.4))>> then\n    BlockAt (BlockScanX) (BlockScanY) [Semi] [1]\n    CollideWithThis (hv) [Semi]\nend\n\ndefine SetVars (no)\nset [type v] to (item (no) of [ent ty v])\nset [x v] to (item (no) of [ent x v])\nset [y v] to (item (no) of [ent y v])\nset [xvelocity v] to (item (no) of [ent x v v])\nset [yvelocity v] to (item (no) of [ent y v v])\nset [state v] to (item (no) of [ent state v])\nset [bonus v] to (item (no) of [ent bon v])\nset [direction v] to (item (no) of [ent dir v])\nset [movement v] to (item (no) of [ent mo v])\n\ndefine Group (horv)\nset [blockscanx v] to ((X) / (32))\nStandardColl (horv)\nset [blockscanx v] to (((X) / (32)) + (0.8))\nStandardColl (horv)\nset [blockscanx v] to (((X) / (32)) + (-0.8))\nStandardColl (horv)\n\ndefine KillInteraction\nif <[type - powerups v] contains (Type)?> then\n    if <(#Cus2) = [0]> then\n        if <(#Twelve) = [BlockBounce]> then\n            replace item (#Cus1) of [ent y v v] with [10.5]\n        else\n            replace item (#Cus1) of [ent y v v] with [6.7]\n        end\n    end\nelse\n    if <<(Type) = [ae]> and <(#Twelve) = [Crush]>> then\n        if <(State) = [0]> then\n            replace item (#Cus1) of [ent state v] with [1]\n            set [ptimer v] to [10]\n            broadcast (MidGameUpdateScroll v)\n            stop all sounds\n        end\n    else\n        if <<(Type) = [ea]> and <(#Twelve) = [Tail]>> then\n            Replace ["] ofBonusWith [^]\n            Replace [£] ofBonusWith [&]\n            replace item (#Cus1) of [ent bon v] with (Bonus)\n            replace item (#Cus1) of [ent x v v] with [0]\n            replace item (#Cus1) of [ent y v v] with [6.7]\n            replace item (#Cus1) of [ent state v] with [1]\n        else\n            if <<(Type) = [az]> or <<(Type) = [t]> or <(Type) = [ae]>>> then\n                if <(#Cus2) = [0]> then\n                    if <(#Twelve) = [Crush]> then\n                        replace item (#Cus1) of [ent y v v] with [10.5]\n                    end\n                end\n            else\n                if <<(Type) = [p]> and <(#Cus4) = [ec]>> then\n                    if <(#Cus2) = [0]> then\n                        if <(State) = [0]> then\n                            replace item (#Cus1) of [ent y v v] with [6.7]\n                            replace item (#Cus1) of [ent state v] with [1]\n                        end\n                    end\n                else\n                    if <<<<(Type) = [ac]> or <(Type) = [f]>> or <<(Type) = [h]> or <(Type) = [ea]>>> and <<(#Twelve) = [BlockBounce]> or <(#Cus4) = [ec]>>> then\n                        replace item (#Cus1) of [ent y v v] with [6]\n                        if <(State) = [1]> then\n                            replace item (#Cus1) of [ent state v] with [2]\n                        else\n                            replace item (#Cus1) of [ent state v] with [1]\n                        end\n                        if <(#Cus4) = [ec]> then\n                            replace item (#Cus1) of [ent state v] with [1]\n                        end\n                        if <(X) > (item (#Two) of [entintx v])> then\n                            replace item (#Cus1) of [ent dir v] with [90]\n                        else\n                            replace item (#Cus1) of [ent dir v] with [-90]\n                        end\n                    else\n                        if <<(Type) = [y]> or <<(Type) = [ey]> and <not <(#Cus4) = [ey]>>>> then\n                            if <(State) < [1]> then\n                                replace item (#Cus1) of [ent state v] with [1]\n                                if <(Type) = [ey]> then\n                                    start sound [Stomp v]\n                                else\n                                    start sound [dry bones v]\n                                end\n                                GetOffTrack\n                            end\n                        else\n                            if <[type - bosses v] contains (Type)?> then\n                                BossTakesDamage (#Cus1) [1] []\n                                if <not <<(#Twelve) = [Crush]> or <(#Cus4) = [es]>>> then\n                                    DeleteThisEntity [1] (#Fourteen)\n                                end\n                            else\n                                start sound [hit1 v]\n                                DeleteThisEntity [1] (#Cus1)\n                                DeathParticle (#Cus1)\n                                FrozenInt (#Cus1)\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine ExplodeParticle\nSimpleParticle [Explode]\n\ndefine MoveSteps (amount) (xorv)\nif <(xorv) = [X]> then\n    change [x v] by (([sin v] of (Direction) ) * (amount))\n    change [y v] by (([cos v] of (Direction) ) * (amount))\nelse\n    if <(xorv) = [X1]> then\n        change [x v] by (([cos v] of (Direction) ) * ((amount) * (-1)))\n        change [y v] by (([sin v] of (Direction) ) * (amount))\n    else\n        set [xvelocity v] to (([sin v] of (Direction) ) * (amount))\n        set [yvelocity v] to (([cos v] of (Direction) ) * (amount))\n    end\nend\n\ndefine SimpleParticle (type)\nCreateParticle [] [] (type)\n\ndefine RoundPos\nset [x v] to ((round ((X) / (32))) * (32))\nset [y v] to ((round ((Y) / (32))) * (32))\n\ndefine EdgeBounce\nXVel [2]\nif <<(Powerup) = [S]> and <(PowerupVariable ONE) = [1]>> then\n    if <((X) - (MapX)) > [0]> then\n        set [direction v] to [-90]\n    else\n        set [direction v] to [90]\n    end\n    set [xvelocity v] to ((Direction) / (9))\nend\n\ndefine Common\nset rotation style [don't rotate v]\nswitch costume to (large v)\ngo to x: (X) y: ((Y) + (4))\nswitch costume to (ice2 v)\n\ndefine Common2\nif <not <(#One) = [0]>> then\n    if <<(FoundBlockSubtype) = [am]> or <(FoundBlockSubtype) = [an]>> then\n        replace item (#One) of [ent state v] with (([abs v] of ((((#Two) - (#Fourteen)) / (32)) * (24)) ) + (0.2))\n    else\n        replace item (#One) of [ent state v] with (((#Fourteen) / (2)) + (0.1))\n    end\nend\n\ndefine Common3\nif <(Type) = [Player]> then\n    set [blockscanx v] to (((item (#Cus4) of [ent x v]) - (item (#Cus4) of [ent x v v])) / (32))\nelse\n    set [blockscanx v] to (((item (#Cus4) of [ent x v]) + (item (#Cus4) of [ent mo v])) / (32))\nend\nset [blockscany v] to ((item (#Cus4) of [ent y v]) / (32))\nset [foundblocksubtype v] to (#Sixteen)\nif <(Type) = [Player]> then\n    if <(item (#Cus4) of [ent y v v]) < (PlayerPreviousStandingYVelocity)> then\n        set [playerpreviousstandingyvelocity v] to (item (#Cus4) of [ent y v v])\n    end\nend\n\ndefine IsPosOnAlt\nset [#cus2 v] to [0]\nset [#cus3 v] to ((([floor v] of (((MapX) - (336)) / (320)) ) * (320)) + (32))\nset [#cus4 v] to ((([floor v] of (((MapY) - (160)) / (320)) ) * (320)) + (32))\nif <<(X) > ((#Cus3) - (33))> and <(X) < ((#Cus3) + ((960) - (<(((MapX) mod (320)) - (16)) = [0]> * (320))))>> then\n    if <<(Y) > ((#Cus4) - (33))> and <(Y) < ((#Cus4) + (640))>> then\n        set [#cus2 v] to [1]\n    end\nend\n\ndefine CollideAndMove\nif <not <(Type) = [Player]>> then\n    set [uplimit v] to ((Y) + (26))\n    set [downlimit v] to ((Y) - (24))\n    set [rightlimit v] to ((X) + (48))\n    set [leftlimit v] to ((X) - (48))\nend\nif <<([abs v] of (YVelocity) ) > [8]> or <([abs v] of (XVelocity) ) > [6]>> then\n    repeat (2)\n        change [x v] by ((XVelocity) / (2))\n        Collision [H] []\n        change [y v] by ((YVelocity) / (2))\n        Collision [V] []\n    end\nelse\n    if <<<(YVelocity) = [-0.69]> or <(YVelocity) = [-0.79]>> and <<(length of [nearbyuniques v]) > [0]> and <not <(Type) = [Player]>>>> then\n        change [y v] by (YVelocity)\n        Collision [V] []\n        change [x v] by (XVelocity)\n        Collision [H] []\n    else\n        change [x v] by (XVelocity)\n        Collision [H] []\n        change [y v] by (YVelocity)\n        Collision [V] []\n    end\nend\n\ndefine Thrown\nif <<([abs v] of ((X) - (MapX)) ) < [240]> and <([abs v] of ((Y) - (MapY)) ) < [180]>> then\n    change [thrownentities v] by (1)\nend\n\ndefine SimpleBlockScan (sub)\nBlockAt (BlockScanX) (BlockScanY) [] (sub)\n\ndefine GetOffTrack\nReplace [!] ofBonusWith []\nReplace [*] ofBonusWith []\nif <not <([abs v] of (Direction) ) = [90]>> then\n    SetDirectionOffTrack\nend\n\ndefine Is (type)\nset [#eleven v] to <<<(type) = [m]> or <(type) = [bz]>> or <<<(type) = [v]> or <(type) = [ev]>> or <<(join (letter (1) of (type)) (letter (2) of (type))) = [bh]> or <(join (letter (1) of (type)) (letter (2) of (type))) = [ca]>>>>\n\ndefine TurnAround\nset [direction v] to ((Direction) * (-1))\n\ndefine GetPowerup\nif <(Powerup) = [M]> then\n    start sound [nsmbwiiMiniMushroom v]\nelse\n    start sound [Powerup v]\nend\nset [invincible v] to [1]\nset [crouching v] to [1]\nset [spacepause v] to [1]\n\ndefine TurnAtEdge (height)\nset [#twelve v] to (DownLimit)\nset [#eight v] to (Y)\nchange [y v] by (height)\nchange [x v] by ((Direction) / (9))\nCollision [V] []\nchange [x v] by ((Direction) / (-9))\nif <(Y) = ((#Eight) + (height))> then\n    TurnAround\n    XVel [-1]\nend\nset [downlimit v] to (#Twelve)\nset [y v] to (#Eight)\n\ndefine ApproachSpeed (elasticity) (speed)\nchange [xvelocity v] by (((XVelocity) - ((speed) * ((Direction) / (90)))) / (elasticity))\n\ndefine SimpleDeleteWithKey\nDeleteThisEntity [1] []\n\ndefine Delete+Key+Explode\nSimpleDeleteWithKey\nExplodeParticle\n\ndefine TryPowerup (type) (power)\nif <(Type) = (type)> then\n    Powerup (power)\n    IamEnvironmental\n    set [#one v] to [z]\nend\n\ndefine Both (hit)\nHitbox (hit)\nIamEnvironmental\n\ndefine SetDirectionOffTrack\nif <<(Direction) > [0]> and <(Direction) < [180]>> then\n    set [direction v] to [90]\nelse\n    set [direction v] to [-90]\nend\n\ndefine ResetItemToPosition\nExtractOtherStuffFromBonus\nif <<(Y) < ((((#Seven) mod (WorldHeight)) * (32)) - (512))> or <<(Type) = [es]> or <(Type) = [et]>>> then\n    if <(Type) = [ar]> then\n        set [state v] to [1]\n        Replace [*] ofBonusWith [!]\n        replace item (EntityNo.) of [ent bon v] with (Bonus)\n    else\n        set [state v] to [-92]\n    end\n    set [xvelocity v] to [0]\n    set [yvelocity v] to [0]\n    set [x v] to ((([floor v] of ((#Seven) / (WorldHeight)) ) + (1)) * (32))\n    set [y v] to (((#Seven) mod (WorldHeight)) * (32))\nelse\n    change [y v] by (-2)\nend\nreplace item (EntityNo.) of [ent x v] with (X)\nreplace item (EntityNo.) of [ent y v] with (Y)\nreplace item (EntityNo.) of [ent x v v] with (XVelocity)\nreplace item (EntityNo.) of [ent y v v] with (YVelocity)\nreplace item (EntityNo.) of [ent state v] with (State)\n\ndefine JumpOffTrack\nif <(Type) = [co]> then\n    GetOffTrack\n    set [xvelocity v] to [0]\n    SetDirectionOffTrack\nelse\n    Replace [!] ofBonusWith [*]\nend\nset [xvelocity v] to ((XVelocity) * (1.7))\nif <(YVelocity) > [0]> then\n    set [yvelocity v] to ((YVelocity) * (1.9))\nelse\n    set [yvelocity v] to [0]\nend\nif <(Direction) = [180]> then\n    change [y v] by (-4)\nend\n\ndefine TurnSlowlyTo (speed) (player)\npoint in direction (Direction)\nset [direction v] to (direction)\nset [#five v] to (Direction)\nif <(player) = [2]> then\n    SetDirectionOffTrack\nelse\n    PointTowards (PlayerX) (PlayerY)\nend\npoint in direction (Direction)\nset [#three v] to (direction)\npoint in direction (90)\nset [direction v] to (#Five)\nset [#one v] to [3]\nif <<(Type) = [fc]> and <(player) = []>> then\n    if <<([abs v] of ((#Three) - (Direction)) ) > [90]> or <<(PlayerUnderwater) = [0]> or <([abs v] of ((PlayerX) - (X)) ) > [224]>>> then\n        set [state v] to [0.4]\n        TurnSlowlyTo [2] [2]\n        if <([abs v] of (round ((Direction) / (3))) ) = [30]> then\n            SetDirectionOffTrack\n        end\n        stop [this script v]\n    end\nend\nif <([abs v] of ((#Three) - (Direction)) ) > [2]> then\n    if <([abs v] of ((#Three) - (Direction)) ) > [180]> then\n        if <((#Three) - (Direction)) > [0]> then\n            change [direction v] by ((speed) * (-1))\n        else\n            change [direction v] by (speed)\n        end\n    else\n        if <((#Three) - (Direction)) > [0]> then\n            change [direction v] by (speed)\n        else\n            change [direction v] by ((speed) * (-1))\n        end\n    end\nend\n\n@Player\n\nwhen I receive [playerupdate v]\nchange [groundshaking v] by ((-1) / (30))\nif <not <(GroundShaking) > [0]>> then\n    set [groundshaking v] to [0]\nend\nif <(AllowMovement) = [1]> then\n    if <<(Dead) = [0]> and <(HitGoal) = [0]>> then\n        if <(Edit/PlayMode) = [1]> then\n            change [timeleft v] by ((-1) / (30))\n            if <<(TimeLeft) < [100.1]> and <(HurriedUp) = [0]>> then\n                set [hurriedup v] to [0.5]\n                stop all sounds\n                broadcast (PlayMusic v)\n            end\n        end\n    end\n    if <not <(TimeLeft) > [0]>> then\n        if <<(Dead) = [0]> and <(HitGoal) = [0]>> then\n            broadcast (Death v)\n        end\n        set [timeleft v] to [0]\n    end\n    if <(PTimer) > [0]> then\n        change [ptimer v] by ((-1) / (30))\n        if <not <(PTimer) > [0]>> then\n            broadcast (MidGameUpdateScroll v)\n            set [ptimer v] to [0]\n            if <<(StarTimer) = [0]> and <(HitGoal) = [0]>> then\n                stop all sounds\n                broadcast (PlayMusic v)\n            end\n        end\n    end\n    change [invincible v] by ((-1) / (30))\n    if <(Invincible) < [0]> then\n        set [invincible v] to [0]\n    end\n    if <(StarTimer) > [0]> then\n        change [startimer v] by ((-1) / (30))\n        set [invincible v] to [0.02]\n        if <not <(StarTimer) > [0]>> then\n            set [startimer v] to [0]\n            if <<(PTimer) = [0]> and <(HitGoal) = [0]>> then\n                stop all sounds\n                broadcast (PlayMusic v)\n            end\n        end\n    end\n    change [kicking v] by (-1)\n    if <(Kicking) < [0]> then\n        set [kicking v] to [0]\n    end\n    if <(Holding) = [p]> then\n        change [holdingstate v] by (1)\n    end\n    if <(Holding) = [ey]> then\n        change [holdingstate v] by (0.5)\n    end\nend\nif <(Edit/PlayMode) = [0]> then\n    if <(GameTimer) < [0.02]> then\n        Go\n    else\n        if <([abs v] of (x position) ) > [180]> then\n            set x to (0)\n        end\n        if <(y position) < [-150]> then\n            set y to (0)\n        end\n        set [playerx v] to ((MapX) + (x position))\n        set [playery v] to ((MapY) + (y position))\n    end\n    broadcast (ClearPlayerVariables v)\nend\nbroadcast (InteractionsUpdate v)\n\nwhen I receive [renderfrontitems v]\nif <(UsingPipe) < [2]> then\n    Render\nend\nbroadcast (UIUpdate v)\n\nwhen I receive [flagclicked v]\nswitch costume to (costume2 v)\nset rotation style [left-right v]\nset size to (400) %\nhide\ngo to x: (0) y: (-4)\n\ndefine SelectPlayerCostume\nset [#cus1 v] to [0]\nif <<(Invincible) > [0.1]> and <(AllowMovement) = [1]>> then\n    if <(([floor v] of ((Invincible) * (8)) ) mod (2)) = [0]> then\n        set [ghost v] effect to (100)\n    end\nend\nif <(HitGoal) = [1]> then\n    if <<(GoalHitX) = [0]> and <(x position) > [237]>> then\n        set [ghost v] effect to (100)\n    end\nend\nif <(UsingDoor) = [1]> then\n    set [#cus1 v] to [Idle]\nelse\n    if <(Dead) = [1]> then\n        switch costume to (deadn v)\n    else\n        if <(Climbing) = [1]> then\n            Costume [Climb] [15] [2]\n        else\n            if <not <(Holding) = [0]>> then\n                if <<(PlayerYVelocity) = [0]> or <(PlayerYVelocity) = [-0.79]>> then\n                    if <([abs v] of (PlayerXVelocity) ) < [0.05]> then\n                        switch costume to (join (join [Hold] (Powerup)) [4])\n                        set [playertimer v] to [0]\n                    else\n                        if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n                            Costume [Hold] [15] [2]\n                        else\n                            Costume [Hold] [20] [4]\n                        end\n                    end\n                else\n                    if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n                        set [#cus1 v] to [HoldJump]\n                    else\n                        switch costume to (join (join [Swim] (Powerup)) [4])\n                    end\n                end\n            else\n                if <(Throwing) > [2]> then\n                    if <not <(PlayerYVelocity) = [0]>> then\n                        set [#cus1 v] to [Glide]\n                    else\n                        if <(Throwing) > [4]> then\n                            set [#cus1 v] to [Throw1]\n                        else\n                            set [#cus1 v] to [Throw2]\n                        end\n                    end\n                else\n                    if <(PowerupVariable ONE) > [0]> then\n                        if <(Powerup) = [R]> then\n                            switch costume to (join [SpinR] (([floor v] of ((((10) - (PowerupVariable ONE)) * (0.5)) mod (4)) ) + (1)))\n                            stop [this script v]\n                        end\n                        if <(Powerup) = [S]> then\n                            switch costume to (join [Shell] (([floor v] of (((GameTimer) * (48)) mod (4)) ) + (1)))\n                            stop [this script v]\n                        end\n                        if <(Powerup) = [U]> then\n                            switch costume to (slideu2 v)\n                            stop [this script v]\n                        end\n                        if <(Powerup) = [P]> then\n                            change [playertimer v] by (0.01)\n                            Costume [Spin] [32] [4]\n                            stop [this script v]\n                        end\n                    end\n                    if <(PowerupVariable TWO) > [0]> then\n                        if <(Powerup) = [C]> then\n                            if <([abs v] of (PlayerXVelocity) ) < [1]> then\n                                change [playertimer v] by (0.01)\n                            end\n                            Costume [Spin] [20] [4]\n                            stop [this script v]\n                        end\n                    end\n                    if <(PowerupVariable THREE) > [0]> then\n                        if <(Powerup) = [R]> then\n                            if <([abs v] of (PlayerXVelocity) ) < [1]> then\n                                change [playertimer v] by (0.01)\n                            end\n                            if <(PowerupVariable TWO) = [0]> then\n                                Costume [Float] [32] [3]\n                            else\n                                Costume [Fly] [32] [3]\n                            end\n                            stop [this script v]\n                        end\n                        if <(Powerup) = [P]> then\n                            if <([abs v] of (PlayerXVelocity) ) < [1]> then\n                                change [playertimer v] by (0.01)\n                            end\n                            Costume [Spin] [32] [4]\n                            stop [this script v]\n                        end\n                    end\n                    if <(Kicking) > [0]> then\n                        set [#cus1 v] to [Kick]\n                    else\n                        if <(Skidding) = [1]> then\n                            set [#cus1 v] to [Skid]\n                        else\n                            if <(Crouching) = [1]> then\n                                if <(Sliding) > [0]> then\n                                    set [#cus1 v] to [Slide]\n                                else\n                                    set [#cus1 v] to [Crouch]\n                                end\n                                set [playertimer v] to [0]\n                            else\n                                if <<(PlayerYVelocity) = [0]> or <(PlayerYVelocity) = [-0.79]>> then\n                                    if <([abs v] of (PlayerXVelocity) ) < [0.05]> then\n                                        set [#cus1 v] to [Idle]\n                                        set [playertimer v] to [0]\n                                    else\n                                        if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n                                            if <([abs v] of (PlayerXVelocity) ) > [8.5]> then\n                                                Costume [Run] [15] [2]\n                                            else\n                                                Costume [Walk] [20] [2]\n                                            end\n                                        else\n                                            if <<([abs v] of (PlayerXVelocity) ) > [8.5]> and <not <<(Powerup) = [O]> or <(Powerup) = [S]>>>> then\n                                                Costume [Run] [20] [4]\n                                            else\n                                                Costume [Walk] [20] [4]\n                                            end\n                                        end\n                                    end\n                                else\n                                    if <(PlayerUnderwater) = [1]> then\n                                        if <<(Powerup) = [O]> or <(Powerup) = [U]>> then\n                                            if <(([abs v] of (PlayerXVelocity) ) + (1.5)) < ([abs v] of (PlayerYVelocity) )> then\n                                                if <(PlayerYVelocity) > [0]> then\n                                                    Costume [SwimUp] [15] [3]\n                                                else\n                                                    Costume [SwimDown] [15] [3]\n                                                end\n                                            else\n                                                Costume [Swim] [15] [3]\n                                            end\n                                        else\n                                            if <<(Powerup) = [N]> or <(Powerup) = [M]>> then\n                                                Costume [Swim] [15] [4]\n                                            else\n                                                Costume [Swim] [15] [5]\n                                            end\n                                        end\n                                    else\n                                        if <([abs v] of (PlayerXVelocity) ) > [8.5]> then\n                                            set [#cus1 v] to [Glide]\n                                            set [playertimer v] to [0]\n                                        else\n                                            if <<<(Powerup) = [N]> or <(Powerup) = [M]>> or <(PlayerYVelocity) > [-3]>> then\n                                                set [#cus1 v] to [Jump]\n                                                set [playertimer v] to [0]\n                                            else\n                                                switch costume to (join (join [Walk] (Powerup)) [2])\n                                                set [playertimer v] to [0]\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nif <not <(#Cus1) = [0]>> then\n    switch costume to (join (#Cus1) (Powerup))\nend\n\ndefine Costume (type) (speed) (frames)\nswitch costume to (join (join (type) (Powerup)) (([floor v] of (((PlayerTimer) * (speed)) mod (frames)) ) + (1)))\n\nwhen I receive [renderbackgroundblocks v]\nif <(AllowMovement) = [0]> then\n    change [playertimer v] by (0.004)\nelse\n    change [playertimer v] by ((0.004) + (([abs v] of (PlayerXVelocity) ) / (400)))\n    set [dead v] to [0]\n    if <((PlayerY) - (MapY)) < [-240]> then\n        if <(HitGoal) = [1]> then\n            set [playery v] to ((MapY) - (240))\n        else\n            change [playery v] by (-120)\n            broadcast (Death v)\n        end\n    end\nend\nset rotation style [left-right v]\npoint in direction (PlayerDirection)\nchange [throwing v] by (-1)\nif <(Shadows) = [1]> then\n    change [mapx v] by (-8)\n    change [mapy v] by (8)\n    set [brightness v] effect to (-100)\n    set [ghost v] effect to (50)\n    switch costume to (large v)\n    Go\n    SelectPlayerCostume\n    stamp\n    StampPropeller\n    change [mapx v] by (8)\n    change [mapy v] by (-8)\nend\n\ndefine Render\nclear graphic effects\nswitch costume to (large v)\nGo\nSelectPlayerCostume\nif <(StarTimer) > [0]> then\n    set [color v] effect to ((round ((GameTimer) * (33))) * (25))\nend\nstamp\nif <(Powerup) = [C]> then\n    switch costume to (large v)\n    Go\n    change x by (((PlayerDirection) / (-8)) - (PlayerXVelocity))\n    change y by (32)\n    if <(Crouching) = [1]> then\n        change y by (-16)\n    end\n    repeat ((3) - (PowerupVariable ONE))\n        switch costume to (large v)\n        change x by (((PlayerDirection) + ((PlayerXVelocity) * (2))) / (-9))\n        change y by (2)\n        switch costume to (cloud v)\n        stamp\n    end\nend\nStampPropeller\nif <not <(Holding) = [0]>> then\n    clear graphic effects\n    switch costume to (large v)\n    Go\n    change x by ((PlayerDirection) / (3.5))\n    change y by (4)\n    set rotation style [don't rotate v]\n    if < (Holding) contains [Ice]?> then\n        if < (HoldingBonus) contains [\)]?> then\n            switch costume to (ice2 v)\n        else\n            switch costume to (ice1 v)\n        end\n        stamp\n        set rotation style [left-right v]\n    else\n        if <(Holding) = [p]> then\n            switch costume to (join [p] (22Mod2+1))\n        else\n            if <(Holding) = [ae]> then\n                switch costume to (join [ae] (22Mod4+1))\n            else\n                if <(Holding) = [ey]> then\n                    set rotation style [left-right v]\n                end\n                switch costume to (Holding)\n            end\n        end\n        stamp\n    end\n    set rotation style [left-right v]\nend\nGo\n\ndefine StampPropeller\nif <(Powerup) = [P]> then\n    switch costume to (large v)\n    Go\n    if <(Climbing) = [1]> then\n        set rotation style [don't rotate v]\n        change y by (30)\n        switch costume to (join [Prop] ((([floor v] of ((GameTimer) * (40)) ) mod (5)) + (7)))\n    else\n        if <(Sliding) > [0]> then\n            change y by (-2)\n        else\n            if <(Crouching) = [1]> then\n                change y by (-16)\n            end\n        end\n        set rotation style [left-right v]\n        if <(PowerupVariable THREE) > [0]> then\n            set rotation style [don't rotate v]\n            change x by (2)\n        end\n        switch costume to (join [Prop] ((([floor v] of ((GameTimer) * ((40) + (<(PowerupVariable THREE) > [0]> * (80)))) ) mod (6)) + (1)))\n    end\n    stamp\nend\n\nwhen I receive [rendermidgroundblocks v]\nif <(UsingPipe) > [1]> then\n    Render\nend\n\ndefine Go\ngo to x: ((PlayerX) - (MapX)) y: ((PlayerY) - (MapY))\n\n@Semi-Solids\n\nwhen I receive [renderbackgroundblocks v]\nRendering [1]\nbroadcast (RenderMidgroundBlocks v)\n\nwhen I receive [flagclicked v]\nswitch costume to (i v)\nset size to (400) %\nhide\nset rotation style [don't rotate v]\n\ndefine RenderSemiSolids (semi)\nset [itemno. v] to ((((([floor v] of ((MapX) / (32)) ) + ([floor v] of ((RenderWidth) / (-32)) )) * (WorldHeight)) + (([floor v] of ((MapY) / (32)) ) + (-5))) + (1))\nif <(RenderWidth) < [300]> then\n    set [x v] to ((-224) - ((MapX) mod (32)))\nelse\n    set [x v] to ((-320) - ((MapX) mod (32)))\nend\nset [y v] to ((-124) - ((MapY) mod (32)))\nrepeat ((((round ((RenderWidth) / (32))) * (2)) - (1)) + <not <((MapX) mod (32)) = [0]>>)\n    set [#cus4 v] to ((10) + <not <((MapY) mod (32)) = [0]>>)\n    repeat (#Cus4)\n        if <not <<(ItemNo.) > (length of [semi type v])> or <<(ItemNo.) < [1]> or <(((Y) + (MapY)) / (32)) > (WorldHeight)>>>> then\n            if <(semi) = [1]> then\n                set [#cus1 v] to (item (ItemNo.) of [semi type v])\n                set [#cus2 v] to [0]\n            else\n                set [#cus1 v] to (item (ItemNo.) of [track type v])\n                set [#cus2 v] to [1]\n            end\n            if <not <<(#Cus1) = [i]> or <(#Cus1) = []>>> then\n                switch costume to (large v)\n                go to x: (X) y: (Y)\n                switch costume to (#Cus1)\n                if <(costume [name v]) = [Large]> then\n                    if <(letter (2) of (#Cus1)) = [7]> then\n                        switch costume to (join (#Cus1) (22Mod4+1))\n                    else\n                        switch costume to (join [7] (join (letter (2) of (#Cus1)) (letter (3) of (#Cus1))))\n                    end\n                end\n                if <<(On/Off) = [1]> and <(#Cus2) = [1]>> then\n                    set [#cus3 v] to (letter (3) of (#Cus1))\n                    if <<<(#Cus3) = [e]> or <(#Cus3) = [f]>> or <<(#Cus3) = [g]> or <(#Cus3) = [h]>>> then\n                        switch costume to (large v)\n                        switch costume to (join (join [7] (join (letter (2) of (#Cus1)) (#Cus3))) [2])\n                    end\n                end\n                stamp\n                if <(semi) = [1]> then\n                    set [typesonscreensemi v] to [1]\n                else\n                    set [typesonscreentrack v] to [1]\n                end\n            end\n        end\n        change [y v] by (32)\n        change [itemno. v] by (1)\n    end\n    change [x v] by (32)\n    set [y v] to ((-124) - ((MapY) mod (32)))\n    change [itemno. v] by ((WorldHeight) + ((#Cus4) * (-1)))\nend\n\nwhen I receive [rendermidgroundblocks v]\nRendering []\n\ndefine Rendering (type)\nif <(type) = []> then\n    if <not <<(Edit/PlayMode) = [0]> or <(ShowTracks) = [1]>>> then\n        stop [this script v]\n    end\nend\nif <<(TypesOnScreenCheck?) = [1]> or <<<(TypesOnScreenSemi) = [1]> and <(type) = [1]>> or <<(TypesOnScreenTrack) = [1]> and <(type) = []>>>> then\n    if <(Shadows) = [1]> then\n        change [mapx v] by (-8)\n        change [mapy v] by (8)\n        set [brightness v] effect to (-100)\n        set [ghost v] effect to (50)\n        RenderSemiSolids (type)\n        clear graphic effects\n        change [mapx v] by (8)\n        change [mapy v] by (-8)\n    end\n    if <(type) = []> then\n        if <(ShowTracks) = [0]> then\n            set [ghost v] effect to (50)\n        end\n    end\n    RenderSemiSolids (type)\n    clear graphic effects\nend\n\n@UI\n\nwhen I receive [flagclicked v]\nswitch costume to (large v)\nset size to (3000) %\nswitch costume to (bargame v)\ngo to x: (0) y: (-20)\nset rotation style [don't rotate v]\npoint in direction (90)\nset [inventoryscroll v] to [0]\nset [inventoryscrollaim v] to [0]\nbroadcast (CloseAllMenus v)\ndelete all of [turbowarp link v]\nadd [1] to [turbowarp link v]\nadd [2] to [turbowarp link v]\nadd [3] to [turbowarp link v]\nadd [a] to [turbowarp link v]\nadd [f] to [turbowarp link v]\nadd [c] to [turbowarp link v]\nadd [n] to [turbowarp link v]\nadd [d] to [turbowarp link v]\nadd [o] to [turbowarp link v]\nset [showtracks v] to [1]\nset [unloadtracks v] to [1]\nset [timeleftfull v] to [300]\ndelete this clone\n\nwhen I receive [uiupdate v]\nif <[1] = [1]> then\n    delete this clone\nend\nclear graphic effects\nset [anymenuopen v] to (((((InventoryMenu) + (AreasMenu)) + ((AreaMenu) + (MusicMenu))) + (BackgroundMenu)) + ((((CameraMenu) + (OptionsMenu)) + ((PlayMenu) + (PlaceMenu))) + ((PleaseWait) + (SaveMenu))))\nshow\nset [hudfunction v] to []\nset [menuelement v] to [1]\nshow list [save code v]\nif <(Edit/PlayMode) = [0]> then\n    EditorHUD\n    if <(PlacingBlockType) = [Water]> then\n        go to x: (-218) y: (-120)\n        CreateSimpleButton [NoWater] [NoWater] [300] [Remove Water]\n    end\n    if <(PlacingBlockType) = [Lava]> then\n        go to x: (-218) y: (-120)\n        CreateSimpleButton [NoLava] [NoLava] [300] [Remove Lava]\n    end\nend\nhide\nset [hudfunction v] to []\nswitch costume to (large v)\nset size to (400) %\nif <(Edit/PlayMode) = [1]> then\n    switch costume to (bargame v)\nelse\n    switch costume to (bareditor v)\nend\ngo to x: (0) y: (-160)\nstamp\nset [menuelement v] to [1]\nif <(Edit/PlayMode) = [1]> then\n    show\n    go to x: (-216) y: (-160)\n    if <(Menu) = [Menu]> then\n        if <(Shadows) = [0]> then\n            CreateSimpleButton [Turbowarp] [Turbowarp] [300] [Turbowarp link]\n        end\n    else\n        if <(IAmTheEditor) = [1]> then\n            if <(PlayingAMap) = [1]> then\n                CreateSimpleButton [Pause] [Pause] [300] [Back to Map]\n            else\n                CreateSimpleButton [Pause] [Pause] [300] [Back to Editor]\n            end\n        else\n            if <(PlayingAMap) = [1]> then\n                if <((Dead) + (HitGoal)) = [0]> then\n                    CreateSimpleButton [Pause] [ReturnMap] [300] [Back to Map]\n                end\n            end\n        end\n    end\n    hide\n    if <(Keys) > [0]> then\n        switch costume to (large v)\n        set size to (400) %\n        RenderKeys\n        clear graphic effects\n    end\nend\nif <(Edit/PlayMode) = [0]> then\n    set [#cus1 v] to <(RenderWidth) > [300]>\n    show\n    create clone of (_myself_ v)\n    switch costume to (large v)\n    set [menuelement v] to [1]\n    go to x: ((200) + ((70) * (#Cus1))) y: (-160)\n    CreateSimpleButton [PlacementMenu] [PlacementMenu] [300] [Placement Options]\n    go to x: ((126) + ((70) * (#Cus1))) y: (-160)\n    CreateSimpleButton [Inventory] [Inv] [300] [Item Inventory]\n    go to x: ((-200) + ((-70) * (#Cus1))) y: (-160)\n    CreateSimpleButton [Area] [Area] [300] [Area Options]\n    go to x: ((-126) + ((-70) * (#Cus1))) y: (-160)\n    CreateSimpleButton [PlayMenu] [PlayMenu] [300] [Save and Play Options]\n    InventorySlots\n    hide\nend\nif <(PleaseWait) = [1]> then\n    set [ghost v] effect to (50)\n    switch costume to (large v)\n    set size to (2000) %\n    switch costume to (invbackground v)\n    go to x: (0) y: (20)\n    stamp\n    clear graphic effects\nend\nbroadcast (OverlayUpdate v)\n\nwhen this sprite clicked\nif <<not <(HudFunction) = []>> and <<<(ClickPause) = [0]> and <(PleaseWait) = [0]>> or <(Menu) = [Map]>>> then\n    if <(HudFunction) = [Camera]> then\n        Open/Close (CameraMenu)\n        set [cameramenu v] to (#One)\n    else\n        if <(HudFunction) = [Inv]> then\n            Open/Close (InventoryMenu)\n            set [inventorymenu v] to (#One)\n        else\n            if <(HudFunction) = [Area]> then\n                Open/Close (AreasMenu)\n                set [areasmenu v] to (#One)\n            else\n                if <(HudFunction) = [Areas]> then\n                    Open/Close (AreaMenu)\n                    set [areamenu v] to (#One)\n                else\n                    if <(HudFunction) = [PlayMenu]> then\n                        Open/Close (PlayMenu)\n                        set [playmenu v] to (#One)\n                    else\n                        if <(HudFunction) = [Backgrounds]> then\n                            Open/Close (BackgroundMenu)\n                            set [backgroundmenu v] to (#One)\n                        else\n                            if <(HudFunction) = [Music]> then\n                                Open/Close (MusicMenu)\n                                set [musicmenu v] to (#One)\n                            else\n                                if <(HudFunction) = [Options]> then\n                                    Open/Close (OptionsMenu)\n                                    set [optionsmenu v] to (#One)\n                                else\n                                    if <(HudFunction) = [PlacementMenu]> then\n                                        Open/Close (PlaceMenu)\n                                        set [placemenu v] to (#One)\n                                    else\n                                        if <(HudFunction) = [Pen]> then\n                                            set [placetool v] to [1]\n                                            SmoothCloseOtherMenus\n                                        else\n                                            if <(HudFunction) = [Eraser]> then\n                                                set [placetool v] to [2]\n                                                SmoothCloseOtherMenus\n                                            else\n                                                if <(HudFunction) = [Picker]> then\n                                                    set [placetool v] to [3]\n                                                    SmoothCloseOtherMenus\n                                                else\n                                                    if <(HudFunction) = [Place1]> then\n                                                        if <(PlaceTool) = [3]> then\n                                                            set [placetool v] to [1]\n                                                        end\n                                                        set [placementtool v] to [1]\n                                                        SmoothCloseOtherMenus\n                                                    else\n                                                        if <(HudFunction) = [Place2]> then\n                                                            if <(PlaceTool) = [3]> then\n                                                                set [placetool v] to [1]\n                                                            end\n                                                            set [placementtool v] to [2]\n                                                            SmoothCloseOtherMenus\n                                                        else\n                                                            if <(HudFunction) = [WLevelName]> then\n                                                                if <(TextInputMenu) = [0]> then\n                                                                    broadcast (EditWorldName v)\n                                                                end\n                                                            else\n                                                                if <(HudFunction) = [LevelName]> then\n                                                                    if <(TextInputMenu) = [0]> then\n                                                                        broadcast (EditLevelName v)\n                                                                    end\n                                                                else\n                                                                    if <(HudFunction) = [WLevelDescription]> then\n                                                                        if <(TextInputMenu) = [0]> then\n                                                                            broadcast (EditWorldDescription v)\n                                                                        end\n                                                                    else\n                                                                        if <(HudFunction) = [LevelDescription]> then\n                                                                            if <(TextInputMenu) = [0]> then\n                                                                                broadcast (EditLevelDescription v)\n                                                                            end\n                                                                        else\n                                                                            if <(HudFunction) = [WCreator]> then\n                                                                                if <(TextInputMenu) = [0]> then\n                                                                                    broadcast (EditWorldCreator v)\n                                                                                end\n                                                                            else\n                                                                                if <(HudFunction) = [Creator]> then\n                                                                                    if <(TextInputMenu) = [0]> then\n                                                                                        broadcast (EditLevelCreator v)\n                                                                                    end\n                                                                                else\n                                                                                    if <(HudFunction) = [BackSave]> then\n                                                                                        if <(Menu) = [Map]> then\n                                                                                            set [savemenuprogress v] to [0]\n                                                                                        else\n                                                                                            set [savemenuprogress v] to [1]\n                                                                                        end\n                                                                                    else\n                                                                                        if <(HudFunction) = [YesClear]> then\n                                                                                            set [savemenuprogress v] to [0.5]\n                                                                                            broadcast (FullRestartLevel v)\n                                                                                            broadcast (ResumeWithTransition v)\n                                                                                        else\n                                                                                            if <(HudFunction) = [NoClear]> then\n                                                                                                SmoothCloseOtherMenus\n                                                                                            else\n                                                                                                if <(HudFunction) = [ProPow]> then\n                                                                                                    if <(Progressive) = [0]> then\n                                                                                                        set [progressive v] to [1]\n                                                                                                    else\n                                                                                                        set [progressive v] to [0]\n                                                                                                    end\n                                                                                                else\n                                                                                                    if <(HudFunction) = [AltLoa]> then\n                                                                                                        if <(AlternateLoading) = [0]> then\n                                                                                                            set [alternateloading v] to [1]\n                                                                                                        else\n                                                                                                            set [alternateloading v] to [0]\n                                                                                                        end\n                                                                                                    else\n                                                                                                        if <(HudFunction) = [ShowTracks]> then\n                                                                                                            if <(ShowTracks) = [0]> then\n                                                                                                                set [showtracks v] to [1]\n                                                                                                            else\n                                                                                                                set [showtracks v] to [0]\n                                                                                                            end\n                                                                                                        else\n                                                                                                            if <(HudFunction) = [Turbowarp]> then\n                                                                                                                broadcast (ShowTurbowarp v)\n                                                                                                            else\n                                                                                                                if <(HudFunction) = [UnloadTracks]> then\n                                                                                                                    if <(UnloadTracks) = [0]> then\n                                                                                                                        set [unloadtracks v] to [1]\n                                                                                                                    else\n                                                                                                                        set [unloadtracks v] to [0]\n                                                                                                                    end\n                                                                                                                else\n                                                                                                                    if <(HudFunction) = [TpSpawn]> then\n                                                                                                                        broadcast (TpSpawn v)\n                                                                                                                    else\n                                                                                                                        if <(HudFunction) = [TpGoal]> then\n                                                                                                                            broadcast (TpGoal v)\n                                                                                                                        else\n                                                                                                                            if <(HudFunction) = [Pause]> then\n                                                                                                                                if <(PlayingAMap) = [1]> then\n                                                                                                                                    set [transitionprogress v] to [1]\n                                                                                                                                    set [transitiontype v] to [FadeIn]\n                                                                                                                                    set [mapedit/playmode v] to [1]\n                                                                                                                                    set [menu v] to [Map]\n                                                                                                                                    stop all sounds\n                                                                                                                                    broadcast (PlayWorldMusic v)\n                                                                                                                                else\n                                                                                                                                    stop all sounds\n                                                                                                                                    broadcast (Pause v)\n                                                                                                                                end\n                                                                                                                            else\n                                                                                                                                if <(HudFunction) = [Restart]> then\n                                                                                                                                    broadcast (FullRestartLevel v)\n                                                                                                                                    broadcast (ResumeWithTransition v)\n                                                                                                                                else\n                                                                                                                                    if <(HudFunction) = [Play]> then\n                                                                                                                                        broadcast (ResumeGame v)\n                                                                                                                                    else\n                                                                                                                                        if <(HudFunction) = [AddArea]> then\n                                                                                                                                            broadcast (AddNewArea v)\n                                                                                                                                        else\n                                                                                                                                            if <(HudFunction) = [WSaving]> then\n                                                                                                                                                set [textinputmenu v] to [0]\n                                                                                                                                                set [savemenuprogress v] to [1]\n                                                                                                                                                broadcast (CreateMapSaveCode v)\n                                                                                                                                            else\n                                                                                                                                                if <(HudFunction) = [Saving]> then\n                                                                                                                                                    set [textinputmenu v] to [0]\n                                                                                                                                                    set [savemenuprogress v] to [2]\n                                                                                                                                                    broadcast (CreateSaveCodeOnly v)\n                                                                                                                                                else\n                                                                                                                                                    if <(HudFunction) = [Save]> then\n                                                                                                                                                        Open/Close (SaveMenu)\n                                                                                                                                                        set [savemenu v] to (#One)\n                                                                                                                                                    else\n                                                                                                                                                        if <(HudFunction) = [NoWater]> then\n                                                                                                                                                            set [currentwaterlevel v] to [-8]\n                                                                                                                                                            broadcast (ReplaceWaterLevel v)\n                                                                                                                                                            set [placingblocktype v] to [1]\n                                                                                                                                                        else\n                                                                                                                                                            if <(HudFunction) = [ReturnMap]> then\n                                                                                                                                                                set [menu v] to [Map]\n                                                                                                                                                                set [mapedit/playmode v] to [0]\n                                                                                                                                                                set [transitionprogress v] to [8]\n                                                                                                                                                                set [transitiontype v] to [FadeIn]\n                                                                                                                                                                stop all sounds\n                                                                                                                                                                broadcast (PlayWorldMusic v)\n                                                                                                                                                            else\n                                                                                                                                                                if <(HudFunction) = [NoLava]> then\n                                                                                                                                                                    set [currentlavalevel v] to [-8]\n                                                                                                                                                                    broadcast (ReplaceLavaLevel v)\n                                                                                                                                                                    set [placingblocktype v] to [1]\n                                                                                                                                                                else\n                                                                                                                                                                    if <(HudFunction) = [Restore]> then\n                                                                                                                                                                        if <(DoubleClick) > [0.5]> then\n                                                                                                                                                                            broadcast (LoadRestorePoint v)\n                                                                                                                                                                        else\n                                                                                                                                                                            set [doubleclick v] to [1]\n                                                                                                                                                                        end\n                                                                                                                                                                    else\n                                                                                                                                                                        if <(HudFunction) = [DeleteArea]> then\n                                                                                                                                                                            if <(DoubleClick) > [0.5]> then\n                                                                                                                                                                                broadcast (DeleteThisArea v)\n                                                                                                                                                                            else\n                                                                                                                                                                                set [doubleclick v] to [1]\n                                                                                                                                                                            end\n                                                                                                                                                                        else\n                                                                                                                                                                            if <(HudFunction) = [MapPause]> then\n                                                                                                                                                                                SmoothCloseOtherMenus\n                                                                                                                                                                                set [mapedit/playmode v] to [1]\n                                                                                                                                                                                stop all sounds\n                                                                                                                                                                            else\n                                                                                                                                                                                if <(HudFunction) = [MapSave]> then\n                                                                                                                                                                                    set [savemenuprogress v] to [0]\n                                                                                                                                                                                    Open/Close (MapSaveMenu)\n                                                                                                                                                                                    set [mapsavemenu v] to (#One)\n                                                                                                                                                                                else\n                                                                                                                                                                                    if < (HudFunction) contains [Map]?> then\n                                                                                                                                                                                        SmoothCloseOtherMenus\n                                                                                                                                                                                        if <(HudFunction) = [MapPlay]> then\n                                                                                                                                                                                            set [mapedit/playmode v] to [0]\n                                                                                                                                                                                            broadcast (PlayWorldMusic v)\n                                                                                                                                                                                        else\n                                                                                                                                                                                            if <(HudFunction) = [MapRestart]> then\n                                                                                                                                                                                                set [transitionprogress v] to [1]\n                                                                                                                                                                                                set [transitiontype v] to [FadeIn]\n                                                                                                                                                                                                set [mapedit/playmode v] to [0]\n                                                                                                                                                                                                broadcast (PlayMapFromStart v)\n                                                                                                                                                                                                set [transitionprogress v] to [8]\n                                                                                                                                                                                                set [transitiontype v] to [FadeIn]\n                                                                                                                                                                                            else\n                                                                                                                                                                                                if <(HudFunction) = [MapType]> then\n                                                                                                                                                                                                    set [transitionprogress v] to [8]\n                                                                                                                                                                                                    set [transitiontype v] to [FadeIn]\n                                                                                                                                                                                                    if <(MapTheme) = [3]> then\n                                                                                                                                                                                                        set [maptheme v] to [7]\n                                                                                                                                                                                                    else\n                                                                                                                                                                                                        if <(MapTheme) = [2]> then\n                                                                                                                                                                                                            set [maptheme v] to [4]\n                                                                                                                                                                                                        else\n                                                                                                                                                                                                            if <(MapTheme) = [4]> then\n                                                                                                                                                                                                                set [maptheme v] to [3]\n                                                                                                                                                                                                            else\n                                                                                                                                                                                                                if <(MapTheme) = [7]> then\n                                                                                                                                                                                                                    set [maptheme v] to [5]\n                                                                                                                                                                                                                else\n                                                                                                                                                                                                                    change [maptheme v] by (1)\n                                                                                                                                                                                                                    if <(MapTheme) > [6]> then\n                                                                                                                                                                                                                        set [maptheme v] to [1]\n                                                                                                                                                                                                                    end\n                                                                                                                                                                                                                end\n                                                                                                                                                                                                            end\n                                                                                                                                                                                                        end\n                                                                                                                                                                                                    end\n                                                                                                                                                                                                else\n                                                                                                                                                                                                    set [placingblocktype v] to (HudFunction)\n                                                                                                                                                                                                    set [placetool v] to [1]\n                                                                                                                                                                                                end\n                                                                                                                                                                                            end\n                                                                                                                                                                                        end\n                                                                                                                                                                                    else\n                                                                                                                                                                                        SmoothCloseOtherMenus\n                                                                                                                                                                                        set [placingblocktype v] to (HudFunction)\n                                                                                                                                                                                        set [placetool v] to [1]\n                                                                                                                                                                                        Common1\n                                                                                                                                                                                    end\n                                                                                                                                                                                end\n                                                                                                                                                                            end\n                                                                                                                                                                        end\n                                                                                                                                                                    end\n                                                                                                                                                                end\n                                                                                                                                                            end\n                                                                                                                                                        end\n                                                                                                                                                    end\n                                                                                                                                                end\n                                                                                                                                            end\n                                                                                                                                        end\n                                                                                                                                    end\n                                                                                                                                end\n                                                                                                                            end\n                                                                                                                        end\n                                                                                                                    end\n                                                                                                                end\n                                                                                                            end\n                                                                                                        end\n                                                                                                    end\n                                                                                                end\n                                                                                            end\n                                                                                        end\n                                                                                    end\n                                                                                end\n                                                                            end\n                                                                        end\n                                                                    end\n                                                                end\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        set [clickpause v] to [1]\n    end\nend\n\ndefine EditorHUD\nset [#cus1 v] to ((16) + (([sin v] of ((GameTimer) * (180)) ) * (8)))\nchange [doubleclick v] by ((-1) / (30))\nif <not <mouse down?>> then\n    set [scrolling v] to [0]\nend\nset [#fifteen v] to [0]\nif <<mouse down?> and <(ClickPause) = [0]>> then\n    set [#fifteen v] to [1]\nend\nif <not <(OptionsMenu) = [0]>> then\n    MenuAnimation (OptionsMenu) [2]\n    set [optionsmenu v] to (#One)\n    set [menuelement v] to ([abs v] of (OptionsMenu) )\n    set [#eight v] to ((MenuElement) * (320))\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-456) + (#Eight)) y: (-120)\n    switch costume to (cameramenughost v)\n    stamp\n    clear graphic effects\n    switch costume to (large2 v)\n    switch costume to (optionsmenu v)\n    stamp\n    go to x: ((-346) + (#Eight)) y: (116)\n    switch costume to (large2 v)\n    if <(ShowTracks) = [1]> then\n        CreateSimpleButton [Tick] [ShowTracks] [300] [Toggle Visible Tracks]\n    else\n        CreateSimpleButton [NoTick] [ShowTracks] [300] [Toggle Visible Tracks]\n    end\n    if <(MenuElement) > [0.05]> then\n        switch costume to (large2 v)\n        set size to (400) %\n        go to x: (((-462) + (#Eight)) + ((((TimeLeftFull) / (10)) - (1)) * ((126) / (59)))) y: (88)\n        switch costume to (scroll2 v)\n        if <(Scrolling) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [displaytext v] to [Change Level Timer]\n                set [displaytexttimer v] to [1]\n                change size by (25)\n                if <mouse down?> then\n                    set [scrolling v] to [1]\n                end\n            end\n        end\n        if <(Scrolling) = [1]> then\n            set [clickpause v] to [1]\n            set x to (mouse x)\n            if <(x position) > [-16]> then\n                set x to (-16)\n            end\n            if <(x position) < [-142]> then\n                set x to (-142)\n            end\n            set [timeleftfull v] to (((round ((((x position) + (142)) / (126)) * (59))) + (1)) * (10))\n            set [savemenuprogress v] to [0]\n            broadcast (ReplaceXCamera v)\n        end\n        stamp\n    end\n    switch costume to (large2 v)\n    go to x: ((-346) + (#Eight)) y: (40)\n    if <(UnloadTracks) = [1]> then\n        CreateSimpleButton [Tick] [UnloadTracks] [300] [Toggle Track Despawning]\n    else\n        CreateSimpleButton [NoTick] [UnloadTracks] [300] [Toggle Track Despawning]\n    end\n    switch costume to (large2 v)\n    go to x: ((-346) + (#Eight)) y: (-2)\n    if <not <(GoalArea) = [0]>> then\n        CreateSimpleButton [TpGoal] [TpGoal] [300] [Teleport to Goal]\n    end\n    switch costume to (large2 v)\n    change x by (-32)\n    CreateSimpleButton [TpSpawn] [TpSpawn] [300] [Teleport to Spawn]\n    switch costume to (large2 v)\n    go to x: ((-346) + (#Eight)) y: (-28)\n    if <(length of (Save Code)) > [10]> then\n        CreateSimpleButton [Restore] [Restore] [300] [Load Restore Point \(x2 click\)]\n    end\n    switch costume to (large2 v)\n    go to x: ((-346) + (#Eight)) y: (-58)\n    if <(Progressive) = [1]> then\n        CreateSimpleButton [Tick] [ProPow] [300] [Toggle Progressive Powerups]\n    else\n        CreateSimpleButton [NoTick] [ProPow] [300] [Toggle Progressive Powerups]\n    end\n    switch costume to (large2 v)\n    go to x: ((-346) + (#Eight)) y: (-104)\n    if <(AlternateLoading) = [1]> then\n        CreateSimpleButton [Tick] [AltLoa] [300] [Toggle Chunk Loading]\n    else\n        CreateSimpleButton [NoTick] [AltLoa] [300] [Toggle Chunk Loading]\n    end\n    if <<(#Fifteen) = [1]> and <(mouse x) > [6]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(CameraMenu) = [0]>> then\n    MenuAnimation (CameraMenu) [2]\n    set [cameramenu v] to (#One)\n    set [menuelement v] to ([abs v] of (CameraMenu) )\n    set [#eight v] to ((MenuElement) * (320))\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-456) + (#Eight)) y: (-120)\n    switch costume to (cameramenughost v)\n    stamp\n    clear graphic effects\n    switch costume to (large2 v)\n    switch costume to (cameramenu v)\n    stamp\n    if <(MenuElement) > [0.05]> then\n        switch costume to (large2 v)\n        set size to (400) %\n        go to x: (((-524) + (#Eight)) + ((CameraX) * ((170) / (6)))) y: (90)\n        switch costume to (scroll2 v)\n        if <(Scrolling) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [displaytext v] to [Change X Camera Option]\n                set [displaytexttimer v] to [1]\n                change size by (25)\n                if <mouse down?> then\n                    set [scrolling v] to [1]\n                end\n            end\n        end\n        if <(Scrolling) = [1]> then\n            set [clickpause v] to [1]\n            set x to (mouse x)\n            if <(x position) > [-34]> then\n                set x to (-34)\n            end\n            if <(x position) < [-204]> then\n                set x to (-204)\n            end\n            set [camerax v] to (round ((((x position) + (204)) / (170)) * (6)))\n            set [savemenuprogress v] to [0]\n            broadcast (ReplaceXCamera v)\n        end\n        stamp\n        switch costume to (large2 v)\n        set size to (400) %\n        go to x: (((-524) + (#Eight)) + ((CameraY) * ((170) / (5)))) y: (-46)\n        switch costume to (scroll2 v)\n        if <(Scrolling) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [displaytext v] to [Change Y Camera Option]\n                set [displaytexttimer v] to [1]\n                change size by (25)\n                if <mouse down?> then\n                    set [scrolling v] to [2]\n                end\n            end\n        end\n        if <(Scrolling) = [2]> then\n            set [clickpause v] to [1]\n            set x to (mouse x)\n            if <(x position) > [-34]> then\n                set x to (-34)\n            end\n            if <(x position) < [-204]> then\n                set x to (-204)\n            end\n            set [cameray v] to (round ((((x position) + (204)) / (170)) * (5)))\n            set [savemenuprogress v] to [0]\n            broadcast (ReplaceYCamera v)\n        end\n        stamp\n    end\n    if <<(#Fifteen) = [1]> and <(mouse x) > [6]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(MusicMenu) = [0]>> then\n    change [musictimer v] by (0.012)\n    if <([abs v] of (MusicMenu) ) < [0.1]> then\n        set [musictimer v] to [0]\n    end\n    set [menuelement v] to ([abs v] of (MusicMenu) )\n    set [#eight v] to ((MenuElement) * (320))\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-456) + (#Eight)) y: (-120)\n    switch costume to (musicmenughost v)\n    stamp\n    clear graphic effects\n    switch costume to (large2 v)\n    go to x: ((-456) + (#Eight)) y: (-120)\n    switch costume to (musicmenu v)\n    stamp\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-334) + (#Eight)) y: ((118) - ((236) * ((MusicScroll) / ((length of [musiclist v]) - (7)))))\n    switch costume to (scroll v)\n    if <(Scrolling) = [0]> then\n        if <touching (mouse-pointer v)?> then\n            set [displaytext v] to [Scroll Music List]\n            set [displaytexttimer v] to [1]\n            change size by (25)\n            if <mouse down?> then\n                set [scrolling v] to [1]\n            end\n        end\n    end\n    if <(Scrolling) = [1]> then\n        set [clickpause v] to [1]\n        set y to (mouse y)\n        if <(y position) > [118]> then\n            set y to (118)\n        end\n        if <(y position) < [-118]> then\n            set y to (-118)\n        end\n        set [#eight v] to ((((y position) - (118)) / (-236)) * ((length of [musiclist v]) - (7)))\n        change [musicscroll v] by (((MusicScroll) - (#Eight)) / (-1.2))\n        if <([abs v] of (y position) ) > [117]> then\n            set [musicscroll v] to (#Eight)\n        end\n    end\n    if <(MenuElement) > [0.05]> then\n        stamp\n    end\n    MenuAnimation (MusicMenu) [2]\n    set [musicmenu v] to (#One)\n    if <<(#Fifteen) = [1]> and <(mouse x) > [6]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(BackgroundMenu) = [0]>> then\n    MenuAnimation (BackgroundMenu) [2]\n    set [backgroundmenu v] to (#One)\n    set [menuelement v] to ([abs v] of (BackgroundMenu) )\n    set [#eight v] to ((MenuElement) * (124))\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-260) + (#Eight)) y: (-120)\n    switch costume to (backgroundmenughost v)\n    stamp\n    clear graphic effects\n    switch costume to (large2 v)\n    switch costume to (backgroundmenu v)\n    stamp\n    switch costume to (areaslats v)\n    stamp\n    repeat (26)\n        switch costume to (large2 v)\n        change y by ((-236) / (26))\n        switch costume to (areaslats2 v)\n        stamp\n    end\n    switch costume to (large2 v)\n    switch costume to (areaslats v)\n    stamp\n    switch costume to (large2 v)\n    go to x: ((-338) + (#Eight)) y: ((118) - ((236) * (((CurrentBackground) - (1)) / (27))))\n    switch costume to (scroll v)\n    if <(Scrolling) = [0]> then\n        if <touching (mouse-pointer v)?> then\n            set [displaytext v] to [Change Background]\n            set [displaytexttimer v] to [1]\n            change size by (25)\n            if <mouse down?> then\n                set [scrolling v] to [1]\n            end\n        end\n    end\n    if <(Scrolling) = [1]> then\n        set y to (mouse y)\n        if <(y position) > [118]> then\n            set y to (118)\n        end\n        if <(y position) < [-118]> then\n            set y to (-118)\n        end\n        set [#nine v] to ((round ((((y position) - (118)) / (-236)) * (27))) + (1))\n        if <not <(CurrentBackground) = (#Nine)>> then\n            set [currentbackground v] to (#Nine)\n            ReplaceSection [1] OfCurrentAreaWith (#Nine)\n        end\n    end\n    stamp\n    if <<(#Fifteen) = [1]> and <(mouse x) > [-184]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(AreaMenu) = [0]>> then\n    MenuAnimation (AreaMenu) [2]\n    set [areamenu v] to (#One)\n    set [menuelement v] to ([abs v] of (AreaMenu) )\n    set [#eight v] to ((MenuElement) * (124))\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: ((-260) + (#Eight)) y: (-120)\n    switch costume to (areamenughost v)\n    stamp\n    clear graphic effects\n    switch costume to (large2 v)\n    switch costume to (areamenu v)\n    stamp\n    if <not <(length of [areas v]) = [1]>> then\n        switch costume to (areaslats v)\n        stamp\n        repeat ((length of [areas v]) - (1))\n            switch costume to (large2 v)\n            change y by ((-182) / ((length of [areas v]) - (1)))\n            switch costume to (areaslats2 v)\n            stamp\n        end\n        switch costume to (areaslats v)\n        stamp\n        switch costume to (large2 v)\n        go to x: ((-338) + (#Eight)) y: ((118) - ((182) * (((CurrentArea) - (1)) / ((length of [areas v]) - (1)))))\n        switch costume to (scroll v)\n        if <(Scrolling) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [displaytext v] to (join [Change Area \(] (join (join (join (CurrentArea) [/]) (length of [areas v])) [\)]))\n                set [displaytexttimer v] to [1]\n                change size by (25)\n                if <mouse down?> then\n                    set [scrolling v] to [1]\n                end\n            end\n        end\n        if <(Scrolling) = [1]> then\n            set [displaytext v] to (join [Area \(] (join (join (join (CurrentArea) [/]) (length of [areas v])) [\)]))\n            set [displaytexttimer v] to [1]\n            set y to (mouse y)\n            if <(y position) > [118]> then\n                set y to (118)\n            end\n            if <(y position) < [-64]> then\n                set y to (-64)\n            end\n            set [#one v] to ((round ((((y position) - (118)) / (-182)) * ((length of [areas v]) - (1)))) + (1))\n            if <not <(CurrentArea) = (#One)>> then\n                set [currentarea v] to (#One)\n                broadcast (UpdateAreaSettings v)\n                change [mapy v] by (-900000)\n            end\n        end\n        stamp\n    end\n    switch costume to (large2 v)\n    set [ghost v] effect to ((100) - ((MenuElement) * (100)))\n    show\n    go to x: ((-350) + (#Eight)) y: (-108)\n    CreateSimpleButton [Add] [AddArea] [400] [Add a new area]\n    if <not <(CurrentArea) = [1]>> then\n        switch costume to (large2 v)\n        go to x: ((-326) + (#Eight)) y: (-108)\n        CreateSimpleButton [Minus] [DeleteArea] [400] [Delete this area \(2x click\)]\n    end\n    clear graphic effects\n    if <<(#Fifteen) = [1]> and <(mouse x) > [-184]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(AreasMenu) = [0]>> then\n    MenuAnimation (AreasMenu) []\n    set [areasmenu v] to (#One)\n    set [menuelement v] to ([abs v] of (AreasMenu) )\n    set [#eight v] to ((MenuElement) * (40))\n    switch costume to (large v)\n    set size to (400) %\n    go to x: (-136) y: ((-160) + (#Eight))\n    switch costume to (areasmenu v)\n    stamp\n    switch costume to (large v)\n    set [ghost v] effect to ((100) - ((MenuElement) * (100)))\n    show\n    go to x: (-214) y: ((-160) + (#Eight))\n    CreateSimpleButton [Areas] [Areas] [300] [Area Menu]\n    change x by (40)\n    CreateSimpleButton [Backgrounds] [Backgrounds] [300] [Background Menu]\n    change x by (40)\n    CreateSimpleButton [Music] [Music] [300] [Music Menu]\n    change x by (40)\n    CreateSimpleButton [Camera] [Camera] [300] [Camera Menu]\n    clear graphic effects\n    if <<(#Fifteen) = [1]> and <(mouse y) > [-100]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(SaveMenu) = [0]>> then\n    MenuAnimation (SaveMenu) [2]\n    set [savemenu v] to (#One)\n    set [menuelement v] to ([abs v] of (SaveMenu) )\n    set [#eight v] to ((MenuElement) * (360))\n    if <(MenuElement) < [0.9]> then\n        if <(SaveMenuProgress) = [0.5]> then\n            set [savemenuprogress v] to [0]\n        end\n    end\n    set [ghost v] effect to (#Cus1)\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (0) y: ((-360) + (#Eight))\n    switch costume to (savemenughost v)\n    stamp\n    if <(SaveMenuProgress) = [1]> then\n        set [ghost v] effect to ((25) + (([cos v] of ((GameTimer) * (720)) ) * (8)))\n        if <(RenderWidth) > [300]> then\n            switch costume to (savemenughost3 v)\n        else\n            switch costume to (savemenughost2 v)\n        end\n        stamp\n    end\n    clear graphic effects\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (0) y: ((-360) + (#Eight))\n    switch costume to (savemenuborder v)\n    stamp\n    if <<(SaveMenuProgress) = [0]> or <(SaveMenuProgress) = [0.5]>> then\n        delete all of [save code v]\n        if <<(GoalArea) = [0]> and <(WhaWha) = [0]>> then\n            go to x: (0) y: ((-440) + (#Eight))\n            CreateSimpleButton [Return] [NoClear] [400] [Return to Editor]\n        else\n            go to x: (-100) y: ((-440) + (#Eight))\n            CreateSimpleButton [Yes] [YesClear] [400] [Start Clear Check]\n            go to x: (100) y: ((-440) + (#Eight))\n            CreateSimpleButton [No] [NoClear] [400] [Return to Editor]\n        end\n    else\n        if <(SaveMenuProgress) = [1]> then\n            delete all of [save code v]\n            go to x: (70) y: ((-314) + (#Eight))\n            CreateSimpleButton [Edit] [LevelName] [400] [Edit Level Name]\n            go to x: (70) y: ((-378) + (#Eight))\n            CreateSimpleButton [Edit] [LevelDescription] [400] [Edit Level Description]\n            if <(RenderWidth) > [300]> then\n                go to x: (70) y: ((-442) + (#Eight))\n                CreateSimpleButton [Edit] [Creator] [400] [Edit Level Maker Name]\n            end\n            go to x: (0) y: ((-472) + (#Eight))\n            CreateSimpleButton [Saving] [Saving] [400] [Get Level Save Code]\n        else\n            if <(SaveMenuProgress) = [3]> then\n                go to x: (-100) y: ((-456) + (#Eight))\n                CreateSimpleButton [Return] [BackSave] [400] [Change Level Information]\n                go to x: (100) y: ((-456) + (#Eight))\n                CreateSimpleButton [Done] [NoClear] [400] [Return to Editor]\n            else\n                if <(TextInputMenu) = [0]> then\n                    broadcast (VerifyCode v)\n                    set [textinputmenu v] to [1]\n                end\n                if <(MenuElement) > [0.9]> then\n                    hide list [save code v]\n                end\n            end\n        end\n    end\nend\nif <not <(InventoryMenu) = [0]>> then\n    if <<(InventoryMenu) > [0]> and <(InventoryMenu) < [0.05]>> then\n        set [inventoryscroll v] to (round (InventoryScroll))\n    end\n    MenuAnimation (InventoryMenu) [2]\n    set [inventorymenu v] to (#One)\n    set [menuelement v] to ([abs v] of (InventoryMenu) )\n    set [#nine v] to ((MenuElement) * (320))\n    set [#one v] to [73]\n    set [ghost v] effect to (73)\n    if <([abs v] of ((mouse y) + (-20)) ) > [120]> then\n        set [#one v] to ((73) + ((([abs v] of ((mouse y) + (-20)) ) - (120)) / (3)))\n        if <(#One) > [87]> then\n            set [#one v] to [87]\n            set [ghost v] effect to (87)\n        else\n            set [ghost v] effect to (#One)\n        end\n        if <<mouse down?> and <(ClickPause) = [0]>> then\n            set [inventorymenu v] to [0]\n            set [clickpause v] to [1]\n        end\n    end\n    set [#twelve v] to ((73) + ((27) * ((1) - (MenuElement))))\n    if <(#Twelve) > (#One)> then\n        set [ghost v] effect to (#Twelve)\n    end\n    switch costume to (large v)\n    set size to (2000) %\n    switch costume to (invbackground v)\n    go to x: (([sin v] of ((GameTimer) * (360)) ) * (4)) y: ((([cos v] of ((GameTimer) * (360)) ) * (4)) + (20))\n    stamp\n    clear graphic effects\n    if <<<([abs v] of (mouse x) ) > [124]> and <([abs v] of ((mouse y) - (20)) ) < [124]>> and <<mouse down?> and <([abs v] of ((InventoryScroll) - (InventoryScrollAim)) ) < [0.5]>>> then\n        if <(mouse x) > [124]> then\n            change [inventoryscrollaim v] by (1)\n        else\n            change [inventoryscrollaim v] by (-1)\n        end\n    end\n    if <(InventoryScrollAim) < [0]> then\n        set [inventoryscrollaim v] to [16]\n        set [inventoryscroll v] to [17]\n    end\n    if <(InventoryScrollAim) > [16]> then\n        set [inventoryscrollaim v] to [0]\n        set [inventoryscroll v] to [-1]\n    end\n    set [#four v] to (((InventoryScrollAim) - (InventoryScroll)) / (3))\n    if <([abs v] of (#Four) ) > [0.15]> then\n        change [inventoryscroll v] by ((([abs v] of (#Four) ) / (#Four)) * (0.15))\n    else\n        change [inventoryscroll v] by (#Four)\n    end\n    set [#eight v] to [1]\n    set [#four v] to [0]\n    set [#sixteen v] to [0]\n    set [#six v] to (round ((InventoryScroll) * (-192)))\n    set [#thirteen v] to ((-300) + (#Nine))\n    InventoryCircle [12]\n    InventoryCircle [15]\n    InventoryCircle [16]\n    InventoryCircle [17]\n    InventoryCircle [19]\n    InventoryCircle [8]\n    InventoryCircle [19]\n    InventoryCircle [18]\n    InventoryCircle [10]\n    InventoryCircle [15]\n    InventoryCircle [11]\n    InventoryCircle [12]\n    InventoryCircle [21]\n    InventoryCircle [10]\n    InventoryCircle [10]\n    InventoryCircle [7]\n    InventoryCircle [7]\n    set [ghost v] effect to (10)\n    switch costume to (large v)\n    set size to (400) %\n    switch costume to (7 v)\n    go to x: (218) y: (-120)\n    if <[type - putontracks v] contains (#Sixteen)?> then\n        stamp\n        change x by (-40)\n    end\n    if <[type - storable v] contains (#Sixteen)?> then\n        switch costume to (ab v)\n        stamp\n    end\n    clear graphic effects\nend\nif <not <(PlayMenu) = [0]>> then\n    MenuAnimation (PlayMenu) []\n    set [playmenu v] to (#One)\n    set [menuelement v] to ([abs v] of (PlayMenu) )\n    set [#eight v] to ((MenuElement) * (40))\n    switch costume to (large v)\n    set size to (400) %\n    go to x: (-136) y: ((-160) + (#Eight))\n    switch costume to (areasmenu v)\n    stamp\n    switch costume to (large v)\n    set [ghost v] effect to ((100) - ((MenuElement) * (100)))\n    show\n    go to x: (-214) y: ((-160) + (#Eight))\n    CreateSimpleButton [Options] [Options] [300] [Level Options Menu]\n    change x by (40)\n    CreateSimpleButton [Save] [Save] [300] [Save Level]\n    change x by (40)\n    CreateSimpleButton [Play] [Play] [300] [Quick Play \[E\]]\n    change x by (40)\n    CreateSimpleButton [Restart] [Restart] [300] [Play from Beginning]\n    clear graphic effects\n    if <<(#Fifteen) = [1]> and <(mouse y) > [-100]>> then\n        SmoothCloseOtherMenus\n    end\nend\nif <not <(PlaceMenu) = [0]>> then\n    MenuAnimation (PlaceMenu) []\n    set [placemenu v] to (#One)\n    set [menuelement v] to ([abs v] of (PlaceMenu) )\n    set [#eight v] to ((MenuElement) * (40))\n    switch costume to (large v)\n    set size to (400) %\n    go to x: (172) y: ((-160) + (#Eight))\n    switch costume to (areasmenu v)\n    stamp\n    switch costume to (large v)\n    set [ghost v] effect to ((100) - ((MenuElement) * (100)))\n    show\n    go to x: (94) y: ((-160) + (#Eight))\n    CreateSimpleButton [Pen] [Pen] [300] [Pen \[Q\]]\n    change x by (40)\n    CreateSimpleButton [Eraser] [Eraser] [300] [Eraser \[Q\]]\n    change x by (40)\n    CreateSimpleButton [Picker] [Picker] [300] [Picker \[I\]]\n    change x by (40)\n    if <(PlacementTool) = [1]> then\n        CreateSimpleButton [Place2] [Place2] [300] [Single Placements]\n    else\n        CreateSimpleButton [Place1] [Place1] [300] [Drag Placement]\n    end\n    clear graphic effects\n    if <<(#Fifteen) = [1]> and <(mouse y) > [-100]>> then\n        SmoothCloseOtherMenus\n    end\nend\npoint in direction (90)\n\ndefine InventoryCircle (slots)\nif <([abs v] of (#Six) ) < ((RenderWidth) + (48))> then\n    set [#two v] to ((1) / ((([abs v] of (#Six) ) / (228)) + (1)))\n    set [#four v] to [0]\n    switch costume to (large2 v)\n    go to x: (#Six) y: (#Thirteen)\n    if <<([abs v] of (#Six) ) < [32]> and <(#Thirteen) > [-20]>> then\n        if <<(distance to [mouse-pointer v]) < [124]> and <([abs v] of (mouse x) ) < [124]>> then\n            point towards (mouse-pointer v)\n            set [#five v] to (direction)\n            set [#four v] to ([floor v] of ((((#Five) / (360)) * (slots)) - (-1.5)) )\n            if <(#Four) < [1]> then\n                set [#four v] to ((#Four) + (slots))\n            end\n            set [#four v] to ((#Four) + ((#Eight) - (1)))\n            set [displaytext v] to (item (#Four) of [itemnames v])\n            set [#sixteen v] to (item (#Four) of [itemlist v])\n            set [displaytexttimer v] to [1]\n            if <<mouse down?> and <<(ClickPause) = [0]> and <(length of [placex v]) = [0]>>> then\n                set [clickpause v] to [1]\n                set [inventorymenu v] to (((InventoryMenu) * (-1)) + (0.01))\n                set [placingblocktype v] to (item (#Four) of [itemlist v])\n                Common1\n            end\n        end\n    end\n    set [#ten v] to (((([abs v] of (#Six) ) - (64)) / (0.5)) - (RenderWidth))\n    set [#eleven v] to (((1) - (MenuElement)) * (240))\n    if <(#Eleven) > (#Ten)> then\n        set [#ten v] to (#Eleven)\n    end\n    point in direction (90)\n    set pen color to (#e1e9ef)\n    set pen (transparency v) to (#Ten)\n    set pen size to ((240) * (#Two))\n    pen down\n    pen up\n    if <not <(#Four) = [0]>> then\n        set pen size to (1)\n        set pen color to (#b3d5ef)\n        set pen (transparency v) to (#Ten)\n        point in direction (0)\n        turn right (((360) / (slots)) / (-2)) degrees\n        turn right (((360) / (slots)) * (((#Four) - ((#Eight) - (1))) - (1))) degrees\n        set [#one v] to [0]\n        repeat ((((360) / (slots)) * (2)) + (1))\n            change [#one v] by (1)\n            go to x: (#Six) y: (#Thirteen)\n            pen down\n            repeat (5)\n                move (((120) * (#Two)) / (5)) steps\n            end\n            pen up\n            turn right (0.5) degrees\n            if <<(#One) < [2]> or <(#One) > ((((360) / (slots)) * (2)) + (0))>> then\n                set pen size to (1)\n            else\n                set pen size to (2)\n            end\n        end\n    end\n    set pen size to (1)\n    set pen color to (#a3a8ad)\n    set pen (transparency v) to (#Ten)\n    point in direction (0)\n    turn right (((360) / (slots)) / (2)) degrees\n    if <not <(slots) = [1]>> then\n        repeat (slots)\n            switch costume to (large2 v)\n            go to x: (round (#Six)) y: (#Thirteen)\n            repeat (16)\n                move (((120) * (#Two)) / (32)) steps\n                pen down\n                move (((120) * (#Two)) / (32)) steps\n                pen up\n            end\n            turn right ((360) / (slots)) degrees\n        end\n    end\n    point in direction (0)\n    set [ghost v] effect to (#Ten)\n    repeat (slots)\n        switch costume to (large2 v)\n        if <(#Four) = (#Eight)> then\n            set size to ((350) * (#Two)) %\n        else\n            set size to ((333) * (#Two)) %\n        end\n        go to x: (#Six) y: (#Thirteen)\n        if <<([abs v] of (x position) ) < ((RenderWidth) - (16))> and <(#Thirteen) > [-160]>> then\n            move ((84) * (#Two)) steps\n            switch costume to (join (item (#Eight) of [itemlist v]) [])\n            if <([abs v] of (#Six) ) < [32]> then\n                set [hudfunction v] to []\n                show\n                create clone of (_myself_ v)\n                hide\n            else\n                if <([abs v] of (x position) ) < ((RenderWidth) - (16))> then\n                    stamp\n                end\n            end\n        end\n        change [#eight v] by (1)\n        turn right ((360) / (slots)) degrees\n    end\n    if <not <(#Four) = [0]>> then\n        go to x: (round (#Six)) y: (#Thirteen)\n        set pen color to (#a3a8ad)\n        set pen (transparency v) to (#Ten)\n        set pen size to ((98) * (#Two))\n        pen down\n        pen up\n        set pen color to (#e1e9ef)\n        set pen (transparency v) to (#Ten)\n        set pen size to ((96) * (#Two))\n        pen down\n        pen up\n        set size to ((400) * (#Two)) %\n        switch costume to (join (item (#Four) of [itemlist v]) [])\n        if <([abs v] of (#Six) ) < [32]> then\n            set [hudfunction v] to []\n            show\n            create clone of (_myself_ v)\n            hide\n        else\n            stamp\n        end\n    end\n    clear graphic effects\nelse\n    change [#eight v] by (slots)\nend\nchange [#six v] by (192)\n\ndefine Open/Close (menu)\nset [#one v] to (((menu) * (-1)) + (0.01))\nSmoothCloseOtherMenus\n\ndefine MenuAnimation (menu) (size)\nset [#one v] to (menu)\nif <(size) = []> then\n    if <(menu) < [0]> then\n        change [#one v] by (((1) - (menu)) / (8))\n        if <(#One) > [0]> then\n            set [#one v] to [0]\n        end\n    else\n        change [#one v] by ((((1) - (menu)) / (4)) + (0.02))\n        if <(#One) > [1]> then\n            set [#one v] to [1]\n        end\n    end\nelse\n    if <(menu) < [0]> then\n        change [#one v] by ((((1.15) - ([abs v] of (menu) )) / (5)) + (0.02))\n        if <(#One) > [0]> then\n            set [#one v] to [0]\n        end\n    else\n        change [#one v] by ((((1.15) - (menu)) / (3)) + (-0.05))\n        if <(#One) > [1]> then\n            set [#one v] to [1]\n        end\n    end\nend\n\ndefine CreateSimpleButton (costume) (function) (size) (textdisplay)\nswitch costume to (large v)\nset size to (size) %\nswitch costume to (costume)\nif <touching (mouse-pointer v)?> then\n    set [displaytext v] to (textdisplay)\n    set [displaytexttimer v] to [1]\n    change size by (15)\nend\nif <(MenuElement) > [0.8]> then\n    set [hudfunction v] to (function)\n    if <<(size) = [400]> or <<(PleaseWait) = [1]> and <(y position) > [-160]>>> then\n        stamp\n    else\n        create clone of (_myself_ v)\n    end\nelse\n    set [hudfunction v] to []\n    stamp\nend\n\ndefine SmoothCloseOtherMenus\nif <(AreasMenu) > [0]> then\n    set [areasmenu v] to ((AreasMenu) * (-1))\nend\nif <(InventoryMenu) > [0]> then\n    set [inventorymenu v] to ((InventoryMenu) * (-1))\nend\nif <(AreaMenu) > [0]> then\n    set [areamenu v] to ((AreaMenu) * (-1))\nend\nif <(BackgroundMenu) > [0]> then\n    set [backgroundmenu v] to ((BackgroundMenu) * (-1))\nend\nif <(MusicMenu) > [0]> then\n    set [musicmenu v] to ((MusicMenu) * (-1))\nend\nif <(CameraMenu) > [0]> then\n    set [cameramenu v] to ((CameraMenu) * (-1))\nend\nif <(PlayMenu) > [0]> then\n    set [playmenu v] to ((PlayMenu) * (-1))\nend\nif <(OptionsMenu) > [0]> then\n    set [optionsmenu v] to ((OptionsMenu) * (-1))\nend\nif <(PlaceMenu) > [0]> then\n    set [placemenu v] to ((PlaceMenu) * (-1))\nend\nif <(SaveMenu) > [0]> then\n    set [savemenu v] to ((SaveMenu) * (-1))\nend\nif <(MapSaveMenu) > [0]> then\n    set [mapsavemenu v] to ((MapSaveMenu) * (-1))\nend\n\ndefine DeleteWorldLayer (layer)\nif <(layer) < ((WorldHeight) + (1))> then\n    change [worldheight v] by (-1)\n    set [deletingareaprogress v] to (layer)\n    repeat (WorldWidth)\n        delete (DeletingAreaProgress) of [blco v]\n        delete (DeletingAreaProgress) of [blty v]\n        delete (DeletingAreaProgress) of [semi type v]\n        delete (DeletingAreaProgress) of [track type v]\n        change [deletingareaprogress v] by (WorldHeight)\n        change [deletingareaprogress2 v] by (((100) / (AreaHeight)) / (WorldWidth))\n    end\n    change [deletingareaprogress2 v] by (((100) / (AreaHeight)) * (-1))\nend\nchange [deletingareaprogress2 v] by ((100) / (AreaHeight))\n\ndefine ExtractPiece (no.) From (area)\nset [#one v] to []\nset [#two v] to [0]\nrepeat ((no.) - (1))\n    repeat until <(letter (#Two) of (item (area) of [areas v])) = [,]>\n        change [#two v] by (1)\n    end\n    change [#two v] by (1)\nend\nrepeat until <(letter (#Two) of (item (area) of [areas v])) = [,]>\n    set [#one v] to (join (#One) (letter (#Two) of (item (area) of [areas v])))\n    change [#two v] by (1)\nend\n\nwhen I receive [deletethisarea v]\nchange [createrestorepointtimer v] by (15)\nwait (0) seconds\nif <[1] = [1]> then\n    delete this clone\nend\nset [savemenuprogress v] to [0]\nset [pleasewait v] to [1]\nset [deletingareaprogress2 v] to [0]\nrepeat ((AreaHeight) + (1))\n    DeleteWorldLayer (AreaStartHeight)\nend\nif <not <(CurrentArea) = (length of [areas v])>> then\n    ChangingOtherAreas\nend\nset [pleasewait v] to [0]\ndelete (CurrentArea) of [areas v]\nchange [currentarea v] by (-1)\nbroadcast (UpdateAreaSettings v)\nwait (0) seconds\nchange [mapy v] by (-9000)\n\ndefine ChangingOtherAreas\nset [#three v] to (CurrentArea)\nrepeat ((length of [areas v]) - (CurrentArea))\n    change [#three v] by (1)\n    ExtractPiece [1] From (#Three)\n    set [#five v] to (#One)\n    ExtractPiece [2] From (#Three)\n    set [#six v] to ((#One) - ((AreaHeight) + (1)))\n    ExtractPiece [3] From (#Three)\n    set [#seven v] to (#One)\n    ExtractPiece [4] From (#Three)\n    set [#eight v] to (#One)\n    ExtractPiece [5] From (#Three)\n    set [#nine v] to (#One)\n    ExtractPiece [6] From (#Three)\n    set [#ten v] to (#One)\n    ExtractPiece [7] From (#Three)\n    set [#eleven v] to (#One)\n    ExtractPiece [8] From (#Three)\n    set [#twelve v] to (#One)\n    replace item (#Three) of [areas v] with (join (join (join (join (#Five) [,]) (join (#Six) [,])) (join (join (#Seven) [,]) (join (#Eight) [,]))) (join (join (join (#Nine) [,]) (join (#Ten) [,])) (join (join (#Eleven) [,]) (join (#Twelve) [,]))))\nend\n\nwhen I receive [addnewarea v]\nwait (0) seconds\nif <[1] = [1]> then\n    delete this clone\nend\nstop [other scripts in sprite v]\nask [Enter New Area Height. \(Min: 10, Max: 72\) Height is measured in blocks. Screen Height is 10 blocks. This can not be changed.] and wait\nset [#five v] to (answer)\nExtractPiece [2] From (length of [areas v])\nset [#three v] to (#One)\nExtractPiece [3] From (length of [areas v])\nset [#four v] to (#One)\nif <<<(#Five) > [72]> or <(#Five) < [10]>> or <not <((#Five) mod (1)) = [0]>>> then\n    stop [this script v]\nend\nif <(AreaMenu) > [0.5]> then\n    add (join [2,] (join (join (((#Three) + (#Four)) + (1)) [,]) (join (#Five) [,1,-8,-8,0,0,]))) to [areas v]\n    set [currentarea v] to (length of [areas v])\n    broadcast (UpdateAreaSettings v)\nend\n\ndefine ReplaceSection (piece) OfCurrentAreaWith (input)\nset [#five v] to [0]\nset [#six v] to [0]\nset [#seven v] to []\nrepeat (8)\n    change [#five v] by (1)\n    change [#six v] by (1)\n    if <(#Six) = (piece)> then\n        set [#seven v] to (join (#Seven) (join (input) [,]))\n    else\n        ExtractPiece (#Six) From (CurrentArea)\n        set [#seven v] to (join (#Seven) (join (#One) [,]))\n    end\nend\nreplace item (CurrentArea) of [areas v] with (#Seven)\n\nwhen I receive [replacecurrentmusic v]\nReplaceSection [4] OfCurrentAreaWith (CurrentMusic)\n\nwhen I receive [replacewaterlevel v]\nReplaceSection [5] OfCurrentAreaWith (CurrentWaterLevel)\n\ndefine RenderKeys\ngo to x: (207) y: (-160)\nset [#one v] to [0]\nrepeat (Keys)\n    change [#one v] by (1)\n    switch costume to (af v)\n    stamp\n    switch costume to (large v)\n    change x by (4)\n    if <(#One) = [5]> then\n        stop [this script v]\n    end\nend\n\nwhen I receive [closeallmenus v]\nset [inventorymenu v] to [0]\nset [areamenu v] to [0]\nset [areasmenu v] to [0]\nset [pleasewait v] to [0]\nset [musicmenu v] to [0]\nset [backgroundmenu v] to [0]\nset [musicscroll v] to [0]\nset [cameramenu v] to [0]\nset [playmenu v] to [0]\nset [optionsmenu v] to [0]\nset [placemenu v] to [0]\nset [savemenu v] to [0]\nset [mapsavemenu v] to [0]\n\ndefine InventorySlots\ngo to x: ((-70) + ((-70) * (#Cus1))) y: (-160)\nset [#eight v] to [0]\nrepeat ((5) + ((4) * (#Cus1)))\n    change [#eight v] by (1)\n    set [#sixteen v] to (item (#Eight) of [turbowarp link v])\n    CreateSimpleButton [Slot] (#Sixteen) [300] (item (item # of (#Sixteen) in [itemlist v]) of [itemnames v])\n    switch costume to (large v)\n    if <<(letter (2) of (#Sixteen)) = [x]> or <(#Sixteen) = [bs]>> then\n        switch costume to (join (#Sixteen) [2])\n    else\n        switch costume to (join (#Sixteen) [])\n    end\n    create clone of (_myself_ v)\n    change x by (35)\nend\n\nwhen I receive [mapuiupdate v]\nif <[1] = [1]> then\n    delete this clone\nend\nhide\nshow list [save code v]\nif <(MapEdit/PlayMode) = [1]> then\n    show\n    MapSaveMenu\n    hide\nend\nset [hudfunction v] to [Continue]\nbroadcast (MapOverlayUpdate v)\n\ndefine MapInventory\ngo to x: (-222) y: (-160)\nset [#eight v] to [0]\nrepeat (14)\n    change [#eight v] by (1)\n    set [#sixteen v] to (item (#Eight) of [maphuditems v])\n    clear graphic effects\n    if <(#Sixteen) = (PlacingBlockType)> then\n        set [brightness v] effect to (25)\n    end\n    if <not <(#Sixteen) = []>> then\n        CreateSimpleButton [Slot] (#Sixteen) [300] (item (#Eight) of [maphudnames v])\n        switch costume to (large v)\n        switch costume to (#Sixteen)\n        create clone of (_myself_ v)\n    end\n    change x by (34)\n    if <(#Sixteen) = [MapCastle]> then\n        change x by (2)\n    end\nend\n\nwhen I receive [replacelavalevel v]\nReplaceSection [6] OfCurrentAreaWith (CurrentLavaLevel)\n\nwhen I receive [replacexcamera v]\nReplaceSection [7] OfCurrentAreaWith (CameraX)\n\nwhen I receive [replaceycamera v]\nReplaceSection [8] OfCurrentAreaWith (CameraY)\n\nwhen I receive [displayupdate v]\nswitch costume to (large v)\nset size to (400) %\nswitch costume to (bargame v)\ngo to x: (0) y: (-160)\nstamp\ndelete this clone\n\ndefine MapSaveMenu\nif <not <(MapSaveMenu) = [0]>> then\n    MenuAnimation (MapSaveMenu) [2]\n    set [mapsavemenu v] to (#One)\n    set [menuelement v] to ([abs v] of (MapSaveMenu) )\n    set [#eight v] to ((MenuElement) * (360))\n    set [ghost v] effect to ((16) + (([sin v] of ((GameTimer) * (180)) ) * (8)))\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (0) y: ((-360) + (#Eight))\n    switch costume to (savemenughost v)\n    stamp\n    if <(SaveMenuProgress) = [0]> then\n        set [ghost v] effect to ((25) + (([cos v] of ((GameTimer) * (720)) ) * (8)))\n        if <(RenderWidth) > [300]> then\n            switch costume to (savemenughost3 v)\n        else\n            switch costume to (savemenughost2 v)\n        end\n        stamp\n    end\n    clear graphic effects\n    switch costume to (large2 v)\n    set size to (400) %\n    go to x: (0) y: ((-360) + (#Eight))\n    switch costume to (savemenuborder v)\n    stamp\n    if <(SaveMenuProgress) = [0]> then\n        delete all of [save code v]\n        go to x: (70) y: ((-314) + (#Eight))\n        CreateSimpleButton [Edit] [WLevelName] [400] [Edit World Name]\n        go to x: (70) y: ((-378) + (#Eight))\n        CreateSimpleButton [Edit] [WLevelDescription] [400] [Edit World Description]\n        if <(RenderWidth) > [300]> then\n            go to x: (70) y: ((-442) + (#Eight))\n            CreateSimpleButton [Edit] [WCreator] [400] [Edit World Maker Name]\n        end\n        go to x: (0) y: ((-472) + (#Eight))\n        CreateSimpleButton [Saving] [WSaving] [400] [Get World Save Code]\n    else\n        if <(SaveMenuProgress) = [2]> then\n            go to x: (-100) y: ((-456) + (#Eight))\n            CreateSimpleButton [Return] [BackSave] [400] [Change Level Information]\n            go to x: (100) y: ((-456) + (#Eight))\n            CreateSimpleButton [Done] [NoClear] [400] [Return to Editor]\n        else\n            if <(TextInputMenu) = [0]> then\n                broadcast (VerifyCode v)\n                set [textinputmenu v] to [1]\n            end\n            if <(MenuElement) > [0.9]> then\n                hide list [save code v]\n            end\n        end\n    end\nend\n\nwhen I receive [mapoverlayupdate v]\nif <not <(HudFunction) = [Continue]>> then\n    stop [this script v]\nend\nset [menuelement v] to [1]\nswitch costume to (large v)\nset size to (400) %\nif <(MapEdit/PlayMode) = [1]> then\n    switch costume to (bareditor v)\nelse\n    switch costume to (barmap v)\nend\ngo to x: (0) y: (-160)\nstamp\nif <(MapEdit/PlayMode) = [1]> then\n    show\n    MapInventory\n    hide\nelse\n    if <(IAmTheEditor) = [1]> then\n        show\n        go to x: (-216) y: (-160)\n        CreateSimpleButton [Pause] [MapPause] [300] [Back to Editor]\n        hide\n    end\nend\nif <(RenderWidth) > [300]> then\n    switch costume to (large v)\n    set size to (3000) %\n    go to x: (0) y: (0)\n    switch costume to (bar2 v)\n    stamp\n    switch costume to (large v)\n    set size to (3000) %\n    go to x: (0) y: (0)\n    switch costume to (bar3 v)\n    stamp\nend\nbroadcast (MapOverlay2Update v)\n\nwhen I receive [replacebackground v]\nReplaceSection [1] OfCurrentAreaWith (CurrentBackground)\n\ndefine Common1\nset [placementrotation v] to ["]\nif <<(PlacingBlockType) = [bb]> or <(PlacingBlockType) = [bc]>> then\n    set [placementrotation v] to [%]\nend\nif <<(PlacingBlockType) = [bo]> or <(PlacingBlockType) = [bw]>> then\n    set [placementrotation v] to [$]\nend\nset [placetool v] to [1]\nif <[turbowarp link v] contains (PlacingBlockType)?> then\n    delete (item # of (PlacingBlockType) in [turbowarp link v]) of [turbowarp link v]\nelse\n    delete (9) of [turbowarp link v]\nend\ninsert (PlacingBlockType) at (1) of [turbowarp link v] \n\n@TextDisplay\n\ndefine Write (text) (centre) (shadow) (music)\nset size to (400) %\nset [#cus3 v] to [16]\nif <(music) = [4]> then\n    if <(length of (text)) > [26]> then\n        set [#cus3 v] to ((16) - (((length of (text)) - (26)) * (0.299)))\n        if <(#Cus3) < [8]> then\n            set [#cus3 v] to [8]\n        end\n        set size to (((400) / (16)) * (#Cus3)) %\n    end\nend\nif <(centre) = [1]> then\n    change [x v] by (((length of (text)) - (1)) * (((#Cus3) / (2)) * (-1)))\nend\nif <<(music) = []> or <<(music) = [3]> or <(music) = [4]>>> then\n    set [#one v] to [0]\n    set [#nine v] to [0]\nend\nrepeat (length of (text))\n    if <(X) > ((RenderWidth) - (8))> then\n        stop [this script v]\n    end\n    change [#one v] by (1)\n    if <(shadow) = [UI]> then\n        switch costume to (join [UI] (letter (#One) of (text)))\n    else\n        switch costume to (letter (#One) of (text))\n    end\n    if <<<(length of (text)) > [12]> and <(#Nine) = [1]>> and <<(music) = [1]> and <(X) > ((-390) + (#Eight))>>> then\n        switch costume to (. v)\n    end\n    if <(music) = [3]> then\n        if <<(length of (text)) > [17]> and <(X) > [16]>> then\n            switch costume to (. v)\n            if <(X) > [48]> then\n                stop [this script v]\n            end\n        end\n    end\n    set x to (X)\n    if <(music) = [1]> then\n        set [ghost v] effect to (0)\n        set [#eleven v] to (((-540) + (#Eight)) - (((#One) * (16)) mod (16)))\n        if <(X) < (#Eleven)> then\n            set [ghost v] effect to (((X) - (#Eleven)) * (-10))\n        end\n        set [#eleven v] to ((-362) + (#Eight))\n        if <(X) > (#Eleven)> then\n            set [ghost v] effect to (((X) - (#Eleven)) * (10))\n        end\n    end\n    if <<([abs v] of (X) ) < ((RenderWidth) - (8))> and <<(X) < ((-348) + (#Eight))> or <<(music) = []> or <<(music) = [3]> or <(music) = [4]>>>>> then\n        if <(shadow) = [1]> then\n            set [brightness v] effect to (-100)\n            change y by (-2)\n            stamp\n            change y by (2)\n            set [brightness v] effect to (100)\n        end\n        if <(music) = [4]> then\n            stamp\n        else\n            stamp\n        end\n        if <(text) = [Music List]> then\n            switch costume to (under v)\n            stamp\n        end\n    end\n    change [x v] by (#Cus3)\nend\n\nwhen I receive [overlayupdate v]\nif <(costume [name v]) = [Logo]> then\n    stop [this script v]\nend\nif <(Edit/PlayMode) = [0]> then\n    if <not <(OptionsMenu) = [0]>> then\n        clear graphic effects\n        set [menuelement v] to ([abs v] of (OptionsMenu) )\n        set [#eight v] to ((MenuElement) * (320))\n        set y to (116)\n        set [brightness v] effect to (-100)\n        set [#cus4 v] to ((-538) + (#Eight))\n        NextLine [Show Tracks] [0]\n        NextLine [Time] [-26]\n        NextLine (join (TimeLeftFull) [ Seconds]) [-20]\n        NextLine [Unload] [-26]\n        NextLine [on Tracks] [-20]\n        NextLine [Teleport] [-26]\n        NextLine [Restore] [-26]\n        NextLine [Progressive] [-26]\n        NextLine [Powerups] [-20]\n        NextLine [Alternative] [-26]\n        NextLine [Loading] [-20]\n    end\n    if <not <(CameraMenu) = [0]>> then\n        clear graphic effects\n        set [menuelement v] to ([abs v] of (CameraMenu) )\n        set [#eight v] to ((MenuElement) * (320))\n        set [#cus4 v] to ((-440) + (#Eight))\n        set y to (116)\n        set [brightness v] effect to (-100)\n        NextLine [X Camera] []\n        set y to (64)\n        if <(CameraX) = [0]> then\n            NextLine [Standard] []\n        end\n        if <(CameraX) = [1]> then\n            NextLine [Right Only] []\n        end\n        if <(CameraX) = [2]> then\n            NextLine [Left Only] []\n        end\n        if <(CameraX) = [3]> then\n            NextLine [Auto Scroll] []\n            NextLine [Right] [-16]\n        end\n        if <(CameraX) = [4]> then\n            NextLine [Auto Scroll] []\n            NextLine [Right x2] [-16]\n        end\n        if <(CameraX) = [5]> then\n            NextLine [Auto Scroll] []\n            NextLine [Right x4] [-16]\n        end\n        if <(CameraX) = [6]> then\n            NextLine [Stationary] []\n        end\n        switch costume to (large v)\n        go to x: ((-440) + (#Eight)) y: (20)\n        switch costume to (join [XCam] (CameraX))\n        stamp\n        set y to (-20)\n        NextLine [Y Camera] []\n        set y to (-72)\n        set [brightness v] effect to (-100)\n        if <(CameraY) = [0]> then\n            NextLine [Standard] []\n        end\n        if <(CameraY) = [1]> then\n            NextLine [Up Only] []\n        end\n        if <(CameraY) = [2]> then\n            NextLine [Down Only] []\n        end\n        if <(CameraY) = [3]> then\n            NextLine [Auto Scroll] []\n            NextLine [Up] [-16]\n        end\n        if <(CameraY) = [4]> then\n            NextLine [Auto Scroll] []\n            NextLine [Down] [-16]\n        end\n        if <(CameraY) = [5]> then\n            NextLine [Stationary] []\n        end\n        switch costume to (large v)\n        go to x: ((-440) + (#Eight)) y: (-116)\n        switch costume to (join [YCam] (CameraY))\n        stamp\n    end\n    if <not <(SaveMenu) = [0]>> then\n        set [menuelement v] to ([abs v] of (SaveMenu) )\n        set [#eight v] to ((MenuElement) * (360))\n        clear graphic effects\n        set [brightness v] effect to (-100)\n        switch costume to (large v)\n        go to x: (0) y: ((-242) + (#Eight))\n        set [#cus4 v] to [0]\n        NextLine [Save Menu] [0]\n        if <<(SaveMenuProgress) = [0]> or <(SaveMenuProgress) = [0.5]>> then\n            set [levelcreator v] to (username)\n            delete all of [level tags v]\n            switch costume to (large v)\n            NextLine [You must clear your] [-40]\n            NextLine [course before you can] [-20]\n            NextLine [get the save code.] [-20]\n            if <<(GoalArea) = [0]> and <(WhaWha) = [0]>> then\n                NextLine [You can not clear your] [-56]\n                NextLine [course as there is no Goal.] [-20]\n            else\n                NextLine [Would you like to start] [-56]\n                NextLine [the clear check?] [-20]\n            end\n        else\n            if <<(SaveMenuProgress) = [2]> or <(SaveMenuProgress) = [2.5]>> then\n                switch costume to (large v)\n                if <(SaveMenuProgress) = [2.5]> then\n                    NextLine [Incorrect. Try again.] [-40]\n                    NextLine [Triple click the code,] [-32]\n                    NextLine [right click and Copy.] [-20]\n                    NextLine [Then paste it into the box.] [-20]\n                else\n                    NextLine [To copy the save code,] [-40]\n                    NextLine [triple click it, then] [-20]\n                    NextLine [right click and Copy.] [-20]\n                    NextLine [Then paste it into the box.] [-20]\n                end\n            else\n                if <(SaveMenuProgress) = [3]> then\n                    switch costume to (large v)\n                    NextLine [Code copied correctly!] [-40]\n                    NextLine [You can share your level] [-32]\n                    NextLine [in the level forum, linked ] [-20]\n                    NextLine [in Notes and Credits.] [-20]\n                    NextLine [It can also be] [-32]\n                    NextLine [used in a World.] [-20]\n                else\n                    set [#cus4 v] to [-214]\n                    NextLine [Level Name:] [-48]\n                    NextLine (LevelName) [-24]\n                    NextLine [Description:] [-40]\n                    NextLine (LevelDescription) [-24]\n                    NextLine [Made by:] [-40]\n                    NextLine (LevelCreator) [-24]\n                    set [x v] to [158]\n                    set y to ((-266) + (#Eight))\n                    Write [Tags:] [1] [] []\n                    change y by (-32)\n                    Tag [Standard]\n                    Tag [Puzzle]\n                    Tag [Speedrun]\n                    Tag [Auto]\n                    Tag [Other]\n                end\n            end\n        end\n    end\n    if <(AnyMenuOpen) = [0]> then\n        if <not <<(MouseStartX) = [x]> or <(MouseStartX) = [z]>>> then\n            set [x v] to [0]\n            set y to (-132)\n            set [#four v] to (([abs v] of ((MouseStartY) - (MouseY)) ) + (1))\n            set [#five v] to (([abs v] of ((MouseStartX) - (MouseX)) ) + (1))\n            if <((#Four) * (#Five)) > [1]> then\n                Write (join (join [Height: ] (#Four)) (join [ Width: ] (#Five))) [1] [1] []\n            end\n        else\n            if <(RotateText) = [1]> then\n                set [x v] to [0]\n                set y to (-132)\n                Write [Press \[R\] to Rotate] [1] [1] []\n            end\n        end\n    end\nend\nif <(Edit/PlayMode) = [1]> then\n    clear graphic effects\n    HudBar\nend\nDisplayText\nif <(PleaseWait) = [1]> then\n    switch costume to (large v)\n    set [x v] to [0]\n    go to x: (0) y: (20)\n    Write [Please Wait...] [1] [1] []\n    set [x v] to [0]\n    go to x: (0) y: (-132)\n    Write [Do not stop the project.] [1] [1] []\n    set [x v] to [0]\n    go to x: (0) y: (-4)\n    if <(DeletingAreaProgress2) > [100]> then\n        set [deletingareaprogress2 v] to [100]\n    end\n    Write (join ([floor v] of (DeletingAreaProgress2) ) [%]) [1] [1] []\n    clear graphic effects\nend\n\nwhen I receive [flagclicked v]\nstop [other scripts in sprite v]\nhide\nswitch costume to (large v)\nset size to (400) %\nset [leveldescription v] to [None]\nset [worlddescription v] to [None]\ndelete this clone\n\ndefine MusicMenu\nclear graphic effects\nset y to ((84) + (((MusicScroll) * (32)) mod (32)))\nset [#three v] to ([floor v] of (MusicScroll) )\nrepeat (9)\n    change [#three v] by (1)\n    set [#four v] to [0]\n    switch costume to (large2 v)\n    set x to ((-456) + (#Eight))\n    clear graphic effects\n    set [ghost v] effect to (8)\n    switch costume to (musicback v)\n    if <(CurrentMusic) = (#Three)> then\n        set [ghost v] effect to (8)\n        switch costume to (large2 v)\n        switch costume to (musicback3 v)\n    else\n        if <<([abs v] of (((mouse y) + (1)) - (y position)) ) < [16]> and <([abs v] of (((mouse x) - (6)) - (x position)) ) < [103]>> then\n            set [brightness v] effect to (8)\n            switch costume to (large2 v)\n            switch costume to (musicback3 v)\n            set [#four v] to [1]\n            if <<<mouse down?> and <(ClickPause) = [0]>> and <(#Three) < ((length of [musiclist v]) + (1))>> then\n                set [currentmusic v] to (#Three)\n                broadcast (ReplaceCurrentMusic v)\n                set [clickpause v] to [1]\n                stop all sounds\n                broadcast (PlayMusic v)\n            end\n        end\n    end\n    stamp\n    clear graphic effects\n    if <((#Three) - (1)) < (length of [musiclist v])> then\n        if <(length of (item (#Three) of [musiclist v])) < [12]> then\n            set [#one v] to [0]\n        else\n            set [#one v] to ((((MusicTimer) * (16)) mod (25)) - (9))\n            if <(#One) < [0]> then\n                set [#one v] to [0]\n            end\n            if <(#One) > ((length of (item (#Three) of [musiclist v])) - (12.001))> then\n                set [#one v] to ((length of (item (#Three) of [musiclist v])) - (12.001))\n            end\n            set [#nine v] to <(#One) = [0]>\n        end\n        set [x v] to (((-540) + (#Eight)) - (((#One) * (16)) mod (16)))\n        set [#one v] to ([floor v] of (#One) )\n        set [brightness v] effect to (-40)\n        if <(CurrentMusic) = (#Three)> then\n            change y by (([sin v] of ((MusicTimer) * (720)) ) * (2))\n        end\n        change y by (-2)\n        Write (item (#Three) of [musiclist v]) [] [] [1]\n        change y by (2)\n        if <(CurrentMusic) = (#Three)> then\n            change y by (([sin v] of ((MusicTimer) * (720)) ) * (-2))\n        end\n        clear graphic effects\n        switch costume to (large2 v)\n        set x to ((-456) + (#Eight))\n        switch costume to (musicbar v)\n        set [ghost v] effect to (50)\n        stamp\n        clear graphic effects\n        change y by (-32)\n    end\nend\n\nwhen I receive [uiupdate v]\nif <[1] = [1]> then\n    delete this clone\nend\nclear graphic effects\nswitch costume to (large4 v)\nif <(Edit/PlayMode) = [0]> then\n    set [ghost v] effect to (50)\nend\nset size to (400) %\nif <<<(CurrentLavaLevel) = (CurrentWaterLevel)> and <not <(CurrentWaterLevel) = [-8]>>> and <not <<<(PlacingBlockType) = [Lava]> or <(PlacingBlockType) = [Water]>> and <(Edit/PlayMode) = [0]>>>> then\n    go to x: ((0) - ((MapX) mod (32))) y: (((CurrentLavaLevel) * (32)) - (MapY))\n    switch costume to (join [Poison] (22Mod4+1))\n    stamp\nelse\n    if <<not <(CurrentLavaLevel) = [-8]>> or <(PlacingBlockType) = [Lava]>> then\n        if <<(PlacingBlockType) = [Lava]> and <(Edit/PlayMode) = [0]>> then\n            go to x: ((0) - ((MapX) mod (32))) y: (((MouseY) * (32)) - (MapY))\n        else\n            go to x: ((0) - ((MapX) mod (32))) y: (((CurrentLavaLevel) * (32)) - (MapY))\n        end\n        if <(y position) > [240]> then\n            set y to (240)\n        end\n        switch costume to (join [Lava] (22Mod4+1))\n        stamp\n    end\n    clear graphic effects\n    if <<not <(CurrentWaterLevel) = [-8]>> or <(PlacingBlockType) = [Water]>> then\n        set [ghost v] effect to (50)\n        switch costume to (large4 v)\n        set size to (400) %\n        if <<(PlacingBlockType) = [Water]> and <(Edit/PlayMode) = [0]>> then\n            go to x: ((0) - ((MapX) mod (32))) y: (((MouseY) * (32)) - (MapY))\n        else\n            go to x: ((0) - ((MapX) mod (32))) y: (((CurrentWaterLevel) * (32)) - (MapY))\n        end\n        if <(y position) > [240]> then\n            set y to (240)\n        end\n        switch costume to (join [Water] (22Mod4+1))\n        stamp\n    end\nend\nclear graphic effects\nif <(RenderWidth) > [300]> then\n    if <(MapX) < [352]> then\n        switch costume to (large3 v)\n        set size to (3000) %\n        go to x: (((MapX) * (-1)) + (256)) y: (0)\n        switch costume to (bar3 v)\n        stamp\n        set size to (400) %\n    end\n    if <(GoalArea) = (CurrentArea)> then\n        if <<(MapX) > (((GoalX) * (32)) - (80))> and <(Edit/PlayMode) = [1]>> then\n            switch costume to (large3 v)\n            set size to (3000) %\n            go to x: (((GoalX) * (32)) - (MapX)) y: (0)\n            switch costume to (bar4 v)\n            stamp\n            set size to (400) %\n        end\n    end\n    if <not <(LeftScrollStop) = [x]>> then\n        if <<([abs v] of ((RightScrollStop) - (LeftScrollStop)) ) < [14]> and <not <(RightScrollStop) = [x]>>> then\n            set [#one v] to [0]\n        else\n            set [#one v] to ((((LeftScrollStop) * (32)) - (MapX)) + (224))\n        end\n        if <(#One) > [-92]> then\n            switch costume to (large3 v)\n            set size to (3000) %\n            go to x: (#One) y: (0)\n            switch costume to (bar3 v)\n            stamp\n            set size to (400) %\n        end\n    end\n    if <not <(RightScrollStop) = [x]>> then\n        if <<([abs v] of ((RightScrollStop) - (LeftScrollStop)) ) < [14]> and <not <(LeftScrollStop) = [x]>>> then\n            set [#one v] to [0]\n        else\n            set [#one v] to ((((RightScrollStop) * (32)) - (MapX)) + (-224))\n        end\n        if <(#One) < [92]> then\n            switch costume to (large3 v)\n            set size to (3000) %\n            go to x: (#One) y: (0)\n            switch costume to (bar4 v)\n            stamp\n            set size to (400) %\n        end\n    end\n    if <<(CameraX) = [6]> and <(Edit/PlayMode) = [1]>> then\n        switch costume to (large3 v)\n        set size to (3000) %\n        go to x: (0) y: (0)\n        switch costume to (bar4 v)\n        stamp\n        switch costume to (large3 v)\n        set size to (3000) %\n        go to x: (0) y: (0)\n        switch costume to (bar3 v)\n        stamp\n        set size to (400) %\n    end\nend\nswitch costume to (large3 v)\nset size to (400) %\nif <(Edit/PlayMode) = [0]> then\n    if <<(MouseStartX) = [z]> and <(StartingPlacementSize) > [200]>> then\n        set pen color to (#f8f8f8)\n        set pen size to (4)\n        go to x: (((RenderWidth) - (12)) * (-1)) y: (-140)\n        pen down\n        change x by ((((StartingPlacementSize) - (length of [placex v])) / (StartingPlacementSize)) * (((RenderWidth) - (12)) * (2)))\n        pen up\n    end\n    if <not <(MusicMenu) = [0]>> then\n        clear graphic effects\n        set [menuelement v] to ([abs v] of (MusicMenu) )\n        set [#eight v] to ((MenuElement) * (320))\n        MusicMenu\n        clear graphic effects\n        switch costume to (large2 v)\n        go to x: ((-456) + (#Eight)) y: (-120)\n        switch costume to (musicmenuoverlay v)\n        stamp\n        set y to (116)\n        set [brightness v] effect to (-100)\n        set [x v] to ((-451) + (#Eight))\n        Write [Music List] [1] [] []\n    end\nend\nif <(Menu) = [Menu]> then\n    clear graphic effects\n    if <(MapX) < [720]> then\n        show\n        set size to (300) %\n        switch costume to (large2 v)\n        if <(LevelCreator) = [DryBonesFan]> then\n            go to x: ((256) - (MapX)) y: ((9936) - (MapY))\n        else\n            go to x: ((256) - (MapX)) y: ((240) - (MapY))\n        end\n        switch costume to (logo v)\n        if <<(TransitionType) = [0]> and <((y position) mod (32)) = [16]>> then\n            create clone of (_myself_ v)\n        else\n            stamp\n        end\n        hide\n    end\n    set [#cus1 v] to [1]\n    set [#cus2 v] to ([sin v] of ((GameTimer) * (360)) )\n    if <<(CurrentBackground) = [22]> or <(CurrentBackground) = [5]>> then\n        set [brightness v] effect to (-10)\n    end\n    if <(MenuSubtype) = [Make]> then\n        switch costume to (large v)\n        set size to (400) %\n        go to x: (0) y: (-64)\n        change y by (#Cus2)\n        ClickableText\n        if <(#Cus2) = [1]> then\n            set [iamtheeditor v] to [1]\n            set [clickpause v] to [1]\n            set [levelname v] to [Unnamed]\n            set [leveldescription v] to [None]\n            broadcast (CreateNewLevel v)\n            stop all sounds\n            broadcast (PlayMusic v)\n        end\n        switch costume to (make level v)\n        stamp\n        set size to (400) %\n        change y by (-28)\n        ClickableText\n        if <(#Cus2) = [1]> then\n            set [iamtheeditor v] to [1]\n            set [clickpause v] to [1]\n            set [menu v] to [Map]\n            set [worldname v] to [Unnamed]\n            set [worlddescription v] to [None]\n            broadcast (CreateNewWorld v)\n            stop all sounds\n        end\n        switch costume to (make world v)\n        stamp\n        set size to (400) %\n        change y by (-32)\n        ClickableText\n        if <(#Cus2) = [1]> then\n            set [clickpause v] to [1]\n            set [menusubtype v] to [Main]\n        end\n        switch costume to (menuback v)\n        stamp\n    else\n        if <(MenuSubtype) = [Play]> then\n            switch costume to (large v)\n            set size to (400) %\n            go to x: (0) y: (-64)\n            change y by (#Cus2)\n            ClickableText\n            if <(#Cus2) = [1]> then\n                if <(TextInputMenu) = [0]> then\n                    broadcast (AskLoadLevel v)\n                end\n            end\n            switch costume to (load level v)\n            stamp\n            set size to (400) %\n            change y by (-28)\n            ClickableText\n            if <(#Cus2) = [1]> then\n                if <(TextInputMenu) = [0]> then\n                    broadcast (AskLoadWorld v)\n                end\n            end\n            switch costume to (load world v)\n            stamp\n            set size to (400) %\n            change y by (-32)\n            ClickableText\n            if <(#Cus2) = [1]> then\n                set [clickpause v] to [1]\n                set [menusubtype v] to [Main]\n            end\n            switch costume to (menuback v)\n            stamp\n        else\n            switch costume to (large v)\n            set size to (400) %\n            go to x: (-64) y: (-72)\n            change y by ((#Cus2) * (2))\n            set [#cus1 v] to [2]\n            ClickableText\n            if <(#Cus2) = [1]> then\n                set [menusubtype v] to [Make]\n                set [clickpause v] to [1]\n            end\n            switch costume to (menumake v)\n            stamp\n            set size to (400) %\n            set x to (64)\n            ClickableText\n            if <(#Cus2) = [1]> then\n                set [menusubtype v] to [Play]\n                set [clickpause v] to [1]\n            end\n            switch costume to (menuplay v)\n            stamp\n        end\n    end\n    set size to (400) %\n    set [x v] to [0]\n    set y to (172)\n    if <(mouse y) > [156]> then\n        set [x v] to [Do not edit this to try and steal credit. Thanks.]\n        set [x v] to (mouse x)\n    end\n    Write [Made by BenjaminWins11] [1] [1] []\n    set [x v] to [0]\n    set y to (-132)\n    set [ghost v] effect to (50)\n    if <(mouse y) < [-131.3]> then\n        clear graphic effects\n        set y to (mouse y)\n    end\n    if <(MenuSubtype) = [Main]> then\n        Write [v1.2.14] [1] [1] []\n    end\n    clear graphic effects\nend\nTransitions\n\ndefine DisplayText\nif <not <(DisplayText) = []>> then\n    set [x v] to [0]\n    clear graphic effects\n    set [ghost v] effect to (75)\n    if <(DisplayTextTimer) < [1]> then\n        set [ghost v] effect to ((75) + (((1) - (DisplayTextTimer)) * (75)))\n    end\n    switch costume to (large v)\n    set size to (400) %\n    go to x: (0) y: (160)\n    switch costume to (bar v)\n    stamp\n    clear graphic effects\n    set [brightness v] effect to (100)\n    if <(DisplayTextTimer) < [1]> then\n        set [ghost v] effect to (((1) - (DisplayTextTimer)) * (250))\n    end\n    Write (DisplayText) [1] [1] []\n    clear graphic effects\n    change [displaytexttimer v] by ((-2) / (30))\n    if <not <(DisplayTextTimer) > [0]>> then\n        set [displaytext v] to []\n        set [displaytexttimer v] to [0]\n    end\nend\n\nwhen I receive [mapuiupdate v]\nDisplayText\nTransitions\ndelete this clone\n\ndefine Transitions\nclear graphic effects\nif <not <(TransitionType) = [0]>> then\n    change [transitionprogress v] by (1)\n    if <(TransitionType) = [Transport]> then\n        if <(TransitionProgress) > [42]> then\n            switch costume to (  v)\n            set size to ((155) + ((((TransitionProgress) - (43)) * ((TransitionProgress) - (43))) * (5))) %\n            go to x: ((PlayerX) - (MapX)) y: ((PlayerY) - (MapY))\n            switch costume to (blackhole v)\n            stamp\n        else\n            if <(TransitionProgress) > [14]> then\n                set [ghost v] effect to ((100) - (((TransitionProgress) - (14)) * (10)))\n                switch costume to (large v)\n                set size to (1500) %\n                go to x: (0) y: (0)\n                switch costume to (black v)\n                stamp\n            end\n        end\n        if <(TransitionProgress) > [70]> then\n            set [transitiontype v] to [0]\n            set [transitionprogress v] to [0]\n        end\n    end\n    if <(TransitionType) = [FadeIn]> then\n        if <(TransitionProgress) < [15]> then\n        switch costume to (large v)\n        set size to (1500) %\n        go to x: (0) y: (0)\n        switch costume to (black v)\n        stamp\n        if <(TransitionProgress) > [25]> then\n            set [transitiontype v] to [0]\n            set [transitionprogress v] to [0]\n        end\n    end\n    if <(TransitionType) = [GameOver]> then\n        set [ghost v] effect to (95)\n        switch costume to (large v)\n        set size to (1500) %\n        go to x: (0) y: (0)\n        switch costume to (black v)\n        stamp\n        clear graphic effects\n        set size to (400) %\n        set [x v] to [0]\n        set y to (0)\n        Write [Game Over] [1] [1] []\n        if <(TransitionProgress) > [150]> then\n            set [transitiontype v] to [FadeIn]\n            set [transitionprogress v] to [0]\n            set [menu v] to [Map]\n            broadcast (PlayMapFromStart v)\n        end\n    end\n    if <(TransitionType) = [WorldEnd]> then\n        if <(TransitionProgress) < [45]> then\n            set [ghost v] effect to ((100) - ((TransitionProgress) * (1.5)))\n        else\n            if <(TransitionProgress) > [200]> then\n                set [ghost v] effect to ((32) + (((TransitionProgress) - (200)) * (7)))\n            else\n                set [ghost v] effect to (32)\n            end\n        end\n        switch costume to (large v)\n        set size to (1500) %\n        go to x: (0) y: (0)\n        switch costume to (black v)\n        stamp\n        set size to (400) %\n        set [x v] to [0]\n        clear graphic effects\n        if <(TransitionProgress) < [205]> then\n            set y to (-16)\n            change y by ([abs v] of (([cos v] of ((TransitionProgress) * (4)) ) * (8)) )\n            Write [World Completed!] [1] [1] []\n            change y by (48)\n            set [x v] to [0]\n            Write [Congratulations!] [1] [1] []\n        end\n        clear graphic effects\n        if <(TransitionProgress) > [210]> then\n            set [transitiontype v] to [0]\n            set [transitionprogress v] to [0]\n        end\n    end\n    if <<(TransitionType) = [DisplayName]> or <(TransitionType) = [DisplayName2]>> then\n        set [displaytext v] to [0]\n        set [displaytexttimer v] to [0]\n        set [edit/playmode v] to [1]\n        if <(TransitionProgress) > [134]> then\n            set [ghost v] effect to (((TransitionProgress) - (135)) * (10))\n        else\n            set [ghost v] effect to ((100) - ((TransitionProgress) * (25)))\n        end\n        switch costume to (large v)\n        set size to (1500) %\n        go to x: (0) y: (0)\n        switch costume to (black v)\n        stamp\n        switch costume to (large v)\n        set size to (400) %\n        set [brightness v] effect to (100)\n        if <(TransitionType) = [DisplayName2]> then\n            set [ghost v] effect to (0)\n            if <(TransitionProgress) > [144]> then\n                set [ghost v] effect to (((TransitionProgress) - (144)) * (18))\n            end\n            set [x v] to [0]\n            Write (WorldName) [1] [] [4]\n            set y to (-132)\n            set [x v] to [0]\n            Write (join [Made By: ] (WorldCreator)) [1] [] [4]\n        else\n            set [x v] to [0]\n            Write (LevelName) [1] [] [4]\n            set y to (-132)\n            set [x v] to [0]\n            if <<(PlayingAMap) = [0]> or <not <(WorldCreator) = (LevelCreator)>>> then\n                Write (join [Made By: ] (LevelCreator)) [1] [] [4]\n            end\n        end\n        if <(TransitionProgress) > [150]> then\n            set [transitiontype v] to [0]\n            set [transitionprogress v] to [0]\n        end\n    end\nend\nswitch costume to (large3 v)\nset size to (400) %\n\ndefine Tag (name)\nset [x v] to [158]\nset [ghost v] effect to (50)\nset [brightness v] effect to (-10)\nswitch costume to (large v)\nset x to (158)\nswitch costume to (tags v)\nif <<([abs v] of ((mouse y) - (y position)) ) < [15]> and <([abs v] of ((mouse x) - ((x position) + (1))) ) < [74]>> then\n    change [brightness v] effect by (-10)\n    if <[level tags v] contains (name)?> then\n        set [displaytext v] to (join [Remove Tag: ] (name))\n    else\n        set [displaytext v] to (join [Add Tag: ] (name))\n    end\n    set [displaytexttimer v] to [1]\n    if <<mouse down?> and <(ClickPause) = [0]>> then\n        set [clickpause v] to [1]\n        if <[level tags v] contains (name)?> then\n            delete (item # of (name) in [level tags v]) of [level tags v]\n        else\n            if <(name) = [Other]> then\n                delete all of [level tags v]\n            else\n                delete (item # of [Other] in [level tags v]) of [level tags v]\n            end\n            add (name) to [level tags v]\n        end\n    end\nend\nif <[level tags v] contains (name)?> then\n    set [ghost v] effect to (0)\n    set [brightness v] effect to (10)\nend\nstamp\nclear graphic effects\nset [brightness v] effect to (-100)\nWrite (name) [1] [] []\nswitch costume to (large v)\nchange y by (-40)\n\nwhen I receive [displayupdate v]\nTransitions\ndelete this clone\n\nwhen I receive [mapoverlayupdate v]\nif <(MapEdit/PlayMode) = [1]> then\n    if <not <(MapSaveMenu) = [0]>> then\n        set [menuelement v] to ([abs v] of (MapSaveMenu) )\n        set [#eight v] to ((MenuElement) * (360))\n        clear graphic effects\n        set [brightness v] effect to (-100)\n        switch costume to (large v)\n        go to x: (0) y: ((-242) + (#Eight))\n        set [#cus4 v] to [0]\n        NextLine [World Save Menu] [0]\n        if <(MenuElement) < [0.5]> then\n            set [worldcreator v] to (username)\n        end\n        if <<(SaveMenuProgress) = [1]> or <(SaveMenuProgress) = [1.5]>> then\n            switch costume to (large v)\n            if <(SaveMenuProgress) = [1.5]> then\n                NextLine [Incorrect. Try again.] [-40]\n                NextLine [Triple click the code,] [-32]\n                NextLine [right click and Copy.] [-20]\n                NextLine [Then paste it into the box.] [-20]\n            else\n                NextLine [To copy the save code,] [-40]\n                NextLine [triple click it, then] [-20]\n                NextLine [right click and Copy.] [-20]\n                NextLine [Then paste it into the box.] [-20]\n            end\n        else\n            if <(SaveMenuProgress) = [2]> then\n                switch costume to (large v)\n                NextLine [Code copied correctly!] [-40]\n                NextLine [You can share your World] [-48]\n                NextLine [code in the same forum as ] [-20]\n                NextLine [levels, linked in the] [-20]\n                NextLine [Notes and Credits.] [-20]\n            else\n                set [#cus4 v] to [-214]\n                NextLine [World Name:] [-48]\n                NextLine (WorldName) [-24]\n                NextLine [Description:] [-40]\n                NextLine (WorldDescription) [-24]\n                NextLine [Made by:] [-40]\n                NextLine (WorldCreator) [-24]\n                set [x v] to [158]\n                set y to ((-266) + (#Eight))\n                Write [Tags:] [1] [] []\n                change y by (-32)\n                Tag [Standard]\n                Tag [Challenge]\n                Tag [Long]\n                Tag [Themed]\n                Tag [Other]\n            end\n        end\n    end\nend\n\ndefine HudBar\nclear graphic effects\nset [x v] to [80]\nset y to (-160)\nif <(Coins) < [10]> then\n    Write (join [ ] (Coins)) [] [UI] []\nelse\n    Write (Coins) [] [UI] []\nend\nif <not <<(Menu) = [Map]> or <(Menu) = [Display]>>> then\n    set [x v] to [144]\n    set y to (-160)\n    if <(round (TimeLeft)) < [10]> then\n        Write (join [00] (round (TimeLeft))) [] [UI] []\n    else\n        if <(round (TimeLeft)) < [100]> then\n            Write (join [0] (round (TimeLeft))) [] [UI] []\n        else\n            if <(round (TimeLeft)) > [999]> then\n                Write [999] [] [UI] []\n            else\n                Write (round (TimeLeft)) [] [UI] []\n            end\n        end\n    end\n    set x to (-82)\n    set y to (-160)\n    set [#one v] to (([abs v] of (PlayerXVelocity) ) - (5))\n    repeat (6)\n        switch costume to (empty1 v)\n        if <(#One) > [0]> then\n            switch costume to (empty2 v)\n        end\n        stamp\n        change [#one v] by ((-3.5) / (6))\n        change x by (16)\n    end\n    set y to (-160)\n    set x to (24)\n    if <([abs v] of (PlayerXVelocity) ) > [8.5]> then\n        switch costume to (empty4 v)\n    else\n        switch costume to (empty3 v)\n    end\n    stamp\nend\nset [x v] to [-128]\nset y to (-160)\nif <(PlayingAMap) = [1]> then\n    if <(Lives) > [99]> then\n        Write [99] [] [UI] []\n    else\n        if <(Lives) < [10]> then\n            Write (join [ ] (Lives)) [] [UI] []\n        else\n            Write (Lives) [] [UI] []\n        end\n    end\nelse\n    Write (join [ ] [I]) [] [UI] []\nend\n\nwhen I receive [mapoverlay2update v]\nif <(MapEdit/PlayMode) = [0]> then\n    HudBar\nend\n\nwhen [timer v] > (((0.5) + (<(RenderWidth) < [300]> / (2))) + ((<(length of [placex v]) > [0]> + <(Menu) = [Display]>) * (8)))\nif <(FlagClicked) > [0]> then\n    stop all sounds\n    wait (0) seconds\n    repeat (5)\n        set [ghost v] effect to (90)\n        switch costume to (large v)\n        set size to (1500) %\n        go to x: (0) y: (0)\n        switch costume to (black v)\n        stamp\n        set size to (400) %\n        set [x v] to [0]\n        clear graphic effects\n        set [ghost v] effect to (25)\n        Write [Press E to Resume] [1] [1] []\n        clear graphic effects\n    end\n    set size to (400) %\n    set [x v] to [0]\n    Write [Press E to Resume] [1] [1] []\n    clear graphic effects\nend\n\nwhen I receive [playmusic v]\nif <(HitGoal) = [0]> then\n    wait (0.2) seconds\nend\nif <<(Menu) = [Game]> or <(Menu) = [Menu]>> then\n    if <(Edit/PlayMode) = [0]> then\n        clear sound effects\n        if <(Edit/PlayMode) = [0]> then\n            wait (0.5) seconds\n        else\n            broadcast (PlayMusic v)\n        end\n        if <(MusicMenu) = [0]> then\n            set volume to (33) %\n            set [pitch v] effect to (-25)\n            if <(pick random (1) to (5)) = [2]> then\n                play sound (item (pick random (2) to (8)) of [musiclist v]) until done\n            else\n                play sound (item (pick random (13) to (30)) of [musiclist v]) until done\n            end\n        else\n            set volume to (75) %\n            play sound (item (CurrentMusic) of [musiclist v]) until done\n        end\n    else\n        clear sound effects\n        set volume to (80) %\n        if <(Dead) = [1]> then\n            set volume to (100) %\n            play sound [86 Player Down v] until done\n            wait (10) seconds\n        else\n            if <(HitGoal) = [1]> then\n                set volume to (33) %\n                if <(GoalHitX) = [x]> then\n                    set volume to (50) %\n                    play sound [72 Fireworks v] until done\n                else\n                    play sound [28 v] until done\n                end\n                wait (10) seconds\n            else\n                if <<(TimeLeft) < [100.1]> and <not <(HurriedUp) = [1]>>> then\n                    set [hurriedup v] to [1]\n                    start sound [85 Time Up Warning v]\n                    wait (1.7) seconds\n                else\n                    if <(StarTimer) > [2]> then\n                        play sound [Invincible v] until done\n                    else\n                        if <(PTimer) > [2]> then\n                            play sound [Toads House v] until done\n                        else\n                            if <(Menu) = [Menu]> then\n                                set volume to (25) %\n                                play sound [Title v] until done\n                            else\n                                play sound (item (CurrentMusic) of [musiclist v]) until done\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    broadcast (PlayMusic v)\nend\n\ndefine ClickableText\nset [#cus2 v] to [0]\nif <(#Cus1) = [1]> then\n    set [#cus3 v] to <([abs v] of ((mouse y) - (y position)) ) < [12]>\nelse\n    set [#cus3 v] to <(distance to [mouse-pointer v]) < [50]>\nend\nif <(#Cus3) = [1]> then\n    change size by (50)\n    if <<mouse down?> and <(ClickPause) = [0]>> then\n        set [#cus2 v] to [1]\n    end\nend\n\ndefine NextLine (write) (drop)\nchange y by (drop)\nset [x v] to (#Cus4)\nif <(#Cus4) = [-214]> then\n    Write (write) [] [] [3]\nelse\n    if <(#Cus4) = ((-538) + (#Eight))> then\n        Write (write) [] [] []\n    else\n        Write (write) [1] [] []\n    end\nend\n\n@Particles\n\nwhen I receive [flagclicked v]\nset rotation style [left-right v]\nset size to (400) %\nhide\nset [particlex v] to [x]\nset volume to (50) %\ndelete this clone\n\nwhen I receive [uiupdate v]\nif <(Edit/PlayMode) = [0]> then\n    delete this clone\nelse\n    if <not <(ParticleX) = [x]>> then\n        change [particles v] by (1)\n        if <<<(ParticleType) = [en90]> or <(ParticleType) = [en-90]>> or <<(ParticleType) = [eo90]> or <(ParticleType) = [eo-90]>>> then\n            if < (ParticleType) contains [-90]?> then\n                change [particlex v] by (2)\n            else\n                change [particlex v] by (-2)\n            end\n            change [particlestate v] by (0.3)\n            change [particley v] by ((-1) - (ParticleState))\n            Costume (ParticleType) [900]\n        end\n        if <(ParticleType) = [Ball]> then\n            change [particlestate v] by (0.4)\n            S ((9) - (ParticleState)) ((9) - (ParticleState))\n            Costume (join [dg] (([floor v] of ((((ParticleOther) / (45)) + (ParticleState)) mod (4)) ) + (1))) [9]\n        end\n        if <<<(ParticleType) = [Coin]> or <(ParticleType) = [BCoin]>> or <<<<(ParticleType) = [af]> or <(ParticleType) = [Time]>> or <(ParticleType) = [BlueCoin]>> or <(ParticleType) = [KeyCoin]>>> then\n            if <(ParticleOther) = [0]> then\n                set [particleother v] to [9]\n            end\n            if <(ParticleOther) > [0]> then\n                change [particleother v] by (-0.7)\n            end\n            change [particlestate v] by (0.5)\n            change [particley v] by (ParticleOther)\n            if <<(ParticleType) = [BCoin]> and <(ParticleState) > [3.5]>> then\n                set [particletype v] to [Coin]\n            end\n            if <<(ParticleType) = [Time]> and <(ParticleState) > [1]>> then\n                set [particletype v] to [Coin]\n                set [particlestate v] to [4.5]\n            end\n            Costume (join (ParticleType) (round (ParticleState))) [6.5]\n        end\n        if <(ParticleType) = [Twister]> then\n            change [particlestate v] by (0.03)\n            change [particlex v] by (([cos v] of (ParticleOther) ) * ((3) + ((ParticleState) * (8))))\n            change [particley v] by ((4) - (ParticleState))\n            change [particleother v] by (24)\n            if <(ParticleState) > [1.3]> then\n                set [ghost v] effect to (((ParticleState) - (1.3)) * (400))\n            end\n            Costume [Twist] [1.5]\n            clear graphic effects\n        end\n        if <<(ParticleType) = [Brick]> or <(ParticleType) = [BIce]>> then\n            if <([abs v] of (ParticleOther) ) = [5]> then\n                S [-12] []\n                change [particley v] by (4)\n            end\n            if <([abs v] of (ParticleOther) ) = [20]> then\n                S [4] []\n                change [particley v] by (-8)\n            end\n            if <(ParticleOther) > [0]> then\n                change [particleother v] by (7)\n                if <(ParticleOther) > [160]> then\n                    set [particleother v] to [160]\n                end\n            else\n                change [particleother v] by (-7)\n                if <(ParticleOther) < [-160]> then\n                    set [particleother v] to [-160]\n                end\n            end\n            S [4] [8]\n            if <([abs v] of (ParticleOther) ) > [90]> then\n                change [particley v] by (([cos v] of (ParticleOther) ) * (4))\n            end\n            Costume (join (ParticleType) (22Mod4+1)) [1]\n        end\n        if <<(ParticleType) = [Landed]> or <(ParticleType) = [Koopaling]>> then\n            change [particlestate v] by (0.5)\n            Costume (join (ParticleType) (round (ParticleState))) [2.5]\n        end\n        if <<(ParticleType) = [Goomba]> or <<(ParticleType) = [Goombrat]> or <(ParticleType) = [Goop]>>> then\n            change [particlestate v] by (0.5)\n            Costume (ParticleType) [3.5]\n        end\n        if <(letter (1) of (ParticleType)) = [D]> then\n            if <(ParticleOther) = [0]> then\n                change [particley v] by (8)\n                if <((ParticleX) - (MapX)) > [0]> then\n                    set [particleother v] to [1]\n                else\n                    set [particleother v] to [-1]\n                end\n            end\n            if <(ParticleOther) > [0]> then\n                change [particleother v] by (8)\n                if <(ParticleOther) > [160]> then\n                    set [particleother v] to [160]\n                end\n            else\n                change [particleother v] by (-8)\n                if <(ParticleOther) < [-160]> then\n                    set [particleother v] to [-160]\n                end\n            end\n            S [4] [8]\n            if <([abs v] of (ParticleOther) ) > [90]> then\n                change [particley v] by (([cos v] of (ParticleOther) ) * (4))\n            end\n            GoTo\n            switch costume to (ParticleType)\n            if <not <(costume [name v]) = (ParticleType)>> then\n                set [particletype v] to [Explode]\n                set [particleother v] to [0]\n                set [particlestate v] to [0]\n                switch costume to (explode1 v)\n            end\n            stamp\n        end\n        if <<(ParticleType) = [Skid]> or <(ParticleType) = [Ice]>> then\n            change [particlestate v] by (0.5)\n            Costume (join (ParticleType) (round (ParticleState))) [3.5]\n        end\n        if <<([abs v] of (x position) ) > ((RenderWidth) + (64))> or <<(y position) < ((-170) - (<< (ParticleType) contains [en]?> or < (ParticleType) contains [eo]?>> * (80)))> or <((ParticleY) - (MapY)) > [224]>>> then\n            delete this clone\n        end\n    end\nend\n\ndefine CreateParticles\nset [particlestate v] to [0]\nrepeat (length of [createparticlex v])\n    set [#cus1 v] to (item (1) of [createparticletype v])\n    if <(AllowMovement) = [1]> then\n        if <<(#Cus1) = [Coin]> or <(#Cus1) = [BlueCoin]>> then\n            start sound [Coin v]\n            change [coins v] by (1)\n        end\n        if <(#Cus1) = [do]> then\n            set [#cus1 v] to [BCoin]\n            start sound [Coin v]\n            change [coins v] by (10)\n        end\n        if <(#Cus1) = [dp]> then\n            set [#cus1 v] to [BCoin]\n            start sound [Coin v]\n            change [coins v] by (30)\n        end\n        if <(#Cus1) = [dq]> then\n            set [#cus1 v] to [BCoin]\n            start sound [Coin v]\n            change [coins v] by (50)\n        end\n        if <(#Cus1) = [Time]> then\n            start sound [Coin v]\n            change [timeleft v] by (10)\n        end\n        if <(#Cus1) = [af]> then\n            start sound [Coin v]\n            change [keys v] by (1)\n        end\n        if <(#Cus1) = [KeyCoin]> then\n            change [keycoinsremaining v] by (-1)\n            if <(KeyCoinsRemaining) < [1]> then\n                add [af] to [createparticletype v]\n                add (item (1) of [createparticlex v]) to [createparticlex v]\n                add ((item (1) of [createparticley v]) + (40)) to [createparticley v]\n                delete all of [collectedkeycoins v]\n            else\n                start sound [Coin v]\n            end\n        end\n        if <(Coins) > [99]> then\n            start sound [1up v]\n            set [coins v] to ((Coins) mod (100))\n            change [lives v] by (1)\n        end\n    end\n    if <<(Particles) < (((64) + ((TypesOnScreenCheck?) * (64))) * (<(RenderWidth) > [300]> + (1)))> and <([abs v] of ((item (1) of [createparticlex v]) - (MapX)) ) < ((RenderWidth) + (64))>> then\n        change [particles v] by (1)\n        set [particlex v] to (item (1) of [createparticlex v])\n        set [particley v] to (item (1) of [createparticley v])\n        set [particletype v] to (#Cus1)\n        if <<(#Cus1) = [Brick]> or <(#Cus1) = [BIce]>> then\n            start sound [BrickShatter v]\n            set [particlestate v] to [0]\n            set [particleother v] to [-5]\n            create clone of (_myself_ v)\n            set [particleother v] to [-20]\n            create clone of (_myself_ v)\n            set [particleother v] to [5]\n            create clone of (_myself_ v)\n            set [particleother v] to [20]\n            create clone of (_myself_ v)\n        else\n            if <(#Cus1) = [Ball]> then\n                set [particlestate v] to [0]\n                set [#one v] to [0]\n                repeat (8)\n                    change [#one v] by (45)\n                    set [particleother v] to (#One)\n                    create clone of (_myself_ v)\n                end\n            else\n                if < (#Cus1) contains [Goo]?> then\n                    change [particley v] by (4)\n                end\n                set [particleother v] to [0]\n                if <(#Cus1) = [Twister]> then\n                    set [#eight v] to (((GameTimer) * ((360) * (3))) mod (360))\n                    if <((round ((GameTimer) * (100))) mod (6)) < [3]> then\n                        set [particleother v] to (#Eight)\n                    else\n                        set [particleother v] to ((#Eight) - (180))\n                    end\n                    change [particlex v] by (([sin v] of (ParticleOther) ) * (8))\n                end\n                set [particlestate v] to [0]\n                create clone of (_myself_ v)\n            end\n        end\n    end\n    delete (1) of [createparticletype v]\n    delete (1) of [createparticlex v]\n    delete (1) of [createparticley v]\nend\n\nwhen I receive [renderbackgroundblocks v]\nif <(ParticleX) = [x]> then\n    CreateParticles\n    set [particlex v] to [x]\n    set [particles v] to [0]\nend\n\nwhen I receive [renderforegroundblocks v]\nif <(Edit/PlayMode) = [0]> then\n    delete this clone\nelse\n    if <not <(ParticleX) = [x]>> then\n        clear graphic effects\n        if <(ParticleType) = [Flame]> then\n            change [particlestate v] by (1)\n            GoTo\n            switch costume to (join [cw] ((22Mod2+1) + (2)))\n            if <((round (ParticleState)) mod (4)) = [1]> then\n                stamp\n            end\n            if <(ParticleState) > [15]> then\n                delete this clone\n            end\n        end\n        if <(ParticleType) = [Lava]> then\n            change [particlestate v] by (0.5)\n            Costume (join [Lava] (round (ParticleState))) [2.5]\n        end\n        if <(ParticleType) = [Chain]> then\n            Costume [Chain] [-1]\n        end\n        if <(ParticleType) = [Explode]> then\n            change [particlestate v] by (0.5)\n            Costume (join [Explode] (round (ParticleState))) [3.5]\n        end\n    end\nend\n\ndefine Costume (name) (state)\nGoTo\nswitch costume to (name)\nstamp\nif <(ParticleState) > (state)> then\n    if <not <<(name) = [Chain]> and <(AllowMovement) = [0]>>> then\n        delete this clone\n    end\nend\n\ndefine S (1) (2)\nchange [particlex v] by (([sin v] of (ParticleOther) ) * (1))\nchange [particley v] by (([cos v] of (ParticleOther) ) * (2))\n\ndefine GoTo\nswitch costume to (large v)\ngo to x: ((ParticleX) - (MapX)) y: ((ParticleY) - (MapY))\n\n@WorldMap\n\nwhen I receive [mapupdate v]\nerase all\nset [menuelement v] to [1]\nclear graphic effects\nif <not < (PlacingBlockType) contains [Map]?>> then\n    set [placingblocktype v] to [MapGround]\nend\nif <(MapEdit/PlayMode) = [1]> then\n    set [finishedworld v] to [0]\n    if <([abs v] of (MapSaveMenu) ) < [0.5]> then\n        MapPlacements\n    end\nend\nset rotation style [don't rotate v]\nRenderMap [1]\nif <not <(MapTheme) = [7]>> then\n    RenderMap [2]\nend\nRenderMap []\nRenderMap [E]\nif <(MapEdit/PlayMode) = [1]> then\n    set [mapcamefromdirection v] to [x]\n    set [ghost v] effect to (50)\n    if <<(PlaceTool) = [1]> or <<(PlacingBlockType) = [MapWater]> or <(PlacingBlockType) = [MapGround]>>> then\n        set [placetool v] to [1]\n        switch costume to (black v)\n    else\n        switch costume to (white v)\n    end\n    go to x: (((MouseX) * (32)) - (256)) y: (((MouseY) * (32)) - (156))\n    stamp\nelse\n    set [mapsavemenu v] to [0]\n    if <(FinishedWorld) = [0]> then\n        if <(MapMarioDirectionMoving) = [x]> then\n            set [mapmariox v] to (round (MapMarioX))\n            set [mapmarioy v] to (round (MapMarioY))\n            if <(MoveUp) = [1]> then\n                set [mapmariodirectionmoving v] to [0]\n            end\n            if <(MoveDown) = [1]> then\n                set [mapmariodirectionmoving v] to [180]\n            end\n            if <(MoveRight) = [1]> then\n                set [mapmariodirectionmoving v] to [90]\n            end\n            if <(MoveLeft) = [1]> then\n                set [mapmariodirectionmoving v] to [-90]\n            end\n            if <not <(MapCameFromDirection) = [x]>> then\n                if <not <(MapCameFromDirection) = (MapMarioDirectionMoving)>> then\n                    set [mapmariodirectionmoving v] to [x]\n                end\n            end\n        else\n            if <(((MapMarioX) + (MapMarioY)) mod (1)) = [0]> then\n                SetOneTo (MapMarioX) (MapMarioY)\n                if <<not <<(#Two) = [Path24]> or <(#Two) = [Path31]>>> or <(#One) = (MapStartNo.)>> then\n                    start sound [Map Move v]\n                    if <<(length of (#Two)) > [11]> and <not <[map completedlevels v] contains (#One)?>>> then\n                        point in direction (MapMarioDirectionMoving)\n                        turn right (180) degrees\n                        set [mapcamefromdirection v] to (direction)\n                        point in direction (90)\n                    else\n                        set [mapcamefromdirection v] to [x]\n                    end\n                    set [mapmariodirectionmoving v] to [x]\n                end\n            end\n        end\n        Movement\n    end\n    switch costume to (join (join [Mario] [N]) (22Mod2+1))\n    go to x: (((MapMarioX) - (8)) * (32)) y: ((((MapMarioY) - (5)) * (32)) + (4))\n    stamp\n    if <(FinishedWorld) = [0]> then\n        SetOneTo (MapMarioX) (MapMarioY)\n        if <(length of (#Two)) > [12]> then\n            if <(((MapMarioX) + (MapMarioY)) mod (1)) = [0]> then\n                set [playingamap v] to [1]\n                set [displaytext v] to [Space to Start Level]\n                set [displaytexttimer v] to [1]\n                if <key (space v) pressed?> then\n                    if <(TransitionType) = [0]> then\n                        set [save code v] to (#Two)\n                        broadcast (LoadingALevelFromMap v)\n                    end\n                end\n            end\n        end\n    end\nend\nbroadcast (MapUIUpdate v)\n\nwhen I receive [flagclicked v]\nstop [other scripts in sprite v]\nset [finishedworld v] to [0]\nset rotation style [don't rotate v]\npoint in direction (90)\nswitch costume to (a1 v)\nset size to (400) %\nhide\ndelete this clone\n\ndefine RenderMap (water)\nset [x v] to [-224]\nset [y v] to [164]\nset [#eight v] to [10]\nrepeat (10)\n    repeat (15)\n        set [xvelocity v] to (item (#Eight) of [map type extras v])\n        set [yvelocity v] to (item (#Eight) of [map type v])\n        if <(water) = [1]> then\n            set [#nine v] to [Water]\n            if <(MapTheme) = [6]> then\n                set [#nine v] to [Lava]\n            end\n            switch costume to (join (#Nine) (22Mod4+1))\n            go to x: (X) y: (Y)\n            stamp\n        else\n            if <(water) = [2]> then\n                if <<not <(YVelocity) = [ ]>> and <not <(MapTheme) = [6]>>> then\n                    switch costume to (water5 v)\n                    go to x: (X) y: (Y)\n                    stamp\n                end\n            else\n                if <(water) = [E]> then\n                    go to x: (X) y: (Y)\n                    if <not <(XVelocity) = [ ]>> then\n                        if <[map completedlevels v] contains (#Eight)?> then\n                            if <(letter (1) of (XVelocity)) = [£]> then\n                                switch costume to (fort2 v)\n                            else\n                                if <(letter (1) of (XVelocity)) = [%]> then\n                                    switch costume to (ghost2 v)\n                                else\n                                    switch costume to (done v)\n                                end\n                            end\n                            stamp\n                        else\n                            if <(letter (1) of (XVelocity)) = [!]> then\n                                switch costume to (join [Level] (22Mod4+1))\n                                stamp\n                            else\n                                if <(letter (1) of (XVelocity)) = [%]> then\n                                    switch costume to (ghost v)\n                                    stamp\n                                else\n                                    if <(letter (1) of (XVelocity)) = ["]> then\n                                        switch costume to (join [Airship] (22Mod2+1))\n                                        stamp\n                                    else\n                                        if <(letter (1) of (XVelocity)) = [£]> then\n                                            switch costume to (fort v)\n                                            stamp\n                                        else\n                                            if <(letter (1) of (XVelocity)) = [$]> then\n                                                if <(MapTheme) = [6]> then\n                                                    switch costume to (castle2 v)\n                                                else\n                                                    switch costume to (castle v)\n                                                end\n                                                stamp\n                                            else\n                                                if <(XVelocity) = [Decor]> then\n                                                    set [#nine v] to (MapTheme)\n                                                    if <<(#Nine) = [5]> or <(#Nine) = [4]>> then\n                                                        set [#nine v] to [1]\n                                                    end\n                                                    set [#six v] to ((round ((#Eight) / (0.48))) mod (4))\n                                                    if <<(YVelocity) = [ ]> or <<(MapTheme) = [5]> and <not <(#Six) = [1]>>>> then\n                                                        switch costume to (join (join [Decor] ((22Mod4+1) + (4))) [1])\n                                                        if <(MapTheme) = [6]> then\n                                                            switch costume to (invis v)\n                                                        end\n                                                    else\n                                                        if <<<(MapTheme) = [2]> or <(MapTheme) = [3]>> and <(#Six) = [1]>> then\n                                                            switch costume to (join [Decor5] (MapTheme))\n                                                        else\n                                                            if <(#Six) = [1]> then\n                                                                if <(MapTheme) = [6]> then\n                                                                    set [#nine v] to [8]\n                                                                end\n                                                                if <(MapTheme) = [4]> then\n                                                                    set [#nine v] to [2]\n                                                                end\n                                                            end\n                                                            switch costume to (join (join [Decor] (22Mod4+1)) (#Nine))\n                                                        end\n                                                    end\n                                                    stamp\n                                                else\n                                                    if < (XVelocity) contains [Path]?> then\n                                                        set [#nine v] to (MapTheme)\n                                                        if <<(#Nine) = [2]> or <(#Nine) = [4]>> then\n                                                            set [#nine v] to [1]\n                                                        end\n                                                        if <<<(length of (XVelocity)) = [6]> and <(YVelocity) = [ ]>> and << (XVelocity) contains [3]?> and < (XVelocity) contains [1]?>>> then\n                                                            switch costume to (path101 v)\n                                                            stamp\n                                                        else\n                                                            P [9]\n                                                            if < (XVelocity) contains [1]?> then\n                                                                P [1]\n                                                            end\n                                                            if < (XVelocity) contains [2]?> then\n                                                                P [2]\n                                                            end\n                                                            if < (XVelocity) contains [3]?> then\n                                                                P [3]\n                                                            end\n                                                            if < (XVelocity) contains [4]?> then\n                                                                P [4]\n                                                            end\n                                                            if <(length of (XVelocity)) > [4]> then\n                                                                P []\n                                                                if <not < (XVelocity) contains [2]?>> then\n                                                                    P [5]\n                                                                end\n                                                                if <not < (XVelocity) contains [4]?>> then\n                                                                    P [6]\n                                                                end\n                                                                if <not < (XVelocity) contains [1]?>> then\n                                                                    P [8]\n                                                                end\n                                                                if <not < (XVelocity) contains [3]?>> then\n                                                                    P [7]\n                                                                end\n                                                            end\n                                                        end\n                                                    else\n                                                        switch costume to (join (XVelocity) (MapTheme))\n                                                        stamp\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                    if <(MapStartNo.) = (#Eight)> then\n                        switch costume to (start v)\n                        stamp\n                    end\n                else\n                    switch costume to (a1 v)\n                    go to x: (X) y: (Y)\n                    if <not <(YVelocity) = [ ]>> then\n                        stamp\n                        if <(MapTheme) = [4]> then\n                            set [#nine v] to [1]\n                        else\n                            set [#nine v] to (MapTheme)\n                        end\n                        switch costume to (join (YVelocity) (#Nine))\n                        stamp\n                    end\n                    switch costume to (a1 v)\n                end\n            end\n        end\n        change [x v] by (32)\n        change [#eight v] by (10)\n    end\n    change [y v] by (-32)\n    set [x v] to [-224]\n    change [#eight v] by (-141)\n    change [#eight v] by (-10)\nend\n\ndefine SetMapTiles\ndelete all of [map type v]\ndelete all of [map type extras v]\ndelete all of [map completedlevels v]\nset [#three v] to [0]\nrepeat (15)\n    repeat (10)\n        add [ ] to [map type v]\n        add [ ] to [map type extras v]\n    end\nend\n\ndefine MapPlacements\ndelete all of [map completedlevels v]\nset [mousex v] to (round (((mouse x) + (256)) / (32)))\nset [#one v] to (mouse y)\nif <(#One) > [179]> then\n    set [#one v] to [179]\nend\nif <(#One) < [-140]> then\n    set [#one v] to [-140]\nend\nif <(MouseX) < [1]> then\n    set [mousex v] to [1]\nend\nif <(MouseX) > [15]> then\n    set [mousex v] to [15]\nend\nset [mousey v] to (round ((((#One) - (-6)) + (146)) / (32)))\nif <(MouseY) < [1]> then\n    set [mousey v] to [1]\nend\nset [#cus3 v] to [1]\nif <(mouse y) > [-141]> then\n    if <<mouse down?> and <(ClickPause) = [0]>> then\n        if <(PlacingBlockType) = [MapStart]> then\n            set [#eight v] to (MouseX)\n            set [#nine v] to (MouseY)\n            SetOneTo (MouseX) (MouseY)\n            replace item (#One) of [map type extras v] with [ ]\n            set [mousex v] to (([floor v] of ((MapStartNo.) / (10)) ) + (1))\n            set [mousey v] to ((MapStartNo.) mod (10))\n            set [mapstartno. v] to (#One)\n            FixAroundExtras\n            set [mousex v] to (#Eight)\n            set [mousey v] to (#Nine)\n            MoveToStart\n            FixAroundExtras\n        else\n            if <(PlacingBlockType) = [MapDecor]> then\n                SetOneTo (MouseX) (MouseY)\n                if <(PlaceTool) = [1]> then\n                    replace item (#One) of [map type extras v] with [Decor]\n                else\n                    replace item (#One) of [map type extras v] with [ ]\n                end\n                FixAroundExtras\n            else\n                if <(PlacingBlockType) = [MapAir]> then\n                    PlacingLevel ["]\n                else\n                    if <(PlacingBlockType) = [MapFort]> then\n                        PlacingLevel [£]\n                    else\n                        if <(PlacingBlockType) = [MapCastle]> then\n                            PlacingLevel [$]\n                        else\n                            if <(PlacingBlockType) = [MapGhost]> then\n                                PlacingLevel [%]\n                            else\n                                if <(PlacingBlockType) = [MapLevel]> then\n                                    PlacingLevel [!]\n                                else\n                                    if <(PlacingBlockType) = [MapPath]> then\n                                        if <(PlaceTool) = [1]> then\n                                            set [#three v] to [1]\n                                            FindSidesOf (MouseX) (MouseY)\n                                            SetOneTo (MouseX) (MouseY)\n                                            replace item (#One) of [map type extras v] with (FixingBlockCostume)\n                                        else\n                                            SetOneTo (MouseX) (MouseY)\n                                            replace item (#One) of [map type extras v] with [ ]\n                                        end\n                                        FixAroundExtras\n                                    else\n                                        if <(PlacingBlockType) = [MapWater]> then\n                                            SetOneTo (MouseX) (MouseY)\n                                            replace item (#One) of [map type v] with [ ]\n                                        else\n                                            set [#three v] to []\n                                            FindSidesOf (MouseX) (MouseY)\n                                            SetOneTo (MouseX) (MouseY)\n                                            replace item (#One) of [map type v] with (FixingBlockCostume)\n                                        end\n                                        set [#cus3 v] to []\n                                        FixAroundExtras\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nSetOneTo (MouseX) (MouseY)\nif <(length of (#Two)) > [11]> then\n    set [displaytext v] to []\n    set [#two v] to [1]\n    repeat (28)\n        change [#two v] by (1)\n        set [displaytext v] to (join (DisplayText) (letter (#Two) of (item (#One) of [map type extras v])))\n    end\n    set [displaytexttimer v] to [1]\nend\n\ndefine SetOneTo (x) (y)\nset [#one v] to ((((x) + (-1)) * (10)) + (y))\nif <not <<<(x) > [0]> or <(x) < [16]>> or <<(y) > [0]> or <(y) < [11]>>>> then\n    set [#one v] to [999999]\nend\nset [#two v] to (item (#One) of [map type extras v])\n\ndefine FindSidesOf (x) (y)\nset [fixingblocktype v] to []\nif <<<(letter (1) of (item (#One) of [map type extras v])) = [P]> and <(#Three) = [1]>> or <(PlacingBlockType) = [MapPath]>> then\n    set [fixingblocktype v] to [Path]\nend\nset [fixingblocksides v] to []\nset [fixingblockcorners v] to []\nSetOneTo (x) ((y) + (1))\nCheck [U]\nSetOneTo (x) ((y) + (-1))\nCheck [D]\nSetOneTo ((x) + (1)) (y)\nCheck [R]\nSetOneTo ((x) + (-1)) (y)\nCheck [L]\nif <(FixingBlockType) = [Path]> then\n    set [fixingblockcostume v] to [Path]\n    if < (FixingBlockSides) contains [U]?> then\n        set [fixingblockcostume v] to (join (FixingBlockCostume) [2])\n    end\n    if < (FixingBlockSides) contains [D]?> then\n        set [fixingblockcostume v] to (join (FixingBlockCostume) [4])\n    end\n    if < (FixingBlockSides) contains [R]?> then\n        set [fixingblockcostume v] to (join (FixingBlockCostume) [3])\n    end\n    if < (FixingBlockSides) contains [L]?> then\n        set [fixingblockcostume v] to (join (FixingBlockCostume) [1])\n    end\nelse\n    set [fixingblockcostume v] to [b]\n    if <(length of (FixingBlockSides)) = [1]> then\n        if <(FixingBlockSides) = [U]> then\n            set [fixingblockcostume v] to [g]\n        end\n        if <(FixingBlockSides) = [D]> then\n            set [fixingblockcostume v] to [c]\n        end\n        if <(FixingBlockSides) = [R]> then\n            set [fixingblockcostume v] to [i]\n        end\n        if <(FixingBlockSides) = [L]> then\n            set [fixingblockcostume v] to [e]\n        end\n    end\n    if <(length of (FixingBlockSides)) = [2]> then\n        if <(FixingBlockSides) = [UD]> then\n            set [fixingblockcostume v] to [l]\n        end\n        if <(FixingBlockSides) = [RL]> then\n            set [fixingblockcostume v] to [k]\n        end\n        if <(FixingBlockSides) = [DL]> then\n            set [fixingblockcostume v] to [d]\n        end\n        if <(FixingBlockSides) = [UL]> then\n            set [fixingblockcostume v] to [f]\n        end\n        if <(FixingBlockSides) = [UR]> then\n            set [fixingblockcostume v] to [h]\n        end\n        if <(FixingBlockSides) = [DR]> then\n            set [fixingblockcostume v] to [j]\n        end\n    end\n    if <(length of (FixingBlockSides)) = [3]> then\n        if <not < (FixingBlockSides) contains [U]?>> then\n            set [fixingblockcostume v] to [m]\n        end\n        if <not < (FixingBlockSides) contains [D]?>> then\n            set [fixingblockcostume v] to [o]\n        end\n        if <not < (FixingBlockSides) contains [R]?>> then\n            set [fixingblockcostume v] to [n]\n        end\n        if <not < (FixingBlockSides) contains [L]?>> then\n            set [fixingblockcostume v] to [p]\n        end\n    end\n    if <(length of (FixingBlockSides)) = [4]> then\n        set [fixingblockcostume v] to [a]\n    end\nend\n\ndefine FixBlock (x) (y) (extra)\nif <<<(x) > [0]> or <(x) < [16]>> or <<(y) > [0]> or <(y) < [11]>>> then\n    SetOneTo (x) (y)\n    if <not <<<(length of (#Two)) > [11]> or <(#Two) = [Decor]>> and <(extra) = [1]>>> then\n        if <<not <<(item (#One) of [map type v]) = [ ]> and <(extra) = []>>> and <not <<(#Two) = [ ]> and <(extra) = [1]>>>> then\n            set [#three v] to (extra)\n            FindSidesOf (x) (y)\n            SetOneTo (x) (y)\n            if <(extra) = [1]> then\n                replace item (#One) of [map type extras v] with (FixingBlockCostume)\n            else\n                replace item (#One) of [map type v] with (FixingBlockCostume)\n            end\n        end\n    end\nend\n\ndefine Movement\nif <<((MapMarioX) mod (1)) = [0]> and <((MapMarioY) mod (1)) = [0]>> then\n    set [#two v] to [0]\n    if <(MapMarioDirectionMoving) = [0]> then\n        SetOneTo (MapMarioX) ((MapMarioY) + (1))\n    end\n    if <(MapMarioDirectionMoving) = [90]> then\n        SetOneTo ((MapMarioX) + (1)) (MapMarioY)\n    end\n    if <(MapMarioDirectionMoving) = [180]> then\n        SetOneTo (MapMarioX) ((MapMarioY) + (-1))\n    end\n    if <(MapMarioDirectionMoving) = [-90]> then\n        SetOneTo ((MapMarioX) + (-1)) (MapMarioY)\n    end\n    if <not <<<(letter (1) of (#Two)) = [P]> or <(length of (#Two)) > [11]>> or <(MapStartNo.) = (#One)>>> then\n        set [mapmariodirectionmoving v] to [x]\n    end\nend\nif <not <(MapMarioDirectionMoving) = [x]>> then\n    change [mapmariox v] by ((([sin v] of (MapMarioDirectionMoving) ) * (4)) / (32))\n    change [mapmarioy v] by ((([cos v] of (MapMarioDirectionMoving) ) * (4)) / (32))\nend\n\ndefine FixAroundExtras\nFixBlock ((MouseX) + (1)) (MouseY) (#Cus3)\nFixBlock ((MouseX) + (-1)) (MouseY) (#Cus3)\nif <not <(MouseY) = [10]>> then\n    FixBlock (MouseX) ((MouseY) + (1)) (#Cus3)\nend\nif <not <(MouseY) = [1]>> then\n    FixBlock (MouseX) ((MouseY) + (-1)) (#Cus3)\nend\n\nwhen I receive [settinglevelcode v]\nask [Enter Level Code \(You can edit this later by placing another level on this tile\):] and wait\nif <(length of (answer)) < [10]> then\n    replace item (#Ten) of [map type extras v] with (join (#Eleven) [No Save Code Entered])\nelse\n    RemoveParts\n    replace item (#Ten) of [map type extras v] with (join (#Eleven) (#Fourteen))\nend\n\ndefine PlacingLevel (type)\nSetOneTo (MouseX) (MouseY)\nif <(PlaceTool) = [1]> then\n    set [#eleven v] to (type)\n    replace item (#One) of [map type extras v] with (join (#Eleven) [No Save Code Entered])\n    set [#ten v] to (#One)\n    stop [other scripts in sprite v]\n    broadcast (SettingLevelCode v)\nelse\n    replace item (#One) of [map type extras v] with [ ]\nend\nset [#cus3 v] to [1]\nFixAroundExtras\n\nwhen I receive [createnewworld v]\nset [maptheme v] to [1]\nset [mapedit/playmode v] to [1]\nset [mapstartno. v] to [15]\nSetMapTiles\nbroadcast (PlayMapFromStart v)\nset [transitionprogress v] to [8]\nset [transitiontype v] to [FadeIn]\n\nwhen I receive [playmapfromstart v]\nset [allowmovement v] to [0]\nset [powerup v] to [N]\nset [coins v] to [0]\nset [playingamap v] to [1]\nset [lives v] to [5]\nset [mapmariodirectionmoving v] to [x]\nMoveToStart\nif <(MapMarioY) = [0]> then\n    change [mapmariox v] by (-1)\n    set [mapmarioy v] to [10]\nend\nset [mapcamefromdirection v] to [x]\nset [textinputmenu v] to [0]\nset [lives v] to [5]\nset [finishedworld v] to [0]\ndelete all of [map completedlevels v]\nbroadcast (PlayWorldMusic v)\n\nwhen I receive [hitgoal v]\nif <(PlayingAMap) = [1]> then\n    SetOneTo (MapMarioX) (MapMarioY)\n    add (#One) to [map completedlevels v]\n    set [mapcamefromdirection v] to [x]\n    if <(letter (1) of (#Two)) = [$]> then\n        set volume to (0) %\n        set [finishedworld v] to [1]\n        wait until <(Menu) = [Map]>\n        set volume to (0) %\n        wait until <(TransitionType) = [0]>\n        set volume to (0) %\n        wait (0.5) seconds\n        if <(MapEdit/PlayMode) = [0]> then\n            set [transitionprogress v] to [0]\n            set [transitiontype v] to [WorldEnd]\n            stop all sounds\n            broadcast (PlayWorldMusic v)\n            wait (8) seconds\n            if <(IAmTheEditor) = [1]> then\n                set [finishedworld v] to [0]\n            else\n                broadcast (FlagClicked v)\n            end\n        end\n    end\nend\n\nwhen I receive [displayupdate v]\ndelete this clone\n\nwhen I receive [playworldmusic v]\nwait (0.2) seconds\nset volume to (75) %\nif <(MapEdit/PlayMode) = [0]> then\n    if <(Menu) = [Map]> then\n        if <(TransitionType) = [WorldEnd]> then\n            set volume to (50) %\n            play sound [World Clear v] until done\n        else\n            wait until <(TransitionType) = [0]>\n            wait (0.2) seconds\n            if <(TransitionType) = [0]> then\n                play sound (join [] (MapTheme)) until done\n            end\n        end\n        wait (0.2) seconds\n        if <(Menu) = [Map]> then\n            broadcast (PlayWorldMusic v)\n        end\n    end\nend\n\ndefine RemoveParts\nset [#fifteen v] to [0]\nset [#fourteen v] to []\nrepeat (length of (answer))\n    change [#fifteen v] by (1)\n    set [#thirteen v] to (letter (#Fifteen) of (answer))\n    if <not <<(#Thirteen) = [\[]> or <(#Thirteen) = [\]]>>> then\n        set [#fourteen v] to (join (#Fourteen) (#Thirteen))\n    end\nend\n\ndefine Check (type)\nif <<<not <(item (#One) of [map type v]) = [ ]>> and <(#Three) = []>> or <<<(letter (1) of (#Two)) = [P]> or <<(#One) = (MapStartNo.)> or <(length of (#Two)) > [11]>>> and <(#Three) = [1]>>> then\n    set [fixingblocksides v] to (join (FixingBlockSides) (type))\nend\n\ndefine P (1)\nswitch costume to (join (join [Path] (1)) (#Nine))\nstamp\n\ndefine MoveToStart\nset [mapmariox v] to (([floor v] of ((MapStartNo.) / (10)) ) + (1))\nset [mapmarioy v] to ((MapStartNo.) mod (10))\n\n