☁️ Blocky ✦ Platformer maker online community - share levels online

Instructions:     ✦ BLOCKY Online platformer maker ✦\n        Make platformers\n     Save and share them ONLINE\n\nWelcome! This is a new kind of scrolling platformer creator that allows sharing levels on the cloud. All data is saved on the cloud :)\nRemember to save your levels regularly!\n\n➥ The old forum topic for level codes: https://scratch.mit.edu/discuss/topic/403600/?page=173\nLevels from there can be imported in this project.\n\nHow to use the editor:\n➜ Arrow Keys / WASD / Joystick to move the screen\n➜ Keys (1-9, A-D) to equip a block\n➜ Click to place a block\n➜ [E] to erase\n➜ [M] to go to the start flag\n➜ Once you're finished, set an end flag to mark the end of your level\n➜ Click "Share" to share your level online\n\nMost important blocks:\n[1] Ground\n[2] Lava\n[4] Up Spring\n[C] Checkpoint\n[D] End flag\n[E] Eraser\n\nAll blocks:\n[1] Ground\n[2] Lava - kills you\n[3] Water - you can swim in it. In water, you will sink.\n[4] Up Spring - boosts you up\n[5] Down Spring - boosts you down\n[6] Saw - kills you\n[7] Collectable - coins, you can collect them\n[8] Signs - they point in a specific direction\n[9] Portal - If you press z, they will teleport you to the other connected portal\n[A] Door / Key - They key can be used to open the door\n[B] Potion - you can swim in it. In Potion, you will rise. You can still swim downwards by pressing [s] or [down arrow].\n[C] Checkpoint\n[D] End flag\n\n➥ Notes:\nIf you accidentelly deleted something, click the "Undo" button to revert your change. :)\n\nYour level will be saved ONLINE - you don't need to export it. If you come back to the project later, you will be able to continue working on your level.\nIf you still want to export your level, click on the icon with the 3 dots and click "Export".\n\nTo enable / disable walljump and change the level's theme / settings, click the icon with the 3 dots.\n\nTo share your level with the community, click "Share".\n\n➥ My stuff:\nYou can see all of your levels on the "My stuff" page. To get to it, click the "Home" icon and then click on "My stuff".\n\n➥ Community levels:\nClick "Community levels" to find levels created by other community members.\nIt is NOT possible to check out someone's unshared levels. You can only play levels that have been shared.\n\nIf you like a level, click the love or the favorite button to increment the counter and show the creator that you like their level :) You can also dislike levels, however there is no public dislike count to prevent hate.\nThe project owner will get notified if you love / favorite their level. They won't get notified on dislikes\n\n➥ Remixing levels:\nIf you like a community level and want to add your own ideas to it, you can click the "Remix" button to save a copy of the level. The remix will be marked as remix, and the owner of the original level will be notified about the remix.\n\n➥ Search:\nWith "Search", you can find levels that were created by a specific user or with a specific level id.\n\n➥ Trending:\nThe "Community levels > Trending" tab shows new levels that gained many likes in a short time.\n\n➥ Personalized recommendations:\nThe "Community levels > For you" tab shows personalized recommended levels based on who your are following, what is currently trending and what levels you viewed before.\n\nI worked pretty hard on this project, so please love / fav!\nIf you have questions or suggestions, ask in comments.\n\n➥ Credits:\nAlmost all code and art by me!\n@-Rex- for the Stamp text engine\n\n➥ Background Music:\nNekzlo - Found You\nJim Yosef - Joy\nHolo - Ampyx\nJim Yosef - Zoom [Ninety9Lives]\nMBB - Fresh\nJim Yosef - Fall with me

@Stage\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    if <([y position v] of [hitbox v]) < [-100]> then\n        change [/bottom-bar v] by (((/bottom-bar) - (-50)) / (-2))\n    else\n        change [/bottom-bar v] by ((/bottom-bar) / (-3))\n    end\nend\n\nwhen flag clicked\nerase all\n\nwhen flag clicked\nshow list [share level v]\nforever\n    change [@@tick v] by (0.03)\nend\n\nwhen flag clicked\nforever\n    reset timer\nend\n\nwhen flag clicked\nforever\n    if <(mode) = [creatingnewlevel]> then\n        if <(⛈️ STATUS) = [2]> then\n            wait (0.05) seconds\n            if <(⛈️ STATUS) = [2]> then\n                broadcast (trans1 v) and wait\n                set [theme v] to [d]\n                set [mode v] to [editor]\n                broadcast (trans2 v)\n                broadcast (edit v)\n                set [@@level shared v] to [False]\n                set [@level changed v] to [10]\n                if <(@@LEVEL code) = [10]> then\n                    set [@@level theme v] to [d]\n                    broadcast (change_theme v)\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [⛈️ status v] to [0]\n\nwhen I receive [loadlevel-aftershare v]\nset [mode v] to [loadinglevel2]\nbroadcast (loading v)\nbroadcast (@get-level v) and wait\nif <(mode) = [loadinglevel2]> then\n    broadcast (loading-end v)\n    set [mode v] to [spotlight]\n    set [toolbar_y v] to [200]\nend\n\nwhen I receive [editor-to-spotlight-loadlevel v]\nset [mode v] to [loadinglevel2]\nbroadcast (trans2 v)\nbroadcast (loading v)\nif <not <(⛈️ STATUS) = [1]>> then\n    if <(@@LEVEL author) = (@username)> then\n        broadcast (@post level v) and wait\n        repeat until <not <<not <([🌤️response_output v] of [cloud requests v]) = (length of (@LEVEL CHANGED))>> or <(⛈️ STATUS) = [-5]>>>\n            set [@level changed v] to [0]\n            broadcast (@post level v) and wait\n            wait (0) seconds\n        end\n    end\nend\nwait until <not <(⛈️ STATUS) = [1]>>\nbroadcast (loading-end v)\nif <(mode) = [loadinglevel2]> then\n    switch backdrop to (ui v) and wait\n    set [mode v] to [spotlight]\n    set [toolbar_y v] to [200]\nend\n\nwhen flag clicked\nforever\n    if <<(mode) = [editor]> or <(mode) = [playing]>> then\n        set [theme v] to (@@LEVEL theme)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(mode) = [spotlight]> then\n        if <(⛈️ STATUS) = [1]> then\n            set [toolbar_y v] to [200]\n            broadcast (loading v)\n            wait until <not <(⛈️ STATUS) = [1]>>\n            if <([🌤️response_output v] of [cloud requests v]) = [-1]> then\n                broadcast (loading-end v)\n                set [mode v] to [-]\n            else\n                broadcast (loading-end v)\n                set [toolbar_y v] to [200]\n            end\n        end\n    end\nend\n\nwhen I receive [-player to spotlight v]\nset [mode v] to [---]\nbroadcast (trans1 v) and wait\nset [theme v] to [loadinglevel2]\nset [toolbar_y v] to [200]\nbroadcast (loading v)\nif <(⛈️ STATUS) = [1]> then\n    broadcast (trans2 v)\n    wait (0.1) seconds\n    wait until <not <(⛈️ STATUS) = [1]>>\nelse\n    broadcast (trans2 v)\n    if <(@@LEVEL author) = (@username)> then\n        broadcast (@post level v) and wait\n        repeat until <not <<not <([🌤️response_output v] of [cloud requests v]) = (length of (@LEVEL CHANGED))>> or <(⛈️ STATUS) = [-5]>>>\n            set [@level changed v] to [0]\n            broadcast (@post level v) and wait\n            wait (0) seconds\n        end\n    end\nend\nset [mode v] to [spotlight]\nswitch backdrop to (ui v) and wait\nbroadcast (init UI v)\nbroadcast (loading-end v)\n\nwhen flag clicked\nforever\n    change [timer v] by ((1) / (30))\nend\n\nwhen I receive [\[proj\] remix v]\nbroadcast (trans1 v) and wait\nset [mode v] to [remixing]\nbroadcast (@remix v)\nbroadcast (loading v)\nwait (0.15) seconds\nbroadcast (trans2 v) and wait\nwait until <<(⛈️ STATUS) = [2]> or <<(⛈️ STATUS) = [-5]> or <(⛈️ STATUS) = [-9]>>>\nwait (0.05) seconds\nif <(⛈️ STATUS) = [2]> then\n    broadcast (trans1 v) and wait\n    broadcast (loading-end v)\n    set [input v] to (@@LEVEL code)\n    set [mode v] to [editor]\n    broadcast (edit v)\n    broadcast (trans2 v)\nelse\n    set [mode v] to [-]\n    set [theme v] to [ui]\n    broadcast (loading-end v)\n    broadcast (init UI v)\nend\n\nwhen I receive [\[ui\] fetch level v]\nset [mode v] to [loadinglevel]\nbroadcast (@get-level v) and wait\nif <([🌤️response_output v] of [cloud requests v]) = [-1]> then\n    broadcast (loading-end v)\n    set [mode v] to [-]\nelse\n    set [toolbar_y v] to [200]\n    set [mode v] to [spotlight]\nend\n\nset [@username v] to [e]\n\nwhen I receive [delete-from-mystuff v]\nbroadcast (@deletelevel v)\nset [⛈️ status v] to [2]\nDelete local\n\nwhen I receive [change_theme close v]\nif <(mode) = [.....]> then\n    set [mode v] to [mystuff]\nend\n\nwhen I receive [close-headbar v]\nset [⛈️ status v] to [1]\nstop [other scripts in sprite v]\nstop all sounds\n\nwhen I receive [win-to-more v]\nset [mode v] to [---]\nbroadcast (trans1 v) and wait\nset [theme v] to [ui]\nset [toolbar_y v] to [200]\nbroadcast (loading v)\nbroadcast (trans2 v)\nset [mode v] to [more]\nset [@@tab v] to [more]\nbroadcast (init UI v)\nbroadcast (@get-public-levels-bundle v)\n\nwhen flag clicked\nforever\n    if <(@@LEVEL id) = [990]> then\n        if <(mode) = [playing]> then\n            stop [other scripts in sprite v]\n            play sound [NEVA v] until done\n        end\n    end\nend\n\ndefine Delete local\nset [zeile v] to (item # of (___level_to_delete) in [@decoded_response v])\nrepeat (6)\n    delete (zeile) of [@decoded_response v]\nend\n\nwhen I receive [\[intro\]stop v]\nwait (0.2) seconds\nbroadcast (shutdown-popup v) and wait\n\nwhen I receive [shutdownnotice-close v]\nif <(username) = []> then\n    broadcast (notloggedin v)\nelse\n    broadcast (loading v)\n    broadcast (init UI v)\n    broadcast (init-home v)\n    set [--interaction opened v] to [0]\n    set [mode v] to [init]\n    set [theme v] to [ui]\n    forever\n        switch backdrop to (theme)\n    end\nend\n\nwhen I receive [shutdownnotice-close v]\nswitch backdrop to (ui v)\nbroadcast (@ack v) and wait\nforever\n    wait (60) seconds\n    if <(⛈️ STATUS) = [2]> then\n        broadcast (@ack v) and wait\n        if <(mode) = [editor]> then\n            broadcast (@post level v)\n        end\n    end\n    if <(⛈️ STATUS) = [2]> then\n        broadcast (@ack v) and wait\n    end\n    if <(⛈️ STATUS) = [2]> then\n        broadcast (@ack v) and wait\n    end\n    if <(⛈️ STATUS) = [2]> then\n        broadcast (@ack v) and wait\n    end\nend\n\nwhen I receive [win-to-random v]\nset [mode v] to [---]\nbroadcast (trans1 v) and wait\nset [theme v] to [ui]\nset [toolbar_y v] to [200]\nbroadcast (loading v)\nbroadcast (trans2 v)\nset [mode v] to [spotlight]\nbroadcast (init UI v)\nbroadcast (@get-random-level v)\n\nwhen I receive [\[intro\]stop v]\nswitch backdrop to (ui3 v) and wait\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [\[intro\]stop v]\nwait (0.2) seconds\nset volume to (25) %\nstart sound [fall-with-me-ncs-release v]\nwait until <(⛈️ STATUS) = [2]>\nrepeat (10)\n    change volume by (-13)\nend\nstop all sounds\nwait (0) seconds\nset volume to (18) %\nforever\n    play sound (pick random (1) to (5)) until done\nend\n\nwhen flag clicked\nset volume to (50) %\n\n@b l a n k\n\n@Cloud Requests\n\nwhen flag clicked\nforever\n    change [tick v] by ((1) / (15))\n    wait (0) seconds\nend\n\ndefine Decode (input) ack <ack>\nset [//output v] to []\nset [betw.output v] to []\nset [i v] to [0]\nrepeat ((length of (input)) / (2))\n    change [i v] by (2)\n    switch costume to (join (letter ((i) - (1)) of (input)) (letter (i) of (input)))\n    if <(costume [name v]) = [new line]> then\n        if <(letter (2) of (costume [name v])) = [\]> then\n            set [//output v] to (join (//output) [ ])\n        end\n        if <ack> then\n            add (//output) to [@ack_response v]\n        else\n            add (//output) to [@decoded_response v]\n        end\n        set [//output v] to []\n    else\n        set [//output v] to (join (//output) (letter (2) of (costume [name v])))\n    end\nend\nif <not <(//output) = []>> then\n    if <ack> then\n        add (//output) to [@ack_response v]\n    else\n        add (//output) to [@decoded_response v]\n    end\nend\n\ndefine 🌩️ Request data (list_id) keep_req_id <keep_req_id> keep_status <keep_status> .status_only <.status_only>\nset [tick v] to [0]\nset [🌤️response_output v] to []\nif <not <keep_status>> then\n    set [⛈️ status v] to [1]\nend\nif <not <keep_req_id>> then\n    set [⛈️ request id v] to (join (pick random (10000) to (89998)) [1])\n    if <keep_status> then\n        set [⛈️ request id v] to (join (pick random (90000) to (99998)) [1])\n    end\n    set [☁ to_host v] to (join (list_id) (join [.] (⛈️ REQUEST ID)))\nend\ndelete all of [parsed responses v]\nrepeat until <<<<<(⛈️ STATUS) = [2]> or <(.STATUS) = [2]>> and <not <keep_status>>> or <<keep_status> and <(@new) = [False]>>> or <<(tick) > [15]> or <<(mode) = [init]> and <(tick) > [9]>>>>\n    Check cloud variable (☁ FROM_HOST_1) <.status_only>\n    Check cloud variable (☁ FROM_HOST_2) <.status_only>\n    Check cloud variable (☁ FROM_HOST_3) <.status_only>\n    Check cloud variable (☁ FROM_HOST_4) <.status_only>\n    Check cloud variable (☁ FROM_HOST_5) <.status_only>\n    Check cloud variable (☁ FROM_HOST_6) <.status_only>\n    Check cloud variable (☁ FROM_HOST_7) <.status_only>\n    Check cloud variable (☁ FROM_HOST_8) <.status_only>\n    Check cloud variable (☁ FROM_HOST_9) <.status_only>\nend\nif <<(tick) > [15]> or <<(mode) = [init]> and <(tick) > [9]>>> then\n    set [⛈️ status v] to [-5]\nend\nif <.status_only> then\n    if <not <[] = [1]>> then\n        set [.status v] to (⛈️ STATUS)\n        set [⛈️ status v] to [0]\n    end\nelse\n    if <<(tick) > [15]> or <<(mode) = [init]> and <(tick) > [9]>>> then\n        broadcast (loading-end v)\n        if <<not <keep_status>> or <(mode) = [init]>> then\n            if <not <(mode) = [loadinglevel2]>> then\n                broadcast (@failed to load v)\n            end\n        end\n    end\nend\n\ndefine 🌧️ Decode Response (response) <.status>\nif <(letter (length of (response)) of (response)) = [2]> then\n    if <(letter ((length of (response)) - (1)) of (response)) = [2]> then\n        if <(letter ((length of (response)) - (2)) of (response)) = [2]> then\n            if <(letter ((length of (response)) - (3)) of (response)) = [2]> then\n                add (join [=] (response)) to [parsed responses v]\n                set [@new v] to [False]\n                set [⛈️ status v] to [2]\n                if <.status> then\n                    set [⛈️ status v] to [1]\n                    set [.status v] to [2]\n                end\n            end\n        end\n    end\nelse\n    repeat until <(length of [parsed responses v]) > (join (letter ((length of (response)) - (2)) of (response)) (letter ((length of (response)) - (1)) of (response)))>\n        add [] to [parsed responses v]\n    end\n    replace item (join (letter ((length of (response)) - (2)) of (response)) (letter ((length of (response)) - (1)) of (response))) of [parsed responses v] with (join [=] (response))\nend\n\ndefine Check cloud variable (var) <.status>\nif < (var) contains (join [.] (⛈️ REQUEST ID))?> then\n    if <not <[parsed responses v] contains (join [=] (var))?>> then\n        🌧️ Decode Response (var) <.status>\n    end\nend\n\ndefine Reset\nset [⛈️ status v] to [1]\nset [.status v] to [1]\ndelete all of [@decoded_response v]\n\ndefine Read responses\nset [i v] to [0]\nrepeat (length of [parsed responses v])\n    change [i v] by (1)\n    set [ii v] to [2]\n    if < (item (i) of [parsed responses v]) contains [.]?> then\n        repeat until <(letter (ii) of (item (i) of [parsed responses v])) = [.]>\n            set [🌤️response_output v] to (join (🌤️response_output) (letter (ii) of (item (i) of [parsed responses v])))\n            change [ii v] by (1)\n        end\n    end\nend\nif <(🌤️response_output) = [-9]> then\n    set [⛈️ status v] to [-9]\n    broadcast (@failed to load v)\nend\nset [@@page v] to [1]\n\nwhen I receive [@createnewlevel v]\nset [@@level id v] to []\nReset\nEncode (join [▷] (@username))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nset [@@level id v] to (🌤️response_output)\nset [@@level author v] to (@username)\nset [@@level shared v] to [False]\nset [@@level liked? v] to [False]\nset [@@level stared? v] to [False]\nset [@@level disliked? v] to [False]\nset [@@level likes v] to [0]\nset [@@level stars v] to [0]\nset [@@level name v] to [Untitled]\nset [@@level author v] to (username)\nset [@@level createdate v] to [\[Failed to load\]]\nbroadcast (@get-level-info v) and wait\nbroadcast (loading-end v)\nif <not <(input) = []>> then\n    wait (1.5) seconds\n    broadcast (@post level v)\nend\n\nwhen flag clicked\nReset\nset [@username v] to (username)\n\nwhen I receive [@ack v]\nif <not <(⛈️ STATUS) = [1]>> then\n    Encode (join [ack] (@username))\n    set [@new v] to [?]\n    🌩️ Request data (//output) keep_req_id <> keep_status  .status_only <>\n    Read responses\n    delete all of [@ack_response v]\n    Decode (🌤️response_output) ack \n    if <(length of [@ack_response v]) = [3]> then\n        set [@messages v] to (item (1) of [@ack_response v])\n        set [@banned v] to (item (2) of [@ack_response v])\n        set [@new v] to (item (3) of [@ack_response v])\n    end\nend\n\nwhen I receive [@get-your-levels-bundle v]\nbroadcast (loading v)\nset [@@level code v] to [0]\nReset\nEncode (join (join [projectsbundle▷] (@username)) (join [;] (join (@username) (join [;] (join (@@tab) (join [;] [none]))))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    broadcast (loading-end v)\nend\n\nwhen I receive [@deletelevel v]\nEncode (join (join [delete▷] (@username)) (join [;] (___level_to_delete)))\n🌩️ Ping (//output) --reset status []\n\ndefine 🌩️ Ping (list_id) --reset status (reset status)\nset [tick v] to [0]\nset [🌤️response_output v] to []\nset [⛈️ request id v] to (join [.] (join (pick random (10000) to (99999)) [1]))\nset [☁ to_host v] to (join (list_id) (⛈️ REQUEST ID))\nif <not <(reset status) = [False]>> then\n    set [⛈️ status v] to [2]\nend\n\nwhen I receive [@post level v]\nbroadcast (\[NOTIF\]postlevel v)\nif <(@@LEVEL author) = (@username)> then\n    set [⛈️ status v] to [1]\n    broadcast (@theme change v)\n    broadcast (getdta v) and wait\n    set [@@level code v] to (output)\n    if <(join [=] (@@LEVEL code)) = (join [=] (@LEVEL CHANGED))> then\n        set [🌤️response_output v] to (length of (@@LEVEL code))\n        set [⛈️ status v] to [2]\n    else\n        set [@level changed v] to (@@LEVEL code)\n        wait (0.2) seconds\n        🌩️ Prepare send of level (output)\n        set [i v] to [0]\n        repeat (length of [@to_send v])\n            change [i v] by (1)\n            if <(length of (i)) = [1]> then\n                set [ii v] to (join [0] (join [0] (i)))\n            else\n                if <(length of (i)) = [2]> then\n                    set [ii v] to (join [0] (i))\n                else\n                    set [ii v] to (i)\n                end\n            end\n            set [☁ to_host v] to (join [-] (join (ii) (item (i) of [@to_send v])))\n            wait (0.15) seconds\n        end\n        wait (0.3) seconds\n        Reset\n        Encode (join [completesave▷] (@@LEVEL id))\n        🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\n        Read responses\n    end\nend\n\ndefine 🌩️ Prepare send of level (level code)\ndelete all of [@to_send v]\nset [i v] to [0]\nset [ii v] to []\nrepeat (length of (level code))\n    change [i v] by (1)\n    set [ii v] to (join (ii) (letter (i) of (level code)))\n    if <((i) mod (220)) = [0]> then\n        add (join (join (ii) [.]) (@@LEVEL id)) to [@to_send v]\n        set [ii v] to []\n    end\nend\nadd (join (join (ii) [.]) (@@LEVEL id)) to [@to_send v]\n\nwhen I receive [@get-level-info v]\nReset\nEncode (join [levelinfo▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    set [@@level author v] to (item (1) of [@decoded_response v])\n    set [@@level difficulity v] to (item (2) of [@decoded_response v])\n    set [@@level name v] to (item (3) of [@decoded_response v])\n    set [@@level remixes v] to (item (4) of [@decoded_response v])\n    set [@@level shared v] to (item (5) of [@decoded_response v])\n    set [@@level timestamp v] to (item (7) of [@decoded_response v])\n    set [@@level likes v] to (item (8) of [@decoded_response v])\n    set [@@level stars v] to (item (9) of [@decoded_response v])\n    set [@@level views v] to (item (10) of [@decoded_response v])\n    set [@@level wins v] to (item (11) of [@decoded_response v])\n    set [@@level theme v] to (item (12) of [@decoded_response v])\n    set [@@level difficulity v] to (item (13) of [@decoded_response v])\n    set [@@level liked? v] to (item (14) of [@decoded_response v])\n    set [@@level stared? v] to (item (15) of [@decoded_response v])\n    set [@@level disliked? v] to (item (16) of [@decoded_response v])\n    set [@@level parent id v] to (item (17) of [@decoded_response v])\n    set [@@level reviewed v] to (item (18) of [@decoded_response v])\n    set [@@level dislikes v] to (item (19) of [@decoded_response v])\n    if <(@@LEVEL reviewed) = [0]> then\n        set [@@level shared v] to [True]\n    end\nelse\n    set [modus v] to [home]\n    broadcast (editor-to-home v)\n    broadcast (@failed to load v)\nend\n\nwhen I receive [@get-level-code v]\nReset\nEncode (join [levelcode▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nset [@@level code v] to (🌤️response_output)\nset [@level changed v] to (🌤️response_output)\n\nwhen I receive [@theme change v]\nEncode (join [theme▷] (join (@@LEVEL id) (join [;] (@@LEVEL theme))))\n🌩️ Ping (//output) --reset status [False]\n\nwhen I receive [@like remove v]\nstop [other scripts in sprite v]\nset [@@level liked? v] to [False]\nchange [@@level likes v] by (-1)\nEncode (join [like-remove▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@edit-name v]\nReset\nEncode (join [rename▷] (join (@@LEVEL id) (join [;] (@@LEVEL name))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [1]\nwait (0.1) seconds\nbroadcast (@get-level-info v)\n\nwhen I receive [@sharelevel v]\nstop [other scripts in sprite v]\nReset\nEncode (join [share▷] (___level_to_share))\n🌩️ Ping (//output) --reset status []\nif <(mode) = [mystuff]> then\n    erase all\n    wait (0.1) seconds\n    broadcast (@get-your-levels-bundle v)\nend\nif <(mode) = [spotlight]> then\n    wait (0.1) seconds\n    broadcast (@get-level v)\nend\n\nwhen I receive [@validatelevel v]\nReset\nEncode (join [validate▷] (@@LEVEL id))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\n\nwhen I receive [@unsharelevel v]\nstop [other scripts in sprite v]\nReset\nEncode (join [unshare▷] (___level_to_share))\n🌩️ Ping (//output) --reset status []\nif <(mode) = [mystuff]> then\n    erase all\n    wait (0.1) seconds\n    broadcast (@get-your-levels-bundle v)\nend\nif <(mode) = [spotlight]> then\n    wait (0.1) seconds\n    broadcast (@get-level-info v)\nend\n\nwhen I receive [@like add v]\nstop [other scripts in sprite v]\nset [@@level liked? v] to [True]\nchange [@@level likes v] by (1)\nEncode (join [like-add▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@star add v]\nstop [other scripts in sprite v]\nset [@@level stared? v] to [True]\nchange [@@level stars v] by (1)\nEncode (join [star-add▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@star remove v]\nstop [other scripts in sprite v]\nset [@@level stared? v] to [False]\nchange [@@level stars v] by (-1)\nEncode (join [star-remove▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@dislike add v]\nstop [other scripts in sprite v]\nset [@@level disliked? v] to [True]\nchange [@@level dislikes v] by (1)\nEncode (join [dislike-add▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@dislike remove v]\nstop [other scripts in sprite v]\nset [@@level disliked? v] to [False]\nchange [@@level dislikes v] by (-1)\nEncode (join [dislike-remove▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@remix v]\nReset\nEncode (join [remix▷] (join (@username) (join [;] (@@LEVEL id))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    set [@@level author v] to (item (1) of [@decoded_response v])\n    set [@@level difficulity v] to (item (2) of [@decoded_response v])\n    set [@@level name v] to (item (3) of [@decoded_response v])\n    set [@@level remixes v] to (item (4) of [@decoded_response v])\n    set [@@level shared v] to (item (5) of [@decoded_response v])\n    set [@@level timestamp v] to (item (7) of [@decoded_response v])\n    set [@@level likes v] to (item (8) of [@decoded_response v])\n    set [@@level stars v] to (item (9) of [@decoded_response v])\n    set [@@level views v] to (item (10) of [@decoded_response v])\n    set [@@level wins v] to (item (11) of [@decoded_response v])\n    set [@@level theme v] to (item (12) of [@decoded_response v])\n    set [@@level liked? v] to (item (13) of [@decoded_response v])\n    set [@@level stared? v] to (item (14) of [@decoded_response v])\n    set [@@level disliked? v] to (item (15) of [@decoded_response v])\n    set [@@level id v] to (item (16) of [@decoded_response v])\n    set [@@level parent id v] to (item (17) of [@decoded_response v])\n    set [@@level dislikes v] to [0]\nend\n\nwhen I receive [@messages v]\nReset\nEncode (join [messages▷] (join (@username) (join [;] (@@MESSAGES offset))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\nend\nset [@messages v] to (item (length of [@decoded_response v]) of [@decoded_response v])\nif <(length of [@decoded_response v]) = [1]> then\n    set [🌤️response_output v] to [-2]\nend\nbroadcast (loading-end v)\n\nwhen I receive [@clear all messages v]\ndelete all of [@decoded_response v]\nReset\nEncode (join [clearmessages▷] (join (@username) [;all]))\n🌩️ Ping (//output) --reset status []\nset [🌤️response_output v] to [-2]\nset [@messages v] to [0]\n\nwhen I receive [@clear message page v]\nReset\nEncode (join [clearmessages▷] (join (@username) [;4]))\n🌩️ Ping (//output) --reset status [False]\nwait (0.05) seconds\nbroadcast (@messages v)\n\nwhen I receive [@old-messages v]\nReset\nEncode (join [oldmessages▷] (join (@username) (join [;] (@@MESSAGES offset))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\nend\nbroadcast (loading-end v)\n\nwhen I receive [@get-public-levels-bundle v]\nbroadcast (loading v)\nset [@@level code v] to [0]\nReset\nif <(@@tab) = [recent]> then\n    Encode (join [bundle▷recent/] (@@RECENT sub_page))\nelse\n    if <(@@tab) = [played]> then\n        Encode (join [bundle▷played/] (@username))\n    else\n        if <(@@tab) = [premium]> then\n            Encode (join [bundle▷premium/] (@@RECENT sub_page))\n        else\n            if <(@@tab) = [toploved]> then\n                Encode (join [bundle▷toploved/] (@@RECENT sub_page))\n            else\n                if <(@@tab) = [feed]> then\n                    Encode (join [bundle▷feed/] (@username))\n                else\n                    if <(@@tab) = [more]> then\n                        Encode (join [bundle▷more/] (@username))\n                    else\n                        if <(@@tab) = [remixes]> then\n                            Encode (join [remixes▷] (@@LEVEL id))\n                        else\n                            if <(@@tab) = [search]> then\n                                Encode (join [search▷] (answer))\n                            else\n                                Encode (join [bundle▷] (@@tab))\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    broadcast (loading-end v)\nend\n\nwhen I receive [@get-level v]\nset [@@level code v] to [0]\nerase all\nbroadcast (loading v)\nbroadcast (\[NOTIF\]lodinginfo v)\nReset\nEncode (join [download▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only \nRead responses\nDecode (🌤️response_output) ack <>\nset [@@level author v] to (item (1) of [@decoded_response v])\nset [@@level difficulity v] to (item (2) of [@decoded_response v])\nset [@@level name v] to (item (3) of [@decoded_response v])\nset [@@level remixes v] to (item (4) of [@decoded_response v])\nset [@@level shared v] to (item (5) of [@decoded_response v])\nset [@@level timestamp v] to (item (7) of [@decoded_response v])\nset [@@level likes v] to (item (8) of [@decoded_response v])\nset [@@level stars v] to (item (9) of [@decoded_response v])\nset [@@level views v] to (item (10) of [@decoded_response v])\nset [@@level wins v] to (item (11) of [@decoded_response v])\nset [@@level theme v] to (item (12) of [@decoded_response v])\nset [@@level difficulity v] to (item (13) of [@decoded_response v])\nset [@@level liked? v] to (item (14) of [@decoded_response v])\nset [@@level stared? v] to (item (15) of [@decoded_response v])\nset [@@level disliked? v] to (item (16) of [@decoded_response v])\nset [@@level parent id v] to (item (17) of [@decoded_response v])\nset [@@level reviewed v] to (item (18) of [@decoded_response v])\nset [@@level id v] to (item (19) of [@decoded_response v])\nset [@@level dislikes v] to (item (20) of [@decoded_response v])\nif <(@@LEVEL reviewed) = [0]> then\n    set [@@level shared v] to [True]\nend\nif <<(🌤️response_output) = [-1]> or <(.STATUS) = [-5]>> then\n    broadcast (@failed to load v)\n    broadcast (loading-end v)\nelse\n    broadcast (\[NOTIF\]loadingcontent v)\n    Reset\n    change [⛈️ request id v] by (1)\n    🌩️ Request data [] keep_req_id  keep_status <> .status_only <>\n    Read responses\n    set [@@level code v] to (🌤️response_output)\n    set [@level changed v] to (🌤️response_output)\n    broadcast (loading-end v)\nend\n\nwhen I receive [@get-random-level v]\nset [@@level id v] to [random]\nbroadcast (@get-level v)\n\ndefine Encode (input)\nset [//output v] to []\nset [i v] to [0]\nrepeat (length of (input))\n    change [i v] by (1)\n    switch costume to (join [=] (letter (i) of (input)))\n    set [//output v] to (join (//output) (costume [number v]))\nend\n\nwhen I receive [@set diff v]\nEncode (join [diffset▷] (join (@@LEVEL id) (join [;] (@@LEVEL difficulity))))\n🌩️ Ping (//output) --reset status [False]\n\nwhen I receive [@win add v]\nstop [other scripts in sprite v]\nchange [@@level wins v] by (1)\nEncode (join [win-add▷] (join (@@LEVEL id) (join [;] (@username))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@get-user-info v]\nReset\nbroadcast (loading v)\nEncode (join [userinfo▷] (join (@profile-on) (join [;] (@username))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nDecode (🌤️response_output) ack <>\nif <(length of [@decoded_response v]) = [1]> then\n    broadcast (@failed to load v)\nelse\n    set [@@profile following v] to (item (2) of [@decoded_response v])\n    set [@@profile notifs-on v] to (item (8) of [@decoded_response v])\nend\nbroadcast (loading-end v)\n\nwhen I receive [@follow add v]\nstop [other scripts in sprite v]\nset [@@profile following v] to [True]\nEncode (join [follow-add▷] (join (@username) (join [;] (@profile-on))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\nreplace item (3) of [@decoded_response v] with ((item (3) of [@decoded_response v]) + (1))\nif <(@username) = (@profile-on)> then\n    replace item (4) of [@decoded_response v] with ((item (4) of [@decoded_response v]) + (1))\nend\n\nwhen I receive [@follow remove v]\nstop [other scripts in sprite v]\nset [@@profile following v] to [False]\nEncode (join [follow-remove▷] (join (@username) (join [;] (@profile-on))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\nreplace item (3) of [@decoded_response v] with ((item (3) of [@decoded_response v]) + (-1))\nif <(@username) = (@profile-on)> then\n    replace item (4) of [@decoded_response v] with ((item (4) of [@decoded_response v]) + (-1))\nend\n\nwhen I receive [@get-user-levels-bundle v]\nbroadcast (loading v)\nset [@@level code v] to [0]\nReset\nEncode (join (join [projectsbundle▷] (@profile-on)) (join [;] (join (@username) (join [;] (join [shared] (join [;] (@@tab)))))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    broadcast (loading-end v)\nend\n\nwhen I receive [@notifs enable v]\nstop [other scripts in sprite v]\nset [@@profile notifs-on v] to [True]\nEncode (join [mark-add▷] (join (@username) (join [;] (@profile-on))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@notifs disable v]\nstop [other scripts in sprite v]\nset [@@profile notifs-on v] to [False]\nEncode (join [mark-remove▷] (join (@username) (join [;] (@profile-on))))\n🌩️ Ping (//output) --reset status []\nset [⛈️ status v] to [2]\n\nwhen I receive [@get-user-favorite-bundle v]\nbroadcast (loading v)\nset [@@level code v] to [0]\nReset\nEncode (join (join [staredbundle▷] (@profile-on)) (join [;] (join (@username) (join [;] (join [shared] (join [;] (@@tab)))))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nif <(⛈️ STATUS) = [2]> then\n    Decode (🌤️response_output) ack <>\n    broadcast (loading-end v)\nend\n\nwhen I receive [@get-user-attr v]\nReset\nbroadcast (loading v)\nEncode (join [userattr▷] (join (@profile-on) (join [;] (@@tab))))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nDecode (🌤️response_output) ack <>\nbroadcast (loading-end v)\n\nwhen I receive [@get-user-following v]\nReset\nbroadcast (loading v)\nEncode (join [userattr▷] (join (@profile-on) (join [;] [following])))\n🌩️ Request data (//output) keep_req_id <> keep_status <> .status_only <>\nRead responses\nDecode (🌤️response_output) ack <>\n\nwhen I receive [notloggedin v]\nstop [other scripts in sprite v]\n\n@Not Logged In\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [notloggedin v]\nif <(open) = [0]> then\n    go to x: (0) y: (20)\n    stop [other scripts in sprite v]\n    set [open v] to [1]\n    set [clone-id v] to [login]\n    create clone of (_myself_ v)\nend\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen flag clicked\nset [@banned v] to [False]\nforever\n    if <(@banned) = [True]> then\n        set [mode v] to [-]\n        set [clone-id v] to [ban]\n        create clone of (_myself_ v)\n        broadcast (close-headbar v)\n        wait until <not <mouse down?>>\n        wait until <mouse down?>\n        stop [all v]\n    end\nend\n\n@Title bar\n\nwhen flag clicked\nhide\nset [____________ id v] to [main]\n\nwhen I receive [init ui v]\nif <(____________ id) = [main]> then\n    switch costume to (costume1 v)\n    show\n    wait until <(⛈️ STATUS) = [2]>\n    set x to (-120)\n    set [____________ id v] to [profile]\n    create clone of (_myself_ v)\n    set [____________ id v] to [mystuff]\n    create clone of (_myself_ v)\n    set [____________ id v] to [profile-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [mystuff-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [messages]\n    create clone of (_myself_ v)\n    set [____________ id v] to [messages-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [main]\nend\n\nwhen I start as a clone\nset [ghost v] effect to (100)\nset [_________ brightness v] to [10]\nif < (____________ id) contains [icon]?> then\n    change y by (15)\nend\ngo to [front v] layer\nforever\n    change [ghost v] effect by (-10)\n    if <(____________ id) = [messages-icon]> then\n        if <(@messages) < [6]> then\n            switch costume to (join [messages-icon] (@messages))\n        else\n            switch costume to (messages-icon6 v)\n        end\n    else\n        switch costume to (____________ id)\n    end\n    show\n    if < (____________ id) contains [icon]?> then\n        go to [front v] layer\n        go [backward v] (1) layers\n        if < (____________ id) contains (__________top-bar-touching)?> then\n            change y by (((y position) - (3)) / (-3))\n        else\n            change y by ((y position) / (-3))\n        end\n    else\n        if <touching (mouse-pointer v)?> then\n            set [__________top-bar-touching v] to (____________ id)\n            change [_________ brightness v] by (-2)\n            if <(_________ brightness) < [0]> then\n                set [_________ brightness v] to [0]\n            end\n        else\n            if <(__________top-bar-touching) = (____________ id)> then\n                set [__________top-bar-touching v] to [none]\n            end\n            change [_________ brightness v] by (2)\n            if <[10] < (_________ brightness)> then\n                set [_________ brightness v] to [10]\n            end\n        end\n        set [brightness v] effect to (((_________ brightness) + (-10)) * (0.5))\n        go to [back v] layer\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(⛈️ STATUS) = [2]> then\n                    broadcast (failedtoload close v)\n                    if <(____________ id) = [profile]> then\n                        set [theme v] to [ui]\n                        set [mode v] to [profile]\n                        set [@profile-on v] to (@username)\n                        broadcast (@get-user-info v)\n                    end\n                    if <(____________ id) = [home]> then\n                        if <not <(mode) = [home]>> then\n                            set [theme v] to [ui]\n                            set [mode v] to [home]\n                            broadcast (home v)\n                        end\n                    end\n                    if <(____________ id) = [mystuff]> then\n                        if <not <(mode) = [mystuff]>> then\n                            set [mode v] to [mystuff]\n                            set [@@tab v] to [all]\n                            broadcast (mystuff v)\n                        end\n                    end\n                    if <(____________ id) = [messages]> then\n                        if <(mode) = [messages]> then\n                            set [@@tab v] to [unread]\n                            broadcast (loading v)\n                            broadcast (@messages v)\n                        else\n                            set [theme v] to [ui]\n                            set [mode v] to [messages]\n                            set [@@tab v] to [unread]\n                            broadcast (messages-site v)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [trans1 v]\nset [\side-bar opened v] to [0]\ndelete this clone\n\nwhen I receive [close-headbar v]\ndelete this clone\n\n@Loading\n\nwhen flag clicked\nhide\n\nwhen I receive [loading v]\nshow\nswitch costume to (costume3 v)\nset [ghost v] effect to (100)\nforever\n    change [ghost v] effect by (-10)\n    set size to ((80) + ()) %\n    go to x: (0) y: (-20)\n    if <(mode) = [messages]> then\n        go to x: (-45) y: (-20)\n    else\n        if <<(mode) = [mystuff]> or <(mode) = [community]>> then\n            go to x: (-80) y: (-20)\n        end\n    end\n    turn right (18) degrees\nend\n\nwhen I receive [loading-end v]\nstop [other scripts in sprite v]\nrepeat (4)\n    change size by (10)\n    change [ghost v] effect by (25)\nend\n\nwhen [timer v] > (0)\nhide\n\n@Sprite2\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\nwhen I receive [@createnewlevel v]\nwait (1) seconds\nwait until <(⛈️ STATUS) = [2]>\nwait (0.5) seconds\nif <(⛈️ STATUS) = [2]> then\n    set [ghost v] effect to (100)\n    switch costume to (level created v)\n    set y to (-220)\n    repeat (10)\n        change [ghost v] effect by (-10)\n        change y by (((y position) - (-145)) / (-2))\n    end\n    wait (2) seconds\n    repeat (10)\n        change [ghost v] effect by (10)\n        change y by (((y position) - (-220)) / (-3.5))\n    end\nend\n\nwhen I receive [post-notif v]\nif <(@@LEVEL author) = (@username)> then\n    stop [other scripts in sprite v]\n    set [ghost v] effect to (100)\n    switch costume to (saving v)\n    set y to (-220)\n    repeat (10)\n        change [ghost v] effect by (-10)\n        change y by (((y position) - (-145)) / (-2))\n    end\n    wait until <not <(⛈️ STATUS) = [1]>>\n    wait (0) seconds\n    stop [other scripts in sprite v]\n    change [ghost v] effect by (100)\n    if <<not <([🌤️response_output v] of [cloud requests v]) = (length of (@LEVEL CHANGED))>> or <(⛈️ STATUS) = [-5]>> then\n        switch costume to (save failure v)\n        set y to (-220)\n        repeat (10)\n            change [ghost v] effect by (-10)\n            change y by (((y position) - (-145)) / (-2))\n        end\n        set [@level changed v] to [0]\n        wait (1.2) seconds\n        repeat (10)\n            change [ghost v] effect by (10)\n            change y by (((y position) - (-220)) / (-3.5))\n        end\n    else\n        switch costume to (level saved v)\n        set y to (-220)\n        repeat (10)\n            change [ghost v] effect by (-10)\n            change y by (((y position) - (-145)) / (-2))\n        end\n        wait (0.75) seconds\n        repeat (10)\n            change [ghost v] effect by (10)\n            change y by (((y position) - (-220)) / (-3.5))\n        end\n        switch costume to (level saved2 v)\n        set y to (-220)\n        repeat (10)\n            change [ghost v] effect by (-10)\n            change y by (((y position) - (-145)) / (-2))\n        end\n        wait (0.75) seconds\n        repeat (10)\n            change [ghost v] effect by (10)\n            change y by (((y position) - (-220)) / (-3.5))\n        end\n    end\nend\n\nwhen I receive [@sharelevel v]\nstop [other scripts in sprite v]\nset [ghost v] effect to (100)\n\nwhen I receive [\[proj\] remix v]\nset [ghost v] effect to (100)\nswitch costume to (remixing v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait (1) seconds\nwait until <(⛈️ STATUS) = [2]>\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\nset [ghost v] effect to (100)\nswitch costume to (remix created v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait (2) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [@deletelevel v]\nset [ghost v] effect to (100)\nswitch costume to (del v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait (2) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [\[notif\]lodinginfo v]\nset [ghost v] effect to (100)\nswitch costume to (info v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait until <not <(⛈️ STATUS) = [1]>>\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [\[notif\]loadingcontent v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\nset [ghost v] effect to (100)\nswitch costume to (content v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait until <not <(⛈️ STATUS) = [1]>>\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [@get-level-info v]\nset [ghost v] effect to (100)\nswitch costume to (info v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait until <not <(⛈️ STATUS) = [1]>>\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nbroadcast (@post level v)\n\nwhen I receive [@get-level-info v]\nstop [other scripts in sprite v]\nset [ghost v] effect to (100)\n\nwhen I receive [@get-user-info v]\nset [ghost v] effect to (100)\nswitch costume to (info2 v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait until <not <(⛈️ STATUS) = [1]>>\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [@notifs enable v]\nstop [other scripts in sprite v]\nset [ghost v] effect to (100)\nswitch costume to (notif enabled v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait (0.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [@notifs disable v]\nstop [other scripts in sprite v]\nset [ghost v] effect to (100)\nswitch costume to (notif disabled v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait (0.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen I receive [shutdownnotice-close v]\nshow\nset [ghost v] effect to (100)\nswitch costume to (welcome v)\nset y to (-220)\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change y by (((y position) - (-145)) / (-2))\nend\nwait until <<(⛈️ STATUS) = [2]> or <(⛈️ STATUS) = [-5]>>\nbroadcast (loading-end v)\nrepeat (10)\n    change [ghost v] effect by (10)\n    change y by (((y position) - (-220)) / (-3.5))\nend\n\nwhen flag clicked\nhide\n\n@Menu\n\nwhen I receive [init-home v]\nhide\nwait until <(⛈️ STATUS) = [2]>\nset [mode v] to [home]\nbroadcast (loading-end v)\nHome Menu Init\n\ndefine Home Menu Init\nset [i v] to [0]\nrepeat (6)\n    change [i v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\nset size to (75) %\nset [ghost v] effect to (100)\nswitch costume to (join [button] (i))\nset [brightness v] to [0]\nforever\n    if <(mode) = [home]> then\n        change [ghost v] effect by (-10)\n        change size by (((size) - (100)) / (-3))\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] to [-10]\n            if <mouse down?> then\n                set [brightness v] effect to (-20)\n                wait until <not <mouse down?>>\n                if <touching (mouse-pointer v)?> then\n                    if <(i) = [1]> then\n                        set [mode v] to [newlevel]\n                    end\n                    if <(i) = [2]> then\n                        set [mode v] to [community]\n                        set [@@tab v] to [foryou]\n                        broadcast (community v)\n                    end\n                    if <(i) = [3]> then\n                        set [mode v] to [mystuff]\n                        set [@@tab v] to [all]\n                        broadcast (mystuff v)\n                    end\n                    if <(i) = [4]> then\n                        set [theme v] to [ui]\n                        set [mode v] to [messages]\n                        set [@@tab v] to [unread]\n                        broadcast (messages-site v)\n                    end\n                    if <(i) = [5]> then\n                        set [@@level id v] to [random]\n                        broadcast (@get-level v)\n                        set [mode v] to [spotlight]\n                    end\n                    if <(i) = [6]> then\n                        hide\n                        set [@@level shared v] to [?]\n                        ask [Enter a level name, a level id or a username:] and wait\n                        if <not <(answer) = []>> then\n                            set [@@tab v] to [search]\n                            set [mode v] to [search]\n                            broadcast (@get-public-levels-bundle v)\n                        end\n                        show\n                    end\n                end\n            end\n        else\n            change [brightness v] by (2)\n            if <[0] < (brightness)> then\n                set [brightness v] to [0]\n            end\n        end\n        set [brightness v] effect to (brightness)\n    else\n        stop [other scripts in sprite v]\n        repeat (5)\n            change [ghost v] effect by (20)\n            change size by (-5)\n        end\n        delete this clone\n    end\nend\n\nwhen I receive [home v]\nwait until <(⛈️ STATUS) = [2]>\nbroadcast (loading-end v)\nHome Menu Init\n\n@NewLevel UI\n\nwhen flag clicked\nhide\nset size to (100) %\nforever\n    wait until <(mode) = [newlevel]>\n    set [clone id v] to [button1]\n    create clone of (_myself_ v)\n    set [clone id v] to [button2]\n    create clone of (_myself_ v)\n    set [clone id v] to [button3]\n    create clone of (_myself_ v)\n    wait until <not <(mode) = [newlevel]>>\nend\n\nwhen I start as a clone\ngo to x: (0) y: (-200)\nforever\n    switch costume to (clone id)\n    if <<(mode) = [newlevelinput]> or <(mode) = [newlevel]>> then\n        change y by ((y position) / (-2))\n        show\n        clear graphic effects\n        set [ghost v] effect to (0)\n        if <not <(clone id) = [button3]>> then\n            if <(mode) = [newlevelinput]> then\n                set [ghost v] effect to (70)\n            else\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (-8)\n                    if <mouse down?> then\n                        repeat until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n                            change y by ((y position) / (-5))\n                        end\n                        if <touching (mouse-pointer v)?> then\n                            set [mode v] to [newlevelinput]\n                            set [input v] to []\n                            set [@@level code v] to [10]\n                            if <(clone id) = [button2]> then\n                                stamp\n                                hide\n                                ask [📋 Paste your level code:] and wait\n                                erase all\n                                set [input v] to (answer)\n                                set [@@level code v] to (answer)\n                            end\n                            broadcast (@createnewlevel v)\n                            broadcast (loading v)\n                            set [mode v] to [creatingnewlevel]\n                        end\n                    end\n                end\n            end\n        end\n    else\n        repeat (5)\n            change size by (-5)\n            change [ghost v] effect by (20)\n        end\n        delete this clone\n    end\nend\n\n@SFEplus\n\ndefine CommunityLevels\nset [iter v] to [0]\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nif <not < (mode) contains [userlevels]?>> then\n    switch costume to (@@tab)\n    clear graphic effects\n    set [ghost v] effect to (0)\n    set size to (95) %\n    go to x: (-213) y: (93)\n    stamp\nend\nif <([🌤️response_output v] of [cloud requests v]) = [-2]> then\n    clear graphic effects\n    set [ghost v] effect to (8)\n    set size to (100) %\n    go to x: (-82) y: (-30)\n    if <(@@tab) = [recent]> then\n        switch costume to (noapi3 v)\n    else\n        switch costume to (nolvl v)\n    end\n    stamp\nelse\n    if <([🌤️response_output v] of [cloud requests v]) = [-1]> then\n        clear graphic effects\n        set [ghost v] effect to (8)\n        set size to (100) %\n        go to x: (-82) y: (-30)\n        switch costume to (noapi v)\n        stamp\n    else\n        SFE | Switch to Font [work sans semibold]\n        SFE | Set Text Color: RGBA [] [0] [0] [100]\n        if <(mode) = [userlevels]> then\n            SFE | Switch to Font [work sans semibold]\n            SFE | Set Text Color: RGBA [0] [0] [0] [100]\n            SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join (join (@profile-on) [ > Shared Levels ]) (join [\(] (join (item (length of [@decoded_response v]) of [@decoded_response v]) (join [\) - Page ] (@@page)))))\n        else\n            if <(mode) = [stareduserlevels]> then\n                SFE | Switch to Font [work sans semibold]\n                SFE | Set Text Color: RGBA [0] [0] [0] [100]\n                SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join (join (@profile-on) [ > Favorited Levels ]) (join [\(] (join (item (length of [@decoded_response v]) of [@decoded_response v]) (join [\) - Page ] (@@page)))))\n            else\n                if <<<(@@tab) = [recent]> or <(@@tab) = [toploved]>> or <(@@tab) = [premium]>> then\n                    SFE | Print Line: Pos [0] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [Page ] ((((@@RECENT sub_page) - (1)) * (5)) + (@@page)))\n                else\n                    SFE | Print Line: Pos [0] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [Page ] (@@page))\n                end\n            end\n        end\n        set [i v] to (((@@page) * (4)) - (3))\n        set [o v] to [0]\n        repeat (4)\n            change [o v] by (1)\n            if <not <(i) > ((length of [@decoded_response v]) / (6))>> then\n                go to x: (-10) y: (0)\n                clear graphic effects\n                set [ghost v] effect to (0)\n                switch costume to (item (((i) * (6)) - (3)) of [@decoded_response v])\n                set size to (70) %\n                go to x: (-175) y: ((117) + ((o) * (-60)))\n                stamp\n                SFE | Switch to Font [work sans semibold]\n                SFE | Set Text Color: RGBA [] [0] [0] [100]\n                SFE | Print Line: Pos [-190] ((104) + ((o) * (-60))) Size [10.4] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (((i) * (6)) - (4)) of [@decoded_response v])\n                \n                clear graphic effects\n                set [ghost v] effect to (0)\n                switch costume to (cover v)\n                set size to (70) %\n                go to x: (-175) y: ((117) + ((o) * (-60)))\n                stamp\n                if <<(@@tab) = [played]> or <<(@@tab) = [more]> or <<(@@tab) = []> or < (mode) contains [userlevels]?>>>> then\n                    clear graphic effects\n                    set [ghost v] effect to (0)\n                    if <(item (((i) * (6)) - (0)) of [@decoded_response v]) = [True]> then\n                        switch costume to (hearttrue v)\n                    else\n                        switch costume to (heartfalse v)\n                    end\n                    set size to (70) %\n                    go to x: (-210) y: ((117) + ((o) * (-60)))\n                    change x by (70)\n                    stamp\n                end\n                if <(@@tab) = [premium]> then\n                    clear graphic effects\n                    set [ghost v] effect to (0)\n                    switch costume to (premiumneutral v)\n                    set size to (70) %\n                    go to x: (-185) y: ((117) + ((o) * (-60)))\n                    change x by (70)\n                    stamp\n                end\n                clear graphic effects\n                set [ghost v] effect to (0)\n                set size to (70) %\n                go to x: (-175) y: ((117) + ((o) * (-60)))\n                if <<(@@tab) = [topremixed]> or <(@@tab) = [remixes]>> then\n                    switch costume to (remixneutral v)\n                else\n                    if <(@@tab) = [toploved]> then\n                        switch costume to (heartneutral v)\n                    else\n                        if <(@@tab) = [popular]> then\n                            switch costume to (eye v)\n                        else\n                            if <(@@tab) = [feed]> then\n                                switch costume to (feedneutral v)\n                                if <touching (mouse-pointer v)?> then\n                                    switch costume to (join [feedHover] (item (((i) * (6)) - (2)) of [@decoded_response v]))\n                                end\n                            else\n                                switch costume to (mini v)\n                            end\n                        end\n                    end\n                end\n                stamp\n                SFE | Switch to Font [work sans]\n                SFE | Print Line: Pos [-189] ((83) + ((o) * (-60))) Size [9.8] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [by ] (item (((i) * (6)) - (1)) of [@decoded_response v]))\n                SFE | Switch to Font [work sans semibold]\n                if <(@@tab) = [recent]> then\n                    if <(item (((i) * (6)) - (2)) of [@decoded_response v]) < [60]> then\n                        SFE | Print Line: Pos [-40] ((107.4) + ((o) * (-60))) Size [8.2] Angle [] Bounds [] [] Space [] Align [l] [] Text (join (item (((i) * (6)) - (2)) of [@decoded_response v]) [ min ago])\n                    else\n                        SFE | Print Line: Pos [-40] ((107.4) + ((o) * (-60))) Size [8.2] Angle [] Bounds [] [] Space [] Align [l] [] Text (join ([floor v] of ((item (((i) * (6)) - (2)) of [@decoded_response v]) / (60)) ) [ hr ago])\n                    end\n                else\n                    SFE | Print Line: Pos [-12.8] ((107.4) + ((o) * (-60))) Size [8.2] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (((i) * (6)) - (2)) of [@decoded_response v])\n                    if <(@@tab) = [feed]> then\n                end\n                clear graphic effects\n                set [ghost v] effect to (0)\n                switch costume to (prev-overlay v)\n                set size to (70) %\n                go to x: (-175) y: ((116) + ((o) * (-60)))\n                stamp\n                clear graphic effects\n                clear graphic effects\n                set [ghost v] effect to (0)\n                switch costume to (prev-play v)\n                set size to (70) %\n                if <touching (mouse-pointer v)?> then\n                    set [ghost v] effect to (50)\n                    if <mouse down?> then\n                        set [ghost v] effect to (75)\n                    end\n                    if <not <mouse down?>> then\n                        if <(mouse_down) = [1]> then\n                            set [mode v] to [spotlight]\n                            set [@@level id v] to (item (((i) * (6)) - (5)) of [@decoded_response v])\n                            broadcast (@get-level v)\n                        end\n                    end\n                end\n                stamp\n                clear graphic effects\n                set [ghost v] effect to (0)\n                switch costume to (profile-button-prev v)\n                set size to (70) %\n                go to x: (-175) y: ((116) + ((o) * (-60)))\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (-15)\n                    if <mouse down?> then\n                        set [ghost v] effect to (-30)\n                    end\n                    if <not <mouse down?>> then\n                        if <(mouse_down) = [1]> then\n                            set [mode v] to [profile]\n                            set [@profile-on v] to (item (((i) * (6)) - (1)) of [@decoded_response v])\n                            broadcast (@get-user-info v)\n                        end\n                    end\n                end\n                stamp\n            end\n            change [i v] by (1)\n        end\n    end\nend\nif <<(@@page) = [5]> and <<<(@@tab) = [recent]> or <(@@tab) = [premium]>> or <(@@tab) = [toploved]>>> then\n    clear graphic effects\n    set [ghost v] effect to (0)\n    switch costume to (load more v)\n    set size to (70) %\n    go to x: (-85) y: (-145)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                set [@@page v] to [1]\n                change [@@recent sub_page v] by (1)\n                broadcast (@get-public-levels-bundle v)\n            end\n        end\n    end\n    stamp\nend\nif <(@@tab) = [remixes]> then\n    clear graphic effects\n    set [ghost v] effect to (20)\n    switch costume to (bg-loadmorepage v)\n    set size to (80) %\n    go to x: (80) y: (0)\n    stamp\n    clear graphic effects\n    set [ghost v] effect to (0)\n    switch costume to (loadrandom-backto v)\n    set size to (80) %\n    go to x: (82) y: (0)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@get-level v)\n                set [mode v] to [spotlight]\n                stop [this script v]\n            end\n        end\n    end\n    stamp\nend\nif <(@@tab) = [more]> then\n    clear graphic effects\n    set [ghost v] effect to (20)\n    switch costume to (bg-loadmorepage v)\n    set size to (80) %\n    go to x: (80) y: (0)\n    stamp\n    clear graphic effects\n    set [ghost v] effect to (0)\n    switch costume to (loadrandom-loadmorepage v)\n    set size to (80) %\n    go to x: (82) y: (0)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@get-random-level v)\n                set [mode v] to [spotlight]\n            end\n        end\n    end\n    stamp\n    clear graphic effects\n    set [ghost v] effect to (0)\n    switch costume to (loadrandom-backto v)\n    set size to (80) %\n    go to x: (82) y: (0)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@get-level v)\n                set [mode v] to [spotlight]\n                stop [this script v]\n            end\n        end\n    end\n    stamp\n    clear graphic effects\n    set [ghost v] effect to (0)\n    switch costume to (com-loadmorepage2 v)\n    set size to (80) %\n    go to x: (82) y: (0)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@get-public-levels-bundle v)\n                set [mode v] to [community]\n                broadcast (community v)\n                set [@@tab v] to [recent]\n                stop [this script v]\n            end\n        end\n    end\n    stamp\nend\nif <not <mouse down?>> then\n    set [mouse_down v] to [0]\nend\n\ndefine zzsfe_width (s) (cs) (t)\nset [zzsfe_2 v] to [1]\nset [zzsfe_3 v] to [0]\nset [zzsfe_4 v] to [0]\nset [zzsfe_6 v] to [0]\nrepeat (length of (t))\n    switch costume to (sfe v)\n    switch costume to (join (letter (zzsfe_2) of (t)) (zzsfe_fontID))\n    if <(costume [number v]) > [2]> then\n        set [zzsfe_5 v] to (item (costume [number v]) of [zzsfe_ckern v])\n        change [zzsfe_4 v] by ((item (costume [number v]) of [zzsfe_cwidth v]) + ((SFE | Kerning) * (join (join (letter ((zzsfe_3) - (3)) of (zzsfe_5)) (letter ((zzsfe_3) - (2)) of (zzsfe_5))) (join (letter ((zzsfe_3) - (1)) of (zzsfe_5)) (letter (zzsfe_3) of (zzsfe_5))))))\n        change [zzsfe_6 v] by (1)\n    end\n    set [zzsfe_3 v] to ((4) * ((costume [number v]) - (zzsfe_fontStart)))\n    change [zzsfe_2 v] by (1)\nend\nset [zzsfe_2 v] to ((s) * (zzsfe_4))\nif <(zzsfe_6) > [0]> then\n    change [zzsfe_2 v] by ((s) * (((zzsfe_6) - (1)) * (cs)))\nend\n\ndefine zzsfe_print (l) (r) (cs) (ax) (ay) (a) (t)\nset [zzsfe_0 v] to ([cos v] of (a) )\nset [zzsfe_1 v] to ([sin v] of (a) )\nif <(ax) = [0]> then\n    set [zzsfe_6 v] to [0]\nelse\n    zzsfe_width (SFE | Size) (cs) (t)\n    change [sfe | x v] by ((ax) * ((zzsfe_0) * (zzsfe_2)))\n    change [sfe | y v] by ((ax) * ((zzsfe_1) * (zzsfe_2)))\n    set [zzsfe_6 v] to ((ax) * (zzsfe_2))\nend\nchange [sfe | x v] by (((-1) * (ay)) * ((zzsfe_1) * (SFE | Size)))\nchange [sfe | y v] by ((ay) * ((zzsfe_0) * (SFE | Size)))\npoint in direction ((90) - (a))\nif <((3.125) * (SFE | Size)) < [100]> then\n    switch costume to (sfe v)\nelse\n    switch costume to (mini v)\nend\nset size to ((3.125) * (SFE | Size)) %\nset [color v] effect to (zzsfe_c0)\nif <not <<(SFE | Underline Height) = [none]> or <(SFE | Underline Color) = [none]>>> then\n    if <(ax) = [0]> then\n        zzsfe_width (SFE | Size) (cs) (t)\n        set [zzsfe_6 v] to [0]\n    end\n    if <(zzsfe_6) > (l)> then\n        set [zzsfe_3 v] to (zzsfe_6)\n    else\n        set [zzsfe_3 v] to (l)\n    end\n    if <((zzsfe_6) + (zzsfe_2)) < (r)> then\n        set [zzsfe_4 v] to ((zzsfe_6) + (zzsfe_2))\n    else\n        set [zzsfe_4 v] to (r)\n    end\n    change [zzsfe_3 v] by ((-1) * (zzsfe_6))\n    change [zzsfe_4 v] by ((-1) * (zzsfe_6))\n    switch costume to (sfe v)\n    set pen (transparency v) to (100)\nend\nset [zzsfe_0 v] to ((SFE | Size) * (zzsfe_0))\nset [zzsfe_1 v] to ((SFE | Size) * (zzsfe_1))\nset [zzsfe_2 v] to [1]\nset [zzsfe_3 v] to [0]\nrepeat (length of (t))\n    switch costume to (sfe v)\n    switch costume to (join (letter (zzsfe_2) of (t)) (zzsfe_fontID))\n    set [zzsfe_4 v] to (costume [number v])\n    if <(zzsfe_4) > [2]> then\n        set [zzsfe_5 v] to (item (zzsfe_4) of [zzsfe_ckern v])\n        set [zzsfe_5 v] to ((SFE | Kerning) * (join (join (letter ((zzsfe_3) - (3)) of (zzsfe_5)) (letter ((zzsfe_3) - (2)) of (zzsfe_5))) (join (letter ((zzsfe_3) - (1)) of (zzsfe_5)) (letter (zzsfe_3) of (zzsfe_5)))))\n        change [sfe | x v] by ((zzsfe_0) * (zzsfe_5))\n        change [sfe | y v] by ((zzsfe_1) * (zzsfe_5))\n        change [zzsfe_6 v] by ((SFE | Size) * (zzsfe_5))\n        set [zzsfe_5 v] to (item (zzsfe_4) of [zzsfe_cwidth v])\n        if <not <<(zzsfe_6) < (l)> or <((zzsfe_6) + ((SFE | Size) * (zzsfe_5))) > (r)>>> then\n            switch costume to (sfe v)\n            go to x: (SFE | X) y: (SFE | Y)\n            switch costume to (zzsfe_4)\n            set [brightness v] effect to (zzsfe_b0)\n            set [ghost v] effect to (zzsfe_g0)\n            stamp\n            set [brightness v] effect to (zzsfe_b1)\n            set [ghost v] effect to (zzsfe_g1)\n            stamp\n        end\n        change [zzsfe_5 v] by (cs)\n        change [sfe | x v] by ((zzsfe_0) * (zzsfe_5))\n        change [sfe | y v] by ((zzsfe_1) * (zzsfe_5))\n        change [zzsfe_6 v] by ((SFE | Size) * (zzsfe_5))\n    end\n    set [zzsfe_3 v] to ((4) * ((zzsfe_4) - (zzsfe_fontStart)))\n    change [zzsfe_2 v] by (1)\nend\nswitch costume to (mini v)\nset size to (100000) %\nswitch costume to (sfe v)\n\ngo to x: ((SFE | X) + (((zzsfe_0) * (zzsfe_3)) - ((zzsfe_1) * ((SFE | Size) * (SFE | Underline Height))))) y: ((SFE | Y) + (((zzsfe_1) * (zzsfe_3)) + ((zzsfe_0) * ((SFE | Size) * (SFE | Underline Height)))))\npen down\nset pen color to (SFE | Underline Color)\ngo to x: ((SFE | X) + (((zzsfe_0) * (zzsfe_4)) - ((zzsfe_1) * ((SFE | Size) * (SFE | Underline Height))))) y: ((SFE | Y) + (((zzsfe_1) * (zzsfe_4)) + ((zzsfe_0) * ((SFE | Size) * (SFE | Underline Height)))))\npen up\n\ndefine SFE | Print Line: Pos (x) (y) Size (s) Angle (a) Bounds (l) (r) Space (cs) Align (ax) (ay) Text (text)\npen up\nif <not <(x) = []>> then\n    set [sfe | x v] to ((1) * (x))\nend\nif <not <(y) = []>> then\n    set [sfe | y v] to ((1) * (y))\nend\nif <not <(s) = []>> then\n    set [sfe | size v] to ((1) * (s))\nend\nif <(l) = []> then\n    set [zzsfe_0 v] to ((-1) / (0))\nelse\n    set [zzsfe_0 v] to ((1) * (l))\nend\nif <(r) = []> then\n    set [zzsfe_1 v] to ((1) / (0))\nelse\n    set [zzsfe_1 v] to ((1) * (r))\nend\nif <(ax) = [l]> then\n    set [zzsfe_2 v] to ((0) * (0))\nelse\n    if <(ax) = [c]> then\n        set [zzsfe_2 v] to ((-1) / (2))\n    else\n        if <(ax) = [r]> then\n            set [zzsfe_2 v] to ((1) * (-1))\n        else\n            set [zzsfe_2 v] to ((1) * (ax))\n            if <(zzsfe_2) > [0]> then\n                set [zzsfe_2 v] to ((0) * (0))\n            else\n                if <(zzsfe_2) < [-1]> then\n                    set [zzsfe_2 v] to ((1) * (-1))\n                end\n            end\n        end\n    end\nend\nif <(ay) = [b]> then\n    set [zzsfe_3 v] to ((0) * (0))\nelse\n    if <(ay) = [c]> then\n        set [zzsfe_3 v] to ((-1) / (2))\n    else\n        if <(ay) = [t]> then\n            set [zzsfe_3 v] to ((1) * (-1))\n        else\n            set [zzsfe_3 v] to ((1) * (ay))\n        end\n    end\nend\nzzsfe_print (zzsfe_0) (zzsfe_1) ((cs) / (1)) (zzsfe_2) (zzsfe_3) ((a) mod (360)) (text)\n\ndefine SFE | Print WW: Pos (x) (y) Size (s) Bounds (x0) (x1) (y0) (y1) Space (cs) (ls) Align (ax) (ay) Text (text)\npen up\nif <not <(x) = []>> then\n    set [sfe | x v] to ((1) * (x))\nend\nif <not <(y) = []>> then\n    set [sfe | y v] to ((1) * (y))\nend\nif <not <(s) = []>> then\n    set [sfe | size v] to ((1) * (s))\nend\nif <(x0) = []> then\n    set [zzsfe_0 v] to ((1) * (-240))\nelse\n    set [zzsfe_0 v] to ((1) * (x0))\nend\nif <(x1) = []> then\n    set [zzsfe_1 v] to ((1) * (240))\nelse\n    set [zzsfe_1 v] to ((1) * (x1))\nend\nif <(ax) = [l]> then\n    set [zzsfe_2 v] to ((0) * (0))\nelse\n    if <(ax) = [c]> then\n        set [zzsfe_2 v] to ((-1) / (2))\n    else\n        if <(ax) = [r]> then\n            set [zzsfe_2 v] to ((1) * (-1))\n        else\n            set [zzsfe_2 v] to ((1) * (ax))\n            if <(zzsfe_2) > [0]> then\n                set [zzsfe_2 v] to ((0) * (0))\n            else\n                if <(zzsfe_2) < [-1]> then\n                    set [zzsfe_2 v] to ((1) * (-1))\n                end\n            end\n        end\n    end\nend\nset [zzsfe_3 v] to ((zzsfe_1) - (zzsfe_0))\nif <(x) = []> then\n    set [zzsfe_4 v] to (zzsfe_3)\nelse\n    if <(((zzsfe_1) - (x)) / (zzsfe_3)) > ((zzsfe_2) + (1))> then\n        if <(zzsfe_2) = [0]> then\n            set [zzsfe_4 v] to ((zzsfe_1) - (x))\n        else\n            set [zzsfe_4 v] to (((zzsfe_0) - (x)) / (zzsfe_2))\n        end\n    else\n        if <((zzsfe_2) + (1)) = [0]> then\n            set [zzsfe_4 v] to ((x) - (zzsfe_0))\n        else\n            set [zzsfe_4 v] to (((zzsfe_1) - (x)) / ((zzsfe_2) + (1)))\n        end\n    end\nend\nif <(zzsfe_4) < [0]> then\n    set [zzsfe_4 v] to ((0) * (0))\nend\nzzsfe_ww ((zzsfe_3) / (SFE | Size)) ((zzsfe_4) / (SFE | Size)) ((cs) / (1)) (text) ((zzsfe_0) - ((zzsfe_2) * (zzsfe_3))) (zzsfe_2)\nif <(ls) = []> then\n    set [zzsfe_3 v] to ((-1.75) * (SFE | Size))\nelse\n    set [zzsfe_3 v] to (((-1) - ((0.75) * (ls))) * (SFE | Size))\nend\nif <not <(ay) = []>> then\n    if <(ay) = [t]> then\n        change [sfe | y v] by ((-1) * (SFE | Size))\n    else\n        if <(ay) = [c]> then\n            change [sfe | y v] by ((((-1) * (((item (1) of [zzsfe_ww1 v]) - (1)) * (zzsfe_3))) - (SFE | Size)) / (2))\n        else\n            if <(ay) = [b]> then\n                if <(item (1) of [zzsfe_ww1 v]) > [0]> then\n                    change [sfe | y v] by ((-1) * (((item (1) of [zzsfe_ww1 v]) - (1)) * (zzsfe_3)))\n                end\n            else\n                if <(item (1) of [zzsfe_ww1 v]) > [0]> then\n                    change [sfe | y v] by (((ay) * ((SFE | Size) - (((item (1) of [zzsfe_ww1 v]) - (1)) * (zzsfe_3)))) - (SFE | Size))\n                end\n            end\n        end\n    end\nend\nif <(y0) = []> then\n    set [zzsfe_4 v] to ((1) / (0))\nelse\n    set [zzsfe_4 v] to ((1) * (y0))\nend\nif <(y1) = []> then\n    set [zzsfe_5 v] to ((-1) / (0))\nelse\n    set [zzsfe_5 v] to ((1) * (y1))\nend\nif <(x) = []> then\n    set [zzsfe_2 v] to (zzsfe_0)\nelse\n    set [zzsfe_2 v] to ((1) * (x))\nend\nzzsfe_printww (zzsfe_0) (zzsfe_2) (zzsfe_4) (zzsfe_5) ((cs) / (1)) (zzsfe_3) (zzsfe_1)\n\ndefine zzsfe_ww (l) (fl) (cs) (t) (v0) (v1)\ndelete all of [zzsfe_ww0 v]\ndelete all of [zzsfe_ww1 v]\nrepeat (3)\n    add ((0) * (0)) to [zzsfe_ww1 v]\nend\nset [zzsfe_0 v] to [1]\nset [zzsfe_1 v] to [0]\nset [zzsfe_3 v] to [1]\nset [zzsfe_4 v] to [0]\nset [zzsfe_5 v] to [0]\nrepeat (length of (t))\n    switch costume to (sfe v)\n    switch costume to (join (letter (zzsfe_0) of (t)) (zzsfe_fontID))\n    if <(costume [number v]) > [2]> then\n        add (costume [number v]) to [zzsfe_ww0 v]\n        set [zzsfe_2 v] to (item (costume [number v]) of [zzsfe_ckern v])\n        set [zzsfe_2 v] to ((cs) + ((SFE | Kerning) * (join (join (letter ((zzsfe_1) - (3)) of (zzsfe_2)) (letter ((zzsfe_1) - (2)) of (zzsfe_2))) (join (letter ((zzsfe_1) - (1)) of (zzsfe_2)) (letter (zzsfe_1) of (zzsfe_2))))))\n        if <(letter (zzsfe_0) of (t)) = [ ]> then\n            if <(letter ((zzsfe_0) - (1)) of (t)) = [ ]> then\n                change [zzsfe_4 v] by ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))\n            else\n                add (zzsfe_3) to [zzsfe_ww1 v]\n                add (zzsfe_4) to [zzsfe_ww1 v]\n                add (zzsfe_5) to [zzsfe_ww1 v]\n                set [zzsfe_4 v] to ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))\n                set [zzsfe_5 v] to [0]\n            end\n            set [zzsfe_3 v] to ((length of [zzsfe_ww0 v]) + (1))\n        else\n            if << [-–—] contains (letter (zzsfe_0) of (t))?> and <not < [ -–—0123456789] contains (letter ((zzsfe_0) + (1)) of (t))?>>> then\n                if <(zzsfe_3) = (length of [zzsfe_ww0 v])> then\n                    add (length of [zzsfe_ww0 v]) to [zzsfe_ww1 v]\n                    add ((zzsfe_4) + (zzsfe_2)) to [zzsfe_ww1 v]\n                    add (item (costume [number v]) of [zzsfe_cwidth v]) to [zzsfe_ww1 v]\n                    set [zzsfe_3 v] to ((length of [zzsfe_ww0 v]) + (1))\n                    set [zzsfe_4 v] to [0]\n                    set [zzsfe_5 v] to [0]\n                else\n                    if <((zzsfe_5) + ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))) > (l)> then\n                        add (zzsfe_3) to [zzsfe_ww1 v]\n                        add (zzsfe_4) to [zzsfe_ww1 v]\n                        add (zzsfe_5) to [zzsfe_ww1 v]\n                        add (length of [zzsfe_ww0 v]) to [zzsfe_ww1 v]\n                        add (zzsfe_2) to [zzsfe_ww1 v]\n                        add (item (costume [number v]) of [zzsfe_cwidth v]) to [zzsfe_ww1 v]\n                    else\n                        add (zzsfe_3) to [zzsfe_ww1 v]\n                        add (zzsfe_4) to [zzsfe_ww1 v]\n                        add ((zzsfe_5) + ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))) to [zzsfe_ww1 v]\n                    end\n                    set [zzsfe_3 v] to ((length of [zzsfe_ww0 v]) + (1))\n                    set [zzsfe_4 v] to [0]\n                    set [zzsfe_5 v] to [0]\n                end\n            else\n                if <(zzsfe_3) = (length of [zzsfe_ww0 v])> then\n                    change [zzsfe_4 v] by (zzsfe_2)\n                    set [zzsfe_5 v] to (item (costume [number v]) of [zzsfe_cwidth v])\n                else\n                    if <((zzsfe_5) + ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))) > (l)> then\n                        add (zzsfe_3) to [zzsfe_ww1 v]\n                        add (zzsfe_4) to [zzsfe_ww1 v]\n                        add (zzsfe_5) to [zzsfe_ww1 v]\n                        set [zzsfe_3 v] to (length of [zzsfe_ww0 v])\n                        set [zzsfe_4 v] to (zzsfe_2)\n                        set [zzsfe_5 v] to (item (costume [number v]) of [zzsfe_cwidth v])\n                    else\n                        change [zzsfe_5 v] by ((zzsfe_2) + (item (costume [number v]) of [zzsfe_cwidth v]))\n                    end\n                end\n            end\n        end\n    end\n    set [zzsfe_1 v] to ((4) * ((costume [number v]) - (zzsfe_fontStart)))\n    change [zzsfe_0 v] by (1)\nend\nif <not <(zzsfe_3) > (length of [zzsfe_ww0 v])>> then\n    add (zzsfe_3) to [zzsfe_ww1 v]\n    add (zzsfe_4) to [zzsfe_ww1 v]\n    add (zzsfe_5) to [zzsfe_ww1 v]\nend\nset [zzsfe_0 v] to [4]\nset [zzsfe_1 v] to [2]\nset [zzsfe_2 v] to (fl)\nset [zzsfe_3 v] to [1]\nset [zzsfe_4 v] to [0]\nrepeat (([floor v] of ((length of [zzsfe_ww1 v]) / (3)) ) - (1))\n    if <(zzsfe_3) = (item (zzsfe_0) of [zzsfe_ww1 v])> then\n        set [zzsfe_4 v] to (item ((zzsfe_0) + (2)) of [zzsfe_ww1 v])\n        if <<(zzsfe_3) = [1]> and <<(fl) < (l)> and <(zzsfe_4) > (fl)>>> then\n            replace item (zzsfe_1) of [zzsfe_ww1 v] with ((1) * (1))\n            replace item ((zzsfe_1) + (1)) of [zzsfe_ww1 v] with ((0) * (0))\n            set [zzsfe_2 v] to (l)\n            change [zzsfe_1 v] by (2)\n        end\n    else\n        if <((zzsfe_4) + ((item ((zzsfe_0) + (1)) of [zzsfe_ww1 v]) + (item ((zzsfe_0) + (2)) of [zzsfe_ww1 v]))) > (zzsfe_2)> then\n            replace item (zzsfe_1) of [zzsfe_ww1 v] with (zzsfe_3)\n            replace item ((zzsfe_1) + (1)) of [zzsfe_ww1 v] with ((SFE | Size) * (zzsfe_4))\n            set [zzsfe_2 v] to (l)\n            change [zzsfe_1 v] by (2)\n            set [zzsfe_3 v] to (item (zzsfe_0) of [zzsfe_ww1 v])\n            set [zzsfe_4 v] to (item ((zzsfe_0) + (2)) of [zzsfe_ww1 v])\n        else\n            change [zzsfe_4 v] by ((item ((zzsfe_0) + (1)) of [zzsfe_ww1 v]) + (item ((zzsfe_0) + (2)) of [zzsfe_ww1 v]))\n        end\n    end\n    change [zzsfe_0 v] by (3)\nend\nif <(length of [zzsfe_ww1 v]) > [3]> then\n    replace item (zzsfe_1) of [zzsfe_ww1 v] with (zzsfe_3)\n    replace item ((zzsfe_1) + (1)) of [zzsfe_ww1 v] with ((SFE | Size) * (zzsfe_4))\n    change [zzsfe_1 v] by (2)\nend\nif <(zzsfe_1) > (length of [zzsfe_ww1 v])> then\n    add ((length of [zzsfe_ww0 v]) + (1)) to [zzsfe_ww1 v]\nelse\n    replace item (zzsfe_1) of [zzsfe_ww1 v] with ((length of [zzsfe_ww0 v]) + (1))\nend\nreplace item (1) of [zzsfe_ww1 v] with (round (((zzsfe_1) - (2)) / (2)))\nset [zzsfe_0 v] to (v0)\nset [zzsfe_1 v] to (v1)\n\ndefine zzsfe_printww (x) (fx) (y0) (y1) (cs) (ls) (ax)\npoint in direction (90)\nif <((3.125) * (SFE | Size)) < [100]> then\n    switch costume to (sfe v)\nelse\n    switch costume to (mini v)\nend\nset size to ((3.125) * (SFE | Size)) %\nset [color v] effect to (zzsfe_c0)\nset [zzsfe_0 v] to [2]\nset [zzsfe_1 v] to (item (2) of [zzsfe_ww1 v])\nrepeat (item (1) of [zzsfe_ww1 v])\n    if <<(SFE | Y) < (y1)> or <((SFE | Y) + (SFE | Size)) > (y0)>> then\n        set [zzsfe_1 v] to (item ((zzsfe_0) + (2)) of [zzsfe_ww1 v])\n    else\n        if <(zzsfe_0) = [2]> then\n            set [sfe | x v] to ((fx) + ((ax) * (item ((zzsfe_0) + (1)) of [zzsfe_ww1 v])))\n        else\n            set [sfe | x v] to ((x) + ((ax) * (item ((zzsfe_0) + (1)) of [zzsfe_ww1 v])))\n        end\n        if <<(item ((zzsfe_0) + (2)) of [zzsfe_ww1 v]) > (zzsfe_1)> and <not <<(SFE | Underline Height) = [none]> or <(SFE | Underline Color) = [none]>>>> then\n        set [zzsfe_2 v] to [0]\n        repeat ((item ((zzsfe_0) + (2)) of [zzsfe_ww1 v]) - (zzsfe_1))\n            set [zzsfe_4 v] to (item (zzsfe_1) of [zzsfe_ww0 v])\n            if <(zzsfe_4) > [2]> then\n                set [zzsfe_3 v] to (item (zzsfe_4) of [zzsfe_ckern v])\n                change [sfe | x v] by (((SFE | Size) * (SFE | Kerning)) * (join (join (letter ((zzsfe_2) - (3)) of (zzsfe_3)) (letter ((zzsfe_2) - (2)) of (zzsfe_3))) (join (letter ((zzsfe_2) - (1)) of (zzsfe_3)) (letter (zzsfe_2) of (zzsfe_3)))))\n                switch costume to (sfe v)\n                go to x: (SFE | X) y: (SFE | Y)\n                switch costume to (zzsfe_4)\n                set [brightness v] effect to (zzsfe_b0)\n                set [ghost v] effect to (zzsfe_g0)\n                stamp\n                set [brightness v] effect to (zzsfe_b1)\n                set [ghost v] effect to (zzsfe_g1)\n                stamp\n                change [sfe | x v] by ((SFE | Size) * ((item (zzsfe_4) of [zzsfe_cwidth v]) + (cs)))\n            end\n            set [zzsfe_2 v] to ((4) * ((zzsfe_4) - (zzsfe_fontStart)))\n            change [zzsfe_1 v] by (1)\n        end\n    end\n    change [sfe | y v] by (ls)\n    change [zzsfe_0 v] by (2)\nend\nif <(item (1) of [zzsfe_ww1 v]) > [0]> then\n    change [sfe | y v] by ((-1) * (ls))\nend\ndelete all of [zzsfe_ww0 v]\ndelete all of [zzsfe_ww1 v]\nswitch costume to (mini v)\nset size to (100000) %\nswitch costume to (sfe v)\n\ndefine SFE | Get Width: Size (s) Space (cs) Text (text)\npen up\nif <(s) = []> then\n    zzsfe_width (SFE | Size) ((cs) / (1)) (text)\nelse\n    zzsfe_width ((1) * (s)) ((cs) / (1)) (text)\nend\nset [sfe | width v] to (zzsfe_2)\nswitch costume to (mini v)\nset size to (100000) %\nswitch costume to (sfe v)\n\ndefine SFE | Set Text Color: RGBA (r) (g) (b) (a)\nif <<(r) < (g)> or <(r) < (b)>> then\n    if <<(g) < (r)> or <(g) < (b)>> then\n        set [zzsfe_0 v] to (b)\n        set [zzsfe_3 v] to [133.33333333333333]\n        if <(r) > (g)> then\n            set [zzsfe_1 v] to (r)\n            set [zzsfe_2 v] to (g)\n            set [zzsfe_4 v] to [33.333333333333333]\n        else\n            set [zzsfe_1 v] to (g)\n            set [zzsfe_2 v] to (r)\n            set [zzsfe_4 v] to [-33.333333333333333]\n        end\n    else\n        set [zzsfe_0 v] to (g)\n        set [zzsfe_3 v] to [66.66666666666667]\n        if <(r) > (b)> then\n            set [zzsfe_1 v] to (r)\n            set [zzsfe_2 v] to (b)\n            set [zzsfe_4 v] to [-33.333333333333333]\n        else\n            set [zzsfe_1 v] to (b)\n            set [zzsfe_2 v] to (r)\n            set [zzsfe_4 v] to [33.333333333333333]\n        end\n    end\nelse\n    set [zzsfe_0 v] to (r)\n    if <(g) > (b)> then\n        set [zzsfe_3 v] to [0]\n        set [zzsfe_1 v] to (g)\n        set [zzsfe_2 v] to (b)\n        set [zzsfe_4 v] to [33.333333333333333]\n    else\n        set [zzsfe_3 v] to [200]\n        set [zzsfe_1 v] to (b)\n        set [zzsfe_2 v] to (g)\n        set [zzsfe_4 v] to [-33.333333333333333]\n    end\nend\nif <(zzsfe_0) < [128]> then\n    set [zzsfe_b1 v] to ((1) * (100))\n    set [zzsfe_b0 v] to (((255) * ((zzsfe_0) - (zzsfe_2))) / ((255) - (zzsfe_2)))\n    set [zzsfe_c0 v] to ((zzsfe_3) + ((zzsfe_4) * (((((255) * ((zzsfe_1) - (zzsfe_2))) / ((255) - (zzsfe_2))) + ((255) - (zzsfe_b0))) / (255))))\n    set [zzsfe_b0 v] to (((0.39215686274509803) * (zzsfe_b0)) - (100))\n    set [zzsfe_g1 v] to ((100) - ((0.39215686274509803) * (zzsfe_2)))\nelse\n    set [zzsfe_b1 v] to ((1) * (-100))\n    set [zzsfe_b0 v] to ((100) * ((zzsfe_2) / (zzsfe_0)))\n    set [zzsfe_c0 v] to ((zzsfe_3) + ((zzsfe_4) * (((zzsfe_1) - (zzsfe_2)) / (zzsfe_0))))\n    set [zzsfe_g1 v] to ((0.39215686274509803) * (zzsfe_0))\nend\nset [sfe | underline color v] to ((((65536) * (round (r))) + ((256) * (round (g)))) + (round (b)))\nif <<(a) = []> or <not <(a) < [1]>>> then\n    set [zzsfe_g0 v] to ((0) * (0))\nelse\n    if <(a) > [0]> then\n        set [zzsfe_g0 v] to ((100) - ((100) * (((a) * (zzsfe_g1)) / ((100) - ((a) * ((100) - (zzsfe_g1)))))))\n        set [zzsfe_g1 v] to ((100) - ((a) * ((100) - (zzsfe_g1))))\n        if <((255) * (a)) < [1]> then\n            change [sfe | underline color v] by ((16777216) * (1))\n        else\n            change [sfe | underline color v] by ((16777216) * (round ((255) * (a))))\n        end\n    else\n        set [zzsfe_g0 v] to ((1) * (100))\n        set [zzsfe_g1 v] to ((1) * (100))\n        set [sfe | underline color v] to [none]\n    end\nend\nif <not <(zzsfe_g1) > [0]>> then\n    set [zzsfe_g0 v] to ((1) * (100))\nend\n\ndefine SFE | Set Kerning Multiplier to (mult)\nif <(mult) = []> then\n    set [sfe | kerning v] to ((1) / (1000))\nelse\n    set [sfe | kerning v] to ((mult) / (1000))\n    if <<(SFE | Kerning) = [NaN]> or <<(SFE | Kerning) = [Infinity]> or <(SFE | Kerning) = [-Infinity]>>> then\n        set [sfe | kerning v] to ((0) * (0))\n    end\nend\n\ndefine SFE | Switch to Font (name)\nset [zzsfe_fontstart v] to (item # of (name) in [sfe | font name v])\nset [zzsfe_fontid v] to (join [_] ((zzsfe_fontStart) - (1)))\nset [zzsfe_fontstart v] to (item (zzsfe_fontStart) of [zzsfe_fstart v])\n\ndefine SFE | Create Newlines: Count (n) Size (s) Space (ls)\nif <not <(s) = []>> then\n    set [sfe | size v] to ((1) * (s))\nend\nif <(ls) = []> then\n    if <(n) = []> then\n        change [sfe | y v] by ((-1.75) * (SFE | Size))\n    else\n        change [sfe | y v] by ((-1.75) * ((n) * (SFE | Size)))\n    end\nelse\n    if <(n) = []> then\n        change [sfe | y v] by (((-1) - ((0.75) * (ls))) * (SFE | Size))\n    else\n        change [sfe | y v] by (((-1) - ((0.75) * (ls))) * ((n) * (SFE | Size)))\n    end\nend\n\nwhen flag clicked\npen up\nhide\ngo to x: (0) y: (0)\npoint in direction (90)\nset rotation style [all around v]\nswitch costume to (mini v)\nset size to (100000) %\nswitch costume to (sfe v)\nclear graphic effects\n\ndefine Pen | Set Pen Color: RGBA (r) (g) (b) (a)\nset [zzsfe_0 v] to [0]\nif <(r) > [0]> then\n    if <(r) > [255]> then\n        change [zzsfe_0 v] by (16711680)\n    else\n        change [zzsfe_0 v] by ((65536) * (round (r)))\n    end\nend\nif <(g) > [0]> then\n    if <(g) > [255]> then\n        change [zzsfe_0 v] by (65280)\n    else\n        change [zzsfe_0 v] by ((256) * (round (g)))\n    end\nend\nif <(b) > [0]> then\n    if <(b) > [255]> then\n        change [zzsfe_0 v] by (255)\n    else\n        change [zzsfe_0 v] by (round (b))\n    end\nend\nset pen color to (zzsfe_0)\nif <<(a) = []> or <(a) > [1]>> then\n    set pen (transparency v) to (0)\nelse\n    if <(a) < [0]> then\n        set pen (transparency v) to (100)\n    else\n        set pen (transparency v) to ((100) * ((1) - (a)))\n    end\nend\n\ndefine SFE | Set Underline Height to (height)\nif <((1) * (height)) = (height)> then\n    set [sfe | underline height v] to ((1) * (height))\nelse\n    set [sfe | underline height v] to [none]\nend\n\nwhen I receive [_spotlight to editor v]\nbroadcast (trans1 v) and wait\nset [mode v] to [editor]\nset [theme v] to (@@LEVEL theme)\nset [input v] to (@@LEVEL code)\nbroadcast (edit v)\nbroadcast (trans2 v)\n\nwhen I receive [_spotlight to playing v]\nbroadcast (trans1 v) and wait\nset [theme v] to (@@LEVEL theme)\nset [input v] to (@@LEVEL code)\nset [mode v] to [playing]\nbroadcast (edit v)\nbroadcast (trans2 v)\n\ndefine Spotlight\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nstamp\nif <<(@@LEVEL shared) = [True]> and <(@@LEVEL reviewed) = [0]>> then\n    switch costume to (spotlight-reviewing v)\nelse\n    if <(@@LEVEL parent id) = []> then\n        switch costume to (spotlight v)\n    else\n        switch costume to (spotlight-remix v)\n    end\nend\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (0)\nchange y by (toolbar_y)\nstamp\nswitch costume to (spotlight-profile-button v)\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (toolbar_y)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            set [@profile-on v] to (@@LEVEL author)\n            set [mode v] to [profile]\n            broadcast (@get-user-info v)\n        end\n    end\nend\nstamp\nswitch costume to (join [image] (@@LEVEL theme))\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (-21)\nchange y by (toolbar_y)\nstamp\nSFE | Switch to Font [work sans]\nSFE | Set Text Color: RGBA [20] [20] [20] []\nif <not <<(@@LEVEL shared) = [True]> and <(@@LEVEL reviewed) = [0]>>> then\n    SFE | Print Line: Pos [33] ((toolbar_y) + (-42.5)) Size [13.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (@@LEVEL views)\n    SFE | Print Line: Pos [145] ((toolbar_y) + (-42.5)) Size [13.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (@@LEVEL wins)\n    if <(@@LEVEL parent id) = []> then\n        SFE | Print Line: Pos [33] ((toolbar_y) + (-79.5)) Size [13.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (@@LEVEL remixes)\n        if <(@@LEVEL remixes) > [0]> then\n            switch costume to (sl-remixes v)\n            clear graphic effects\n            set size to (100) %\n            go to x: (0) y: (toolbar_y)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (75)\n                end\n                if <not <mouse down?>> then\n                    if <(mouse_down) = [1]> then\n                        broadcast (more-remixes v)\n                    end\n                end\n            end\n            stamp\n        end\n    else\n        switch costume to (original spotlight v)\n        clear graphic effects\n        set size to (100) %\n        go to x: (0) y: (toolbar_y)\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    set [@@level id v] to (@@LEVEL parent id)\n                    broadcast (\[UI\] fetch level v)\n                end\n            end\n        end\n        stamp\n    end\nend\nSFE | Set Text Color: RGBA [60] [60] [20] []\nSFE | Print Line: Pos [-196] ((toolbar_y) + (31)) Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [by ] (@@LEVEL author))\nSFE | Print Line: Pos [-17] ((toolbar_y) + (31)) Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (@@LEVEL timestamp)\nSFE | Print Line: Pos [-10] ((toolbar_y) + (-106)) Size [6.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [level_id  #] (@@LEVEL id))\nif <<not <(@@LEVEL difficulity) = [None]>> or <(@username) = (@@LEVEL author)>> then\n    switch costume to (difficulity overlay v)\n    clear graphic effects\n    set size to (100) %\n    set [ghost v] effect to (30)\n    go to x: (0) y: (toolbar_y)\n    change y by (-20)\n    stamp\n    if <(@@LEVEL difficulity) = [None]> then\n        SFE | Print Line: Pos [-189] ((toolbar_y) + (-98)) Size [9] Angle [] Bounds [] [] Space [] Align [l] [] Text [No label assigned]\n    else\n        SFE | Print Line: Pos [-189] ((toolbar_y) + (-98)) Size [10.3] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (@@LEVEL difficulity) of [_difficulitylabels v])\n    end\n    if <(@@LEVEL author) = (@username)> then\n        switch costume to (difficulity-edit v)\n        clear graphic effects\n        set size to (100) %\n        go to x: (0) y: (toolbar_y)\n        change y by (-20)\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (-15)\n            if <mouse down?> then\n                set [ghost v] effect to (-30)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    change [@@level difficulity v] by (1)\n                    if <(@@LEVEL difficulity) = [5]> then\n                        set [@@level difficulity v] to [1]\n                    end\n                    broadcast (@set diff v)\n                end\n            end\n        end\n        stamp\n    end\nend\nset size to (100) %\ngo to x: (0) y: (-13)\nchange y by (toolbar_y)\nif <(@@LEVEL author) = (@username)> then\n    switch costume to (play-spotlight1 v)\n    clear graphic effects\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                if <(@@LEVEL code) = [-5]> then\n                    broadcast (twclientrequired-popup v)\n                else\n                    broadcast (_spotlight to playing v)\n                end\n            end\n        end\n    end\n    stamp\n    if <(@@LEVEL shared) = [True]> then\n        switch costume to (unshare-spotlight1 v)\n        clear graphic effects\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    set [mode v] to [...]\n                    broadcast (unshare-popup v)\n                end\n            end\n        end\n    else\n        switch costume to (share-spotlight1 v)\n        clear graphic effects\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    set [mode v] to [...]\n                    broadcast (share-popup v)\n                end\n            end\n        end\n    end\n    stamp\n    switch costume to (edit-spotlight1 v)\n    clear graphic effects\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                if <(@@LEVEL code) = [-5]> then\n                    broadcast (twclientrequired-popup v)\n                else\n                    broadcast (_spotlight to editor v)\n                end\n            end\n        end\n    end\n    stamp\n    switch costume to (trash-spotlight1 v)\n    clear graphic effects\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                set [--interaction opened v] to [1]\n                set [___level_to_delete v] to (@@LEVEL id)\n                broadcast (delete-popup v)\n            end\n        end\n    end\n    stamp\n    switch costume to (sl-edit v)\n    clear graphic effects\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        stamp\n        switch costume to (costume1 v)\n        stamp\n        switch costume to (sl-edit v)\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (\[SPOTLIGHT\] rename v)\n            end\n        end\n    end\n    stamp\nelse\n    if <(@@LEVEL shared) = [True]> then\n        switch costume to (play-spotlight2 v)\n        clear graphic effects\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    if <(@@LEVEL code) = [-5]> then\n                        broadcast (twclientrequired-popup v)\n                    else\n                        broadcast (_spotlight to playing v)\n                    end\n                end\n            end\n        end\n        stamp\n        switch costume to (remix-spotlight v)\n        clear graphic effects\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    if <(@@LEVEL code) = [-5]> then\n                        broadcast (twclientrequired-popup v)\n                    else\n                        broadcast (\[PROJ\] remix v)\n                    end\n                end\n            end\n        end\n        stamp\n    end\n    switch costume to (more-spotlight v)\n    clear graphic effects\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (more-levels v)\n            end\n        end\n    end\n    stamp\nend\nif <(@@LEVEL liked?) = [True]> then\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (love2 v)\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (-10)\n        if <mouse down?> then\n            set [brightness v] effect to (-20)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@like remove v)\n            end\n        end\n    end\nelse\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (love0 v)\n    if <touching (mouse-pointer v)?> then\n        switch costume to (love1 v)\n        if <mouse down?> then\n            set [brightness v] effect to (10)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@like add v)\n            end\n        end\n    end\nend\nstamp\nif <(@@LEVEL stared?) = [True]> then\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (fav3 v)\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (-10)\n        if <mouse down?> then\n            set [brightness v] effect to (-20)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@star remove v)\n            end\n        end\n    end\nelse\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (fav0 v)\n    if <touching (mouse-pointer v)?> then\n        switch costume to (fav2 v)\n        if <mouse down?> then\n            set [brightness v] effect to (10)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@star add v)\n            end\n        end\n    end\nend\nstamp\nif <(@@LEVEL disliked?) = [True]> then\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (love5 v)\n    if <touching (mouse-pointer v)?> then\n        SFE | Print WW: Pos [206] [5] Size [8] Bounds [206] [256] [] [] Space [] [] Align [] [] Text (join (@@LEVEL dislikes) [ dislikes])\n        go to x: (0) y: (toolbar_y)\n        set size to (100) %\n        clear graphic effects\n        switch costume to (love5 v)\n        set [brightness v] effect to (-10)\n        if <mouse down?> then\n            set [brightness v] effect to (-20)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@dislike remove v)\n            end\n        end\n    end\nelse\n    go to x: (0) y: (toolbar_y)\n    set size to (100) %\n    clear graphic effects\n    switch costume to (love4 v)\n    if <touching (mouse-pointer v)?> then\n        SFE | Print WW: Pos [206] [5] Size [8] Bounds [206] [256] [] [] Space [] [] Align [] [] Text (join (@@LEVEL dislikes) [ dislikes])\n        go to x: (0) y: (toolbar_y)\n        set size to (100) %\n        clear graphic effects\n        switch costume to (love3 v)\n        if <mouse down?> then\n            set [brightness v] effect to (10)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (@dislike add v)\n            end\n        end\n    end\nend\nstamp\nSFE | Switch to Font [work sans semibold]\nSFE | Set Text Color: RGBA [60] [60] [60] []\nSFE | Print Line: Pos [60] ((-2) + (toolbar_y)) Size [12] Angle [] Bounds [] [] Space [] Align [r] [] Text (@@LEVEL likes)\nSFE | Print Line: Pos [150] ((-2) + (toolbar_y)) Size [12] Angle [] Bounds [] [] Space [] Align [r] [] Text (@@LEVEL stars)\nSFE | Switch to Font [work sans]\nif <(@username) = (@@LEVEL author)> then\nSFE | Print Line: Pos [-185] ((toolbar_y) + (73)) Size [17] Angle [] Bounds [] [] Space [] Align [l] [] Text (@@LEVEL name)\nchange [toolbar_y v] by ((toolbar_y) / (-2))\nif <not <mouse down?>> then\n    set [mouse_down v] to [0]\nend\nswitch costume to (titlebar v)\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (0)\nstamp\n\nSFE | Print Line: Pos [-185] ((toolbar_y) + (73)) Size [17] Angle [] Bounds [] [] Space [] Align [l] [] Text [\[name redacted\]]\n\nwhen I receive [\[spotlight\] rename v]\nset [--interaction opened v] to [1]\nask [Enter a name for your level: \(only use letters A-Z, a-z and 0-9\)] and wait\nrepeat until <<[0] < (length of (answer))> and <(length of (answer)) < [36]>>\n    if <[0] < (length of (answer))> then\n        ask [⚠️ Your name is too long! Please try again. \(Max. length is 35 letters\) \(only use letters A-Z, a-z and 0-9\)] and wait\n    else\n        ask [⚠️ Your name can't be empty! Please try again. \(only use letters A-Z, a-z and 0-9\)] and wait\n    end\nend\nset [@@level name v] to (answer)\nbroadcast (edit-name-comment v)\n\nbroadcast (_spotlight to playing v)\n\nwhen I receive [ui v]\nif <(mode) = [playing]> then\n    if <mouse down?> then\n        set [mouse_down v] to [1]\n    end\n    switch costume to (playing v)\n    clear graphic effects\n    set size to (0) %\n    go to x: (0) y: (/bottom-bar)\n    set size to (100) %\n    stamp\n    switch costume to (level page v)\n    clear graphic effects\n    set size to (0) %\n    go to x: (0) y: (/bottom-bar)\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (75)\n        end\n        if <not <mouse down?>> then\n            if <(mouse_down) = [1]> then\n                broadcast (-player to spotlight v)\n            end\n        end\n    end\n    stamp\n    SFE | Set Text Color: RGBA [60] [60] [60] []\n    SFE | Print Line: Pos [-175] ((/bottom-bar) - (170)) Size [13.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (length of [collected_coins v])\n    if <(@@LEVEL liked?) = [True]> then\n        set size to (100) %\n        go to x: (-80) y: (/bottom-bar)\n        change y by (-167)\n        set size to (100) %\n        clear graphic effects\n        switch costume to (love2 v)\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (-10)\n            if <mouse down?> then\n                set [brightness v] effect to (-20)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    broadcast (@like remove v)\n                end\n            end\n        end\n    else\n        set size to (100) %\n        go to x: (-80) y: (/bottom-bar)\n        change y by (-167)\n        set size to (100) %\n        clear graphic effects\n        switch costume to (love0 v)\n        if <touching (mouse-pointer v)?> then\n            switch costume to (love1 v)\n            if <mouse down?> then\n                set [brightness v] effect to (10)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    broadcast (@like add v)\n                end\n            end\n        end\n    end\n    stamp\n    if <(@@LEVEL disliked?) = [True]> then\n        set size to (1000) %\n        go to x: (-165) y: (/bottom-bar)\n        change y by (-167)\n        clear graphic effects\n        switch costume to (love5 v)\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (-10)\n            if <mouse down?> then\n                set [brightness v] effect to (-20)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    broadcast (@dislike remove v)\n                end\n            end\n        end\n    else\n        set size to (1000) %\n        go to x: (-165) y: (/bottom-bar)\n        change y by (-167)\n        set size to (100) %\n        clear graphic effects\n        switch costume to (love4 v)\n        if <touching (mouse-pointer v)?> then\n            switch costume to (love3 v)\n            if <mouse down?> then\n                set [brightness v] effect to (10)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    broadcast (@dislike add v)\n                end\n            end\n        end\n    end\n    stamp\n    SFE | Switch to Font [work sans semibold]\n    SFE | Set Text Color: RGBA [60] [60] [60] []\n    SFE | Print Line: Pos [-17] ((-169) + (/bottom-bar)) Size [12] Angle [] Bounds [] [] Space [] Align [r] [] Text (@@LEVEL likes)\n    SFE | Switch to Font [work sans]\n    if <not <mouse down?>> then\n        set [mouse_down v] to [0]\n    end\nend\n\nchange y by (-167)\n\ndefine Stamp messages\nset [iter v] to [0]\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nif <((length of [@decoded_response v]) / (3)) < [1]> then\n    clear graphic effects\n    set [ghost v] effect to (8)\n    set size to (100) %\n    go to x: (-71) y: (0)\n    if <(@@tab) = [read]> then\n        switch costume to (nomsg v)\n    else\n        switch costume to (nounread v)\n        stamp\n        switch costume to (nounread2 v)\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    set [@@messages offset v] to [1]\n                    set [@@tab v] to [read]\n                    broadcast (loading v)\n                    broadcast (@old-messages v)\n                end\n            end\n        end\n    end\n    stamp\nelse\n    clear graphic effects\n    set [ghost v] effect to (0)\n    if <(@@tab) = [unread]> then\n        switch costume to (newmsg v)\n    else\n        switch costume to (oldmsg v)\n    end\n    set size to (95) %\n    go to x: (-213) y: (93)\n    stamp\n    if <(@@tab) = [unread]> then\n        SFE | Switch to Font [work sans semibold]\n        SFE | Set Text Color: RGBA [250] [250] [250] [100]\n        SFE | Print Line: Pos [-210] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (@messages)\n    else\n        SFE | Switch to Font [work sans semibold]\n        SFE | Set Text Color: RGBA [0] [0] [0] [100]\n        SFE | Print Line: Pos [-90] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [ - Page ] ([ceiling v] of ((@@MESSAGES offset) / (4)) ))\n    end\n    repeat ((length of [@decoded_response v]) / (3))\n        change [iter v] by (1)\n        switch costume to (message-row v)\n        clear graphic effects\n        if <(@@tab) = [unread]> then\n            set [ghost v] effect to (0)\n        else\n            set [ghost v] effect to (70)\n        end\n        set size to (95) %\n        go to x: (-70) y: ((96) + ((iter) * (-58)))\n        stamp\n        if <(@@tab) = [unread]> then\n            set [ghost v] effect to (0)\n        else\n            set [ghost v] effect to (30)\n        end\n        if <(item (((iter) * (3)) - (2)) of [@decoded_response v]) = [n]> then\n            switch costume to (welcome icon v)\n        else\n            if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [loved your level]?> then\n                switch costume to (love icon v)\n            else\n                if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [rited your level]?> then\n                    switch costume to (favo icon v)\n                else\n                    if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [is now public]?> then\n                        switch costume to (approved icon v)\n                    else\n                        if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [was featured]?> then\n                            switch costume to (featured icon v)\n                        else\n                            if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [is now following]?> then\n                                switch costume to (follow icon v)\n                            else\n                                if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [shared the level]?> then\n                                    switch costume to (notification icon v)\n                                else\n                                    switch costume to (remix icon v)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        clear graphic effects\n        set size to (65) %\n        change x by (-53)\n        stamp\n        if <(item (((iter) * (3)) - (2)) of [@decoded_response v]) = [n]> then\n            switch costume to (createlevel v)\n        else\n            if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [remixed]?> then\n                switch costume to (gotoremix v)\n            else\n                if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [is now following]?> then\n                    switch costume to (gotoprofile v)\n                else\n                    switch costume to (gotolevel v)\n                end\n            end\n        end\n        clear graphic effects\n        set x to (-82)\n        set size to (100) %\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (50)\n            if <mouse down?> then\n                set [ghost v] effect to (75)\n            end\n            if <not <mouse down?>> then\n                if <(mouse_down) = [1]> then\n                    if <(item (((iter) * (3)) - (2)) of [@decoded_response v]) = [n]> then\n                        set [mode v] to [newlevel]\n                    else\n                        if < (item (((iter) * (3)) - (1)) of [@decoded_response v]) contains [is now following]?> then\n                            set [mode v] to [profile]\n                            set [@profile-on v] to (item (((iter) * (3)) - (2)) of [@decoded_response v])\n                            broadcast (@get-user-info v)\n                            broadcast (loading v)\n                        else\n                            set [@@level id v] to (item (((iter) * (3)) - (2)) of [@decoded_response v])\n                            broadcast (\[UI\] fetch level v)\n                        end\n                    end\n                end\n            end\n        end\n        stamp\n        SFE | Switch to Font [work sans semibold]\n        if <(item (((iter) * (3)) - (2)) of [@decoded_response v]) = [n]> then\n            SFE | Set Text Color: RGBA [60] [60] [60] []\n            SFE | Print WW: Pos [-171] ((y position) + (9)) Size [9] Bounds [-171] [10] [] [] Space [] [0.7] Align [] [] Text [Welcome to Blocky! Have fun!]\n        else\n            SFE | Set Text Color: RGBA [50] [50] [40] []\n            SFE | Print WW: Pos [-171] ((y position) + (9)) Size [9] Bounds [-171] [10] [] [] Space [] [0.7] Align [] [] Text (item (((iter) * (3)) - (1)) of [@decoded_response v])\n        end\n        SFE | Set Text Color: RGBA [100] [100] [100] []\n        SFE | Print WW: Pos [-171] ((y position) + (-15)) Size [8] Bounds [-171] [10] [] [] Space [] [0.7] Align [] [] Text (item (((iter) * (3)) - (0)) of [@decoded_response v])\n        SFE | Switch to Font [work sans]\n    end\n    if <not <mouse down?>> then\n        set [mouse_down v] to [0]\n    end\nend\n\nswitch costume to (sfe v)\nset pen (transparency v) to (100)\ngo to x: (SFE | X) y: ((SFE | Y) + ((SFE | Size) * (SFE | Underline Height)))\npen down\nset pen color to (SFE | Underline Color)\nchange x by (item ((zzsfe_0) + (1)) of [zzsfe_ww1 v])\npen up\n\ndefine Mystuff\nset [iter v] to [0]\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nif <([🌤️response_output v] of [cloud requests v]) = [-2]> then\n    clear graphic effects\n    set [ghost v] effect to (8)\n    set size to (100) %\n    go to x: (-82) y: (-30)\n    switch costume to (nolvl v)\n    stamp\nelse\n    if <(@@tab) = [shared]> then\n        SFE | Switch to Font [work sans semibold]\n        SFE | Set Text Color: RGBA [0] [0] [0] [100]\n        SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [My levels > Shared ] (join [\(] (join (item (length of [@decoded_response v]) of [@decoded_response v]) (join [\) - Page ] (@@page)))))\n    else\n        if <(@@tab) = [all]> then\n            SFE | Switch to Font [work sans semibold]\n            SFE | Set Text Color: RGBA [0] [0] [0] [100]\n            SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [My levels > All ] (join [\(] (join (item (length of [@decoded_response v]) of [@decoded_response v]) (join [\) - Page ] (@@page)))))\n        else\n            SFE | Switch to Font [work sans semibold]\n            SFE | Set Text Color: RGBA [] [0] [0] [100]\n            SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [My levels > Unshared ] (join [\(] (join (item (length of [@decoded_response v]) of [@decoded_response v]) (join [\) - Page ] (@@page)))))\n        end\n    end\n    set [i v] to (((@@page) * (4)) - (3))\n    set [o v] to [0]\n    repeat (4)\n        change [o v] by (1)\n        if <not <(i) > ((length of [@decoded_response v]) / (6))>> then\n            go to x: (-10) y: (0)\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (item (((i) * (6)) - (3)) of [@decoded_response v])\n            set size to (70) %\n            go to x: (-175) y: ((117) + ((o) * (-60)))\n            stamp\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (join [heart] (item (((i) * (6)) - (0)) of [@decoded_response v]))\n            set size to (70) %\n            go to x: (-175) y: ((117) + ((o) * (-60)))\n            stamp\n            SFE | Switch to Font [work sans]\n            SFE | Print Line: Pos [-190] ((82) + ((o) * (-60))) Size [8.5] Angle [] Bounds [] [] Space [] Align [l] [] Text (join [# ] (item (((i) * (6)) - (5)) of [@decoded_response v]))\n            SFE | Switch to Font [work sans semibold]\n            SFE | Set Text Color: RGBA [] [0] [0] [100]\n            SFE | Print Line: Pos [-190] ((105) + ((o) * (-60))) Size [10.4] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (((i) * (6)) - (4)) of [@decoded_response v])\n            SFE | Switch to Font [work sans semibold]\n            SFE | Print Line: Pos [-12.8] ((107.4) + ((o) * (-60))) Size [8.2] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (((i) * (6)) - (2)) of [@decoded_response v])\n            clear graphic effects\n            set [ghost v] effect to (0)\n            if <(item (((i) * (6)) - (1)) of [@decoded_response v]) = [True]> then\n                switch costume to (prev-unshare v)\n            else\n                switch costume to (prev-share v)\n            end\n            set size to (70) %\n            go to x: (-175) y: ((116) + ((o) * (-60)))\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (75)\n                end\n                if <not <mouse down?>> then\n                    if <(mouse_down) = [1]> then\n                        set [mode v] to [.....]\n                        set [___level_to_share v] to (item (((i) * (6)) - (5)) of [@decoded_response v])\n                        set [@@level id v] to (item (((i) * (6)) - (5)) of [@decoded_response v])\n                        if <(item (((i) * (6)) - (1)) of [@decoded_response v]) = [True]> then\n                            broadcast (unshare-popup v)\n                        else\n                            broadcast (share-popup v)\n                        end\n                    end\n                end\n            end\n            stamp\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (prev-delete v)\n            set size to (70) %\n            go to x: (-175) y: ((116) + ((o) * (-60)))\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (75)\n                end\n                if <not <mouse down?>> then\n                    if <(mouse_down) = [1]> then\n                        set [mode v] to [...]\n                        set [___level_to_delete v] to (item (((i) * (6)) - (5)) of [@decoded_response v])\n                        broadcast (delete-mystuff-popup v)\n                    end\n                end\n            end\n            stamp\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (prev-edit v)\n            set size to (70) %\n            go to x: (-175) y: ((116) + ((o) * (-60)))\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (75)\n                end\n                if <not <mouse down?>> then\n                    if <(mouse_down) = [1]> then\n                        set [mode v] to [spotlight]\n                        set [@@level id v] to (item (((i) * (6)) - (5)) of [@decoded_response v])\n                        broadcast (@get-level v)\n                    end\n                end\n            end\n            stamp\n        end\n        change [i v] by (1)\n    end\nend\nif <not <mouse down?>> then\n    set [mouse_down v] to [0]\nend\n\nwhen I receive [more-levels v]\nset [@@page v] to [1]\nset [@@tab v] to [more]\nset [mode v] to [more]\nbroadcast (@get-public-levels-bundle v)\nbroadcast (loading v)\n\nwhen I receive [more-remixes v]\nset [@@page v] to [1]\nset [@@tab v] to [remixes]\nset [mode v] to [more]\nbroadcast (@get-public-levels-bundle v)\nbroadcast (loading v)\n\nset [ghost v] effect to (60)\n\ndefine Profile\nset size to (100) %\nclear graphic effects\nswitch costume to (profile-bg v)\ngo to x: (0) y: (-10)\nstamp\nset [color v] effect to ((join (letter (9) of (item (1) of [@decoded_response v])) (letter (10) of (item (1) of [@decoded_response v]))) * (6))\nswitch costume to (profile-icon v)\ngo to x: (0) y: (-10)\nstamp\nSFE | Switch to Font [work sans semibold]\nSFE | Print Line: Pos [-120] [65] Size [21] Angle [] Bounds [] [] Space [] Align [] [] Text (@profile-on)\nSFE | Switch to Font [work sans]\nSFE | Print WW: Pos [-205] [-15] Size [9] Bounds [-205] [0] [] [] Space [] [] Align [] [] Text (item (6) of [@decoded_response v])\nSFE | Print WW: Pos [-205] [-103] Size [9] Bounds [-205] [0] [] [] Space [] [] Align [] [] Text (item (7) of [@decoded_response v])\nSFE | Print WW: Pos [-145] [20] Size [9] Bounds [200] [100] [] [] Space [] [] Align [] [] Text (join [Joined ] (item (1) of [@decoded_response v]))\nSFE | Print WW: Pos [75] [-85] Size [11] Bounds [] [] [] [] Space [] [] Align [] [] Text (join (item (5) of [@decoded_response v]) [ levels])\nSFE | Print WW: Pos [75] [-60] Size [11] Bounds [] [] [] [] Space [] [] Align [] [] Text (join (item (4) of [@decoded_response v]) [ following])\nSFE | Print WW: Pos [75] [-35] Size [11] Bounds [] [] [] [] Space [] [] Align [] [] Text (join (item (3) of [@decoded_response v]) [ followers])\nSFE | Set Text Color: RGBA [255] [255] [255] []\nSFE | Print Line: Pos [-195] [45] Size [27] Angle [] Bounds [] [] Space [] Align [] [] Text (letter (1) of (@profile-on))\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nclear graphic effects\ngo to x: (0) y: (-10)\nset size to (100) %\nswitch costume to (profile-shared v)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(@profile-on) = (@username)> then\n                set [@@tab v] to [shared]\n                set [mode v] to [mystuff]\n                broadcast (mystuff v)\n            else\n                set [@@tab v] to [none]\n                set [mode v] to [userlevels]\n                broadcast (@get-user-levels-bundle v)\n            end\n        end\n    end\nend\nstamp\nclear graphic effects\ngo to x: (0) y: (-10)\nset size to (100) %\nswitch costume to (profile-following-more v)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(mouse_down) = [1]> then\n                set [@@tab v] to [following]\n                set [mode v] to [userbundle]\n                broadcast (@get-user-attr v)\n            end\n        end\n    end\nend\nstamp\nclear graphic effects\ngo to x: (0) y: (-10)\nset size to (100) %\nswitch costume to (profile-followers-more v)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(mouse_down) = [1]> then\n                set [@@tab v] to [followers]\n                set [mode v] to [userbundle]\n                broadcast (@get-user-attr v)\n            end\n        end\n    end\nend\nstamp\nclear graphic effects\ngo to x: (0) y: (-10)\nset size to (100) %\nswitch costume to (profile-faved v)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(mouse_down) = [1]> then\n                set [@@tab v] to [none]\n                set [mode v] to [stareduserlevels]\n                broadcast (@get-user-favorite-bundle v)\n            end\n        end\n    end\nend\nstamp\nclear graphic effects\ngo to x: (3) y: (-11)\nset size to (100) %\nif <(@@PROFILE notifs-on) = [True]> then\n    switch costume to (profile-notifs-enabled v)\nelse\n    switch costume to (profile-notifs-enabled2 v)\nend\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(@@PROFILE notifs-on) = [True]> then\n                broadcast (@notifs disable v)\n            else\n                broadcast (@notifs enable v)\n            end\n        end\n    end\nend\nstamp\nclear graphic effects\ngo to x: (3) y: (-11)\nset size to (100) %\nif <(@@PROFILE following) = [True]> then\n    switch costume to (unfollow v)\nelse\n    switch costume to (follow v)\nend\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            if <(@@PROFILE following) = [True]> then\n                broadcast (@follow remove v)\n            else\n                broadcast (@follow add v)\n            end\n        end\n    end\nend\nstamp\nif <not <mouse down?>> then\n    set [mouse_down v] to [0]\nend\n\ndefine User Search result\nclear graphic effects\nswitch costume to (search-profile v)\nset size to (100) %\ngo to x: (0) y: (0)\nstamp\nSFE | Print Line: Pos ((130) - ((length of (answer)) / (0.28))) [37] Size [12] Angle [] Bounds [] [] Space [] Align [] [] Text (answer)\ngo to x: (0) y: (0)\nclear graphic effects\nset size to (100) %\nswitch costume to (search-profile-button v)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n        set [mode v] to [profile]\n        set [@profile-on v] to (answer)\n        broadcast (@get-user-info v)\n    end\nend\nstamp\nSFE | Switch to Font [work sans]\nSFE | Print Line: Pos [90] [7] Size [10] Angle [] Bounds [] [] Space [] Align [] [] Text (join (item ((length of [@decoded_response v]) - (1)) of [@decoded_response v]) [ followers])\nSFE | Print Line: Pos [90] [-17] Size [10] Angle [] Bounds [] [] Space [] Align [] [] Text (join (item (length of [@decoded_response v]) of [@decoded_response v]) [ levels])\n\ndefine User bundle display\nif <mouse down?> then\n    set [mouse_down v] to [1]\nend\nSFE | Switch to Font [work sans semibold]\nSFE | Set Text Color: RGBA [0] [0] [0] [100]\nif <(@@tab) = [following]> then\n    SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join (join (@profile-on) [ > Following ]) (join [\(] (join (length of [@decoded_response v]) (join [\) - Page ] (@@page)))))\nelse\n    SFE | Print Line: Pos [-220] [87] Size [11] Angle [] Bounds [] [] Space [] Align [l] [] Text (join (join (@profile-on) [ > Followers ]) (join [\(] (join (length of [@decoded_response v]) (join [\) - Page ] (@@page)))))\nend\nif <([🌤️response_output v] of [cloud requests v]) = [-1]> then\n    clear graphic effects\n    set [ghost v] effect to (8)\n    set size to (100) %\n    go to x: (-82) y: (-30)\n    switch costume to (nouser v)\n    stamp\nelse\n    set [i v] to (((@@page) * (15)) - (14))\n    set [o v] to [0]\n    repeat (15)\n        change [o v] by (1)\n        if <not <(i) > (length of [@decoded_response v])>> then\n            go to x: (-10) y: (0)\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (user v)\n            set size to (70) %\n            go to x: ((-180) + ((((o) - (1)) mod (3)) * (160))) y: ((110) + (([ceiling v] of ((o) / (3)) ) * (-45)))\n            stamp\n            SFE | Switch to Font [work sans semibold]\n            SFE | Set Text Color: RGBA [] [0] [0] [100]\n            SFE | Print Line: Pos ((-220) + ((((o) - (1)) mod (3)) * (160))) ((97) + (([ceiling v] of ((o) / (3)) ) * (-45))) Size [10.4] Angle [] Bounds [] [] Space [] Align [l] [] Text (item (i) of [@decoded_response v])\n            clear graphic effects\n            set [ghost v] effect to (0)\n            switch costume to (user-prev-button v)\n            set size to (90) %\n            go to x: ((-180) + ((((o) - (1)) mod (3)) * (160))) y: ((110) + (([ceiling v] of ((o) / (3)) ) * (-45)))\n            change x by (-8)\n            change y by (12)\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (-15)\n                if <mouse down?> then\n                    set [ghost v] effect to (-30)\n                end\n                if <not <mouse down?>> then\n                    if <(mouse_down) = [1]> then\n                        set [mode v] to [profile]\n                        set [@profile-on v] to (item (i) of [@decoded_response v])\n                        broadcast (@get-user-info v)\n                    end\n                end\n            end\n            stamp\n        end\n        change [i v] by (1)\n    end\nend\nclear graphic effects\nset [ghost v] effect to (0)\nswitch costume to (back v)\nset size to (60) %\ngo to x: (-182) y: (-162)\nif <touching (mouse-pointer v)?> then\n    set [ghost v] effect to (50)\n    if <mouse down?> then\n        set [ghost v] effect to (75)\n    end\n    if <not <mouse down?>> then\n        if <(mouse_down) = [1]> then\n            set [mode v] to [profile]\n            broadcast (@get-user-info v)\n        end\n    end\nend\nstamp\nif <not <mouse down?>> then\n    set [mouse_down v] to [0]\nend\n\nwhen I receive [shutdownnotice-close v]\nwait (0.2) seconds\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        erase all\n        pen up\n    end\n    if <<(mode) = [userbundle]> and <(⛈️ STATUS) = [2]>> then\n        User bundle display\n    end\n    if <<(mode) = [profile]> and <(⛈️ STATUS) = [2]>> then\n        Profile\n    end\n    if << (mode) contains [userlevels]?> and <(⛈️ STATUS) = [2]>> then\n        CommunityLevels\n    end\n    if <<(mode) = [messages]> and <(⛈️ STATUS) = [2]>> then\n        Stamp messages\n    end\n    if <<(mode) = [search]> and <(⛈️ STATUS) = [2]>> then\n        CommunityLevels\n        if <not <<(item (length of [@decoded_response v]) of [@decoded_response v]) = [^]> or <(item (length of [@decoded_response v]) of [@decoded_response v]) = [True]>>> then\n            User Search result\n        end\n    end\n    if <<(mode) = [more]> and <(⛈️ STATUS) = [2]>> then\n        CommunityLevels\n    end\n    if <<(mode) = [community]> and <(⛈️ STATUS) = [2]>> then\n        CommunityLevels\n    end\n    if <<(mode) = [mystuff]> and <(⛈️ STATUS) = [2]>> then\n        Mystuff\n    end\n    if <(mode) = [spotlight]> then\n        if <(--interaction opened) = [0]> then\n            if <not <(@@LEVEL shared) = [?]>> then\n                if <(⛈️ STATUS) = [2]> then\n                    Spotlight\n                end\n            end\n        end\n    end\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        if <not <(mode) = [...]>> then\n            SFE | Switch to Font [work sans]\n            SFE | Set Text Color: RGBA [40] [40] [40] []\n            SFE | Print Line: Pos [230] [146] Size [11] Angle [] Bounds [] [] Space [] Align [r] [] Text (@username)\n        end\n    end\nend\n\n@Blocks\n\nif <(item (i) of [type v]) = [11]> then\n    switch costume to (join [_1_] (letter (2) of (item (i) of [cs v])))\nend\n\ndefine sb\nset [upbouncevel v] to (((upBounceVel) * (0.6)) + ((((0) + ()) - (eff1val)) * (0.15)))\nchange [eff1val v] by (upBounceVel)\n\nwhen flag clicked\nhide\n\ndefine Stamp (theme)\nset size to (102) %\nsay []\nhide\nset [i v] to [0]\nset [zähler v] to [0]\nset [z2 v] to [0]\nset [@last_coins v] to (@coins)\nset [@coins v] to [0]\nrepeat (length of [type v])\n    clear graphic effects\n    change [i v] by (1)\n    if <(item (i) of [type v]) = [6]> then\n        change [@coins v] by (1)\n    end\n    if <[collected_keys v] contains (i)?> then\n        set [@key collected? v] to [1]\n    else\n        if <not <(item (i) of [type v]) = [17]>> then\n            set [@key collected? v] to [0]\n        end\n    end\n    add [0] to [collision_ v]\n    if <<([abs v] of ((item (i) of [x v]) - (SCROLL X)) ) < [255]> and <([abs v] of ((item (i) of [y v]) - (SCROLL Y)) ) < [160]>> then\n        if <([abs v] of (([x v] of [hitbox v]) - (item (i) of [x v])) ) < [50]> then\n            if <([abs v] of (([y v] of [hitbox v]) - (item (i) of [y v])) ) < [50]> then\n                if <(@KEY collected?) = [0]> then\n                    add (i) to [iterate_items v]\n                end\n            end\n        end\n        if <not <<(item (i) of [type v]) = [1]> or <<(item (i) of [type v]) = [11]> or <(item (i) of [type v]) = [21]>>>> then\n            if <<([abs v] of ((item (i) of [x v]) - (SCROLL X)) ) < [255]> and <([abs v] of ((item (i) of [y v]) - (SCROLL Y)) ) < [160]>> then\n                change [zähler v] by (1)\n                change [z2 v] by (0)\n                set size to (1000) %\n                go to x: ((item (i) of [x v]) - (SCROLL X)) y: ((item (i) of [y v]) - (SCROLL Y))\n                switch costume to (join [_] (round (item (i) of [type v])))\n                Cc (theme)\n                if <(letter (1) of (item (i) of [cs v])) = [0]> then\n                    if <(item (i) of [type v]) = [3]> then\n                        switch costume to (spring_top v)\n                        set [fisheye v] effect to ((upBounceVel) * (10))\n                    else\n                        if <(item (i) of [type v]) = [2]> then\n                            switch costume to (join [lava ani ] ((round ((@@tick) / (0.1))) mod (4)))\n                        else\n                            if <(item (i) of [type v]) = [4]> then\n                                switch costume to (join [water ani ] ((round ((@@tick) / (0.1))) mod (4)))\n                            else\n                                if <(item (i) of [type v]) = [13]> then\n                                    switch costume to (join [posion ani ] ((round ((@@tick) / (0.1))) mod (3)))\n                                end\n                            end\n                        end\n                    end\n                end\n                if <<(item (i) of [x v]) = [0]> and <(item (i) of [y v]) = [-100]>> then\n                    switch costume to (begin v)\n                    set [brightness v] effect to (10)\n                end\n                point in direction (90)\n                if <(item (i) of [type v]) = [12]> then\n                    if <[collected_keys v] contains (i)?> then\n                        set [ghost v] effect to (80)\n                    else\n                        change y by (([sin v] of (((@@tick) + ((item (i) of [x v]) * (3))) * (100)) ) * (2.5))\n                        set rotation style [all around v]\n                        point in direction ((([cos v] of (((@@tick) + ((item (i) of [x v]) * (3))) * (100)) ) * (2.5)) + (90))\n                        change y by (5)\n                    end\n                end\n                if <(item (i) of [type v]) = [6]> then\n                    if <[collected_coins v] contains (i)?> then\n                        set [ghost v] effect to (80)\n                    else\n                        change y by (([sin v] of (((@@tick) + ((item (i) of [x v]) * (3))) * (100)) ) * (2.5))\n                        change y by (5)\n                    end\n                end\n                if <(item (i) of [type v]) = [7]> then\n                    if <not <(letter (3) of (item (i) of [cs v])) = [1]>> then\n                        switch costume to (down_spring_top v)\n                    end\n                end\n                if <(item (i) of [type v]) = [3]> then\n                if <(item (i) of [type v]) = [5]> then\n                    set rotation style [all around v]\n                    point in direction (direction of the saw)\n                end\n                if <(item (i) of [type v]) = [10]> then\n                    if <(players needs all coins to win) = [1]> then\n                        if <(mode) = [playing]> then\n                            if <not <(length of [collected_coins v]) = (@last_coins)>> then\n                                set [ghost v] effect to (70)\n                            end\n                        end\n                    end\n                end\n                if <<(item (i) of [type v]) = [15]> or <(item (i) of [type v]) = [16]>> then\n                    switch costume to (_15 v)\n                    set size to ((90) + (([sin v] of (((@@tick) + ((item (i) of [sign v]) * (2))) * (300)) ) * (5))) %\n                    set [color v] effect to ((item (i) of [sign v]) * (2))\n                end\n                if <<(item (i) of [type v]) = [12]> or <(item (i) of [type v]) = [17]>> then\n                    set [color v] effect to ((item (i) of [sign v]) * (2))\n                end\n                if <(item (i) of [type v]) = [17]> then\n                    if <(@KEY collected?) = [1]> then\n                        set [ghost v] effect to (80)\n                    end\n                end\n                if <(item (i) of [type v]) = [9]> then\n                    if <(checkpoint) = (i)> then\n                        change y by ((+*checkpoint_bounce) / (10))\n                        set [brightness v] effect to (30)\n                    end\n                end\n                set size to (102) %\n                stamp\n            end\n        end\n        point in direction (90)\n        change [i v] by (0)\n        if <<(item (i) of [type v]) = [1]> or <<(item (i) of [type v]) = [11]> or <(item (i) of [type v]) = [21]>>> then\n            set [@key collected? v] to [0]\n            if <<([abs v] of ((item (i) of [x v]) - (SCROLL X)) ) < [255]> and <([abs v] of ((item (i) of [y v]) - (SCROLL Y)) ) < [160]>> then\n                change [zähler v] by (1)\n                clear graphic effects\n                set size to (100000) %\n                switch costume to (blank_ground_block v)\n                go to x: ((item (i) of [x v]) - (SCROLL X)) y: ((item (i) of [y v]) - (SCROLL Y))\n                set size to (102) %\n                Cc (theme)\n                point in direction (90)\n                if <<(item (i) of [x v]) = [0]> and <(item (i) of [y v]) = [-100]>> then\n                    switch costume to (begin v)\n                    set [brightness v] effect to (10)\n                end\n                stamp\n                if <(letter (1) of (item (i) of [cs v])) = [0]> then\n                    if <not <<(item (i) of [x v]) = [0]> and <(item (i) of [y v]) = [-100]>>> then\n                        if <(theme) = [g]> then\n                            switch costume to (join [grassland_overlay_] (item (i) of [type v]))\n                        end\n                        if <(theme) = [d]> then\n                            switch costume to (join [desert_overlay_] (item (i) of [type v]))\n                        end\n                        if <(theme) = [s]> then\n                            switch costume to (join [winter_overlay_] (item (i) of [type v]))\n                        end\n                        if <(theme) = [r]> then\n                            switch costume to (join [rf_overlay_] (item (i) of [type v]))\n                        end\n                        set size to (102) %\n                        stamp\n                    end\n                end\n            end\n        end\n    end\nend\nset size to (100000000) %\nswitch costume to (begin v)\ngo to x: ((item (1) of [x v]) - (SCROLL X)) y: ((item (1) of [y v]) - (SCROLL Y))\nset size to (102) %\nclear graphic effects\nstamp\njoystick\nif <touching (mouse-pointer v)?> then\n    stop [this script v]\nend\nset size to (100000000) %\nswitch costume to (begin v)\nset size to (102) %\nif <(joystick active?) = [0]> then\n    if <(mode) = [editor]> then\n        if <(paused2) = [0]> then\n            if <(blockselected) < [1000]> then\n                go to (mouse-pointer v)\n                show\n                if <not <touching (shrink v)?>> then\n                    if <((mouse y) mod (25)) > ((12.5) - ((SCROLL Y) mod (25)))> then\n                        set y to (((([floor v] of (((mouse y) + (25)) / (25)) ) * (25)) + (0)) - ((SCROLL Y) mod (25)))\n                    else\n                        set y to (((([floor v] of ((mouse y) / (25)) ) * (25)) + (0)) - ((SCROLL Y) mod (25)))\n                    end\n                    if <((mouse x) mod (25)) > ((12.5) - ((SCROLL X) mod (25)))> then\n                        set x to (((([floor v] of (((mouse x) + (25)) / (25)) ) * (25)) + (0)) - ((SCROLL X) mod (25)))\n                    else\n                        set x to (((([floor v] of ((mouse x) / (25)) ) * (25)) + (0)) - ((SCROLL X) mod (25)))\n                    end\n                    if <not <<(blockselected) = [10]> and <[type v] contains [10]?>>> then\n                        set [a v] to [1]\n                        repeat until <<<(item (a) of [x v]) = ((SCROLL X) + (x position))> and <(item (a) of [y v]) = ((y position) + (SCROLL Y))>> or <(a) > (length of [type v])>>\n                            change [a v] by (1)\n                        end\n                        show\n                        clear graphic effects\n                        set [ghost v] effect to (70)\n                        switch costume to (join [_] (blockselected))\n                    else\n                        set [blockselected v] to [1]\n                    end\n                    if <not <<(item (a) of [x v]) = ((SCROLL X) + (x position))> and <(item (a) of [y v]) = ((y position) + (SCROLL Y))>>> then\n                        point in direction (90)\n                        if <(blockselected) = [5]> then\n                            point in direction (direction of the saw)\n                        end\n                        if <mouse down?> then\n                            if <not <touching (shrink v)?>> then\n                                if <(blockselected) = [8]> then\n                                    delete all of [zw.data v]\n                                    add ((SCROLL X) + (x position)) to [zw.data v]\n                                    add ((y position) + (SCROLL Y)) to [zw.data v]\n                                    set [ghost v] effect to (0)\n                                    stamp\n                                    hide\n                                    ask [What direction do you want the sign to point at? type \("left"/"right"/"up"/"down"\)] and wait\n                                    set [say v] to (letter (1) of (answer))\n                                    if <not < [lrud] contains (say)?>> then\n                                        set [say v] to [0]\n                                    end\n                                    add platfom (item (1) of [zw.data v]) (item (2) of [zw.data v]) [8]\n                                    show\n                                else\n                                    if <(blockselected) = [1]> then\n                                        if <(pick random (1) to (7)) = [1]> then\n                                            add platfom ((SCROLL X) + (x position)) ((y position) + (SCROLL Y)) ((blockselected) + (20))\n                                        else\n                                            if <(pick random (1) to (2)) = [1]> then\n                                                add platfom ((SCROLL X) + (x position)) ((y position) + (SCROLL Y)) ((blockselected) + (10))\n                                            else\n                                                add platfom ((SCROLL X) + (x position)) ((y position) + (SCROLL Y)) (blockselected)\n                                            end\n                                        end\n                                    else\n                                        add platfom ((SCROLL X) + (x position)) ((y position) + (SCROLL Y)) (blockselected)\n                                    end\n                                end\n                            end\n                        end\n                        if <not <touching (shrink v)?>> then\n                            stamp\n                        end\n                    else\n                        hide\n                    end\n                end\n            else\n                go to (mouse-pointer v)\n                show\n                if <not <touching (shrink v)?>> then\n                    switch costume to (rubber v)\n                    if <mouse down?> then\n                        if <not <touching (shrink v)?>> then\n                            set [ghost v] effect to (20)\n                            set [rtr v] to [0]\n                            repeat (length of [type v])\n                                change [rtr v] by (1)\n                                if <<[-10] < ((mouse x) - (((SCROLL X) * (-1)) + (item (rtr) of [x v])))> and <((mouse x) - (((SCROLL X) * (-1)) + (item (rtr) of [x v]))) < [10]>> then\n                                    if <<[-10] < ((mouse y) - (((SCROLL Y) * (-1)) + (item (rtr) of [y v])))> and <((mouse y) - (((SCROLL Y) * (-1)) + (item (rtr) of [y v]))) < [10]>> then\n                                        remove platform (item (rtr) of [x v]) (item (rtr) of [y v])\n                                    end\n                                end\n                            end\n                        end\n                    else\n                        set [ghost v] effect to (60)\n                    end\n                    show\n                    stamp\n                end\n            end\n        end\n    end\n    hide\n    if <(mode) = [editor]> then\n        if <[type v] contains [8]?> then\n            show\n            switch costume to (_8l2sign v)\n            go to (mouse-pointer v)\n            set [rtr v] to [0]\n            set [e?true v] to [0]\n            repeat (length of [type v])\n                change [rtr v] by (1)\n                if <(item (rtr) of [type v]) = [8]> then\n                    if <<[-10] < ((mouse x) - (((SCROLL X) * (-1)) + (item (rtr) of [x v])))> and <((mouse x) - (((SCROLL X) * (-1)) + (item (rtr) of [x v]))) < [10]>> then\n                        if <<[-10] < ((mouse y) - (((SCROLL Y) * (-1)) + (item (rtr) of [y v])))> and <((mouse y) - (((SCROLL Y) * (-1)) + (item (rtr) of [y v]))) < [10]>> then\n                            set [e?true v] to (rtr)\n                            set size to (80) %\n                            go to x: ((item (rtr) of [x v]) - (SCROLL X)) y: ((item (rtr) of [y v]) - (SCROLL Y))\n                            say [\[o to edit direction\]]\n                            change [ghost v] effect by (100)\n                            stop [this script v]\n                        end\n                    end\n                end\n            end\n        end\n        show\n        set [ghost v] effect to (100)\n    end\nend\nif <(item (i) of [type v]) = [3]> then\n    set [brightness v] effect to (0)\nend\n\nwhen I receive [update v]\nerase all\nif <<(@@LEVEL theme) = [r]> and <(mode) = [playing]>> then\n    go to (hitbox v)\n    set pen color to (#fefefe)\n    set pen size to ((60) + (([sin v] of ((timer) * (100)) ) * (5)))\n    set pen (transparency v) to (83)\n    pen down\n    pen up\nend\ndelete all of [iterate_items v]\ndelete all of [collision_ v]\nsb\nStamp (theme)\n\ndefine Cc (theme)\nif <not <(item (i) of [cs v]) = [0]>> then\n    if <(item (i) of [type v]) = [11]> then\n        switch costume to (join [_1_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [1]> then\n        switch costume to (join [_1_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [2]> then\n        switch costume to (join [_2_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [4]> then\n        switch costume to (join [_4_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [15]> then\n        switch costume to (join [_1_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [13]> then\n        switch costume to (join [_13_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [21]> then\n        switch costume to (join [_1_] (letter (2) of (item (i) of [cs v])))\n    end\n    if <(item (i) of [type v]) = [12]> then\n        switch costume to (2w v)\n    end\n    if <(item (i) of [type v]) = [8]> then\n        switch costume to (join [_8] (item (i) of [sign v]))\n    end\nend\nset [shrinked? v] to [0]\n\ndefine BlockPos Check Elem (element)\nreplace item (element) of [cs v] with [04]\nset [i v] to (element)\nset [@block_below v] to [0]\nset [e v] to [0]\nrepeat (length of [type v])\n    change [e v] by (1)\n    if <not <(item (e) of [type v]) = [6]>> then\n        if <(item (e) of [y v]) = ((item (i) of [y v]) + (25))> then\n            if <(item (e) of [x v]) = (item (i) of [x v])> then\n                replace item (i) of [cs v] with (join [1] (join (letter (2) of (item (i) of [cs v])) (letter (3) of (item (i) of [cs v]))))\n                replace item (e) of [cs v] with (join (letter (1) of (item (e) of [cs v])) (join [1] [1]))\n            end\n        end\n    end\n    if <not <(item (i) of [type v]) = [6]>> then\n        if <(item (e) of [y v]) = ((item (i) of [y v]) + (-25))> then\n            if <(item (e) of [x v]) = (item (i) of [x v])> then\n                set [@block_below v] to [1]\n                replace item (i) of [cs v] with (join (letter (1) of (item (i) of [cs v])) (join [1] [1]))\n                replace item (e) of [cs v] with (join [1] (join (letter (2) of (item (e) of [cs v])) (letter (3) of (item (e) of [cs v]))))\n            end\n        end\n        if <(item (e) of [y v]) = (item (i) of [y v])> then\n            if <(item (e) of [x v]) = ((item (i) of [x v]) + (25))> then\n                if <(letter (2) of (item (e) of [cs v])) = [4]> then\n                    replace item (e) of [cs v] with (join (letter (1) of (item (e) of [cs v])) (join [3] (letter (3) of (item (e) of [cs v]))))\n                else\n                    replace item (e) of [cs v] with (join (letter (1) of (item (e) of [cs v])) (join [1] (letter (3) of (item (e) of [cs v]))))\n                end\n                if <(letter (2) of (item (i) of [cs v])) = [4]> then\n                    replace item (i) of [cs v] with (join (letter (1) of (item (i) of [cs v])) (join [2] (letter (3) of (item (i) of [cs v]))))\n                else\n                    replace item (i) of [cs v] with (join (letter (1) of (item (i) of [cs v])) (join [1] (letter (3) of (item (i) of [cs v]))))\n                end\n            end\n            if <(item (e) of [x v]) = ((item (i) of [x v]) + (-25))> then\n                if <(letter (2) of (item (e) of [cs v])) = [4]> then\n                    replace item (e) of [cs v] with (join (letter (1) of (item (e) of [cs v])) (join [2] (letter (3) of (item (e) of [cs v]))))\n                else\n                    replace item (e) of [cs v] with (join (letter (1) of (item (e) of [cs v])) (join [1] (letter (3) of (item (e) of [cs v]))))\n                end\n                if <(letter (2) of (item (i) of [cs v])) = [4]> then\n                    replace item (i) of [cs v] with (join (letter (1) of (item (i) of [cs v])) (join [3] (letter (3) of (item (i) of [cs v]))))\n                else\n                    replace item (i) of [cs v] with (join (letter (1) of (item (i) of [cs v])) (join [1] (letter (3) of (item (i) of [cs v]))))\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [debug v]\nset [debugging v] to [True]\nset [debugging v] to [False]\n\ndefine remove platform (x) (y)\ndelete all of [poscheck: items to check v]\nset [o v] to [2]\nset [i v] to []\nrepeat until <(o) > (length of [type v])>\n    change [o v] by (1)\n    if <<(item (o) of [x v]) = (x)> and <(item (o) of [y v]) = (y)>> then\n        set [i v] to (o)\n    end\n    if <<([abs v] of ((item (o) of [x v]) - (x)) ) < [30]> and <([abs v] of ((item (o) of [y v]) - (y)) ) < [30]>> then\n        add (o) to [poscheck: items to check v]\n    end\n    if <<<(item (o) of [x v]) = ((x) + (25))> or <(item (o) of [x v]) = ((x) + (-25))>> and <(item (o) of [y v]) = (y)>> then\n        add (o) to [poscheck: items to check v]\n    end\nend\ndelete (i) of [x v]\ndelete (i) of [y v]\ndelete (i) of [sign v]\ndelete (i) of [type v]\ndelete (i) of [cs v]\nset [change v] to [1]\nset [aa v] to [0]\nrepeat (length of [poscheck: items to check v])\n    change [aa v] by (1)\n    BlockPos Check Elem (item (aa) of [poscheck: items to check v])\nend\n\nwhen I receive [hard-cscheck v]\nset [debugging v] to [True]\nBlockPos Check All\nset [debugging v] to [False]\n\ndefine BlockPos Check All\ndelete all of [cs v]\nadd [10] to [cs v]\nset [a v] to [0]\nrepeat (length of [type v])\n    change [a v] by (1)\n    add [10] to [cs v]\n    if <<is compiled?> or <(a) < [500]>> then\n        BlockPos Check Elem (a)\n    end\nend\n\nwhen I receive [cscheck v]\nset [debugging v] to [True]\nif <<is compiled?> or <(length of [type v]) < [200]>> then\n    BlockPos Check All\nend\nset [debugging v] to [False]\n\ndefine joystick\ngo to x: (200) y: (-105)\nset rotation style [all around v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (joystick v)\nset [ghost v] effect to (55)\nset size to (19) %\nshow\nstamp\nclear graphic effects\nset [joystick dir v] to []\nif <mouse down?> then\n    if <(joystick active?) = [1]> then\n        point towards (mouse-pointer v)\n        set [joystick dir v] to (round (direction))\n        if <(distance to [mouse-pointer v]) > [20]> then\n            move (20) steps\n        else\n            move (distance to [mouse-pointer v]) steps\n        end\n    else\n        if <touching (mouse-pointer v)?> then\n            set [joystick active? v] to [1]\n            point towards (mouse-pointer v)\n            set [joystick dir v] to (round (direction))\n            if <(distance to [mouse-pointer v]) > [20]> then\n                move (20) steps\n            else\n                move (distance to [mouse-pointer v]) steps\n            end\n        end\n    end\nelse\n    go to x: (200) y: (-105)\n    set [joystick active? v] to [0]\nend\npoint in direction (90)\nset size to (9.5) %\nset [ghost v] effect to (30)\nstamp\nhide\nclear graphic effects\nset rotation style [left-right v]\n\ndefine add platfom (xpos) (ypos) (id)\nif <not <(say) = []>> then\n    if <(length of [type v]) > [799]> then\n        broadcast (levellimit-popup v)\n    else\n        set [o v] to [1]\n        repeat until <<<(item (o) of [x v]) = (xpos)> and <(item (o) of [y v]) = (ypos)>> or <(o) > (length of [type v])>>\n            change [o v] by (1)\n        end\n        add (xpos) to [x v]\n        add (ypos) to [y v]\n        add (id) to [type v]\n        if <(@EDITOR portal lock) = [0]> then\n            if <(id) = [15]> then\n                set [say v] to (pick random (10) to (99))\n                set [@editor portal lock v] to (say)\n            end\n        else\n            if <(id) = [16]> then\n                set [say v] to (@EDITOR portal lock)\n                set [@editor portal lock v] to [0]\n            end\n        end\n        if <(@EDITOR key lock) = [0]> then\n            if <(id) = [12]> then\n                set [say v] to (pick random (10) to (99))\n                set [@editor key lock v] to (say)\n            end\n        else\n            if <(id) = [17]> then\n                set [say v] to (@EDITOR key lock)\n            end\n        end\n        add (say) to [sign v]\n        add [0] to [cs v]\n        if <is compiled?> then\n            BlockPos Check Elem (o)\n        else\n            BlockPos Check Elem (o)\n        end\n        set [change v] to [1]\n    end\nend\nset [say v] to [0]\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@Hitbox\n\ndefine Physics\ngo to [back v] layer\nif <(@PLAYING warping) = [0]> then\n    collision\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <<[165] > (joystick dir)> and <(joystick dir) > [15]>>>> then\n        change [sx v] by (speed)\n        if <[8] < (sx)> then\n            set [sx v] to [8]\n        end\n    else\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(joystick active?) = [1]> and <<[-15] > (joystick dir)> and <(joystick dir) > [-165]>>>> then\n            change [sx v] by ((speed) * (-1))\n            if <(sx) < [-8]> then\n                set [sx v] to [-8]\n            end\n        end\n    end\n    if <(sy) < [-9]> then\n        set [sy v] to [-9]\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>> then\n        if <not <[collision_ v] contains [4]?>> then\n            if <(in air) < [4]> then\n                set [sy v] to (jump height)\n            end\n        end\n    end\n    if <[collision_ v] contains [13]?> then\n        set [in_water v] to [0]\n        if <(in_potion) = [0]> then\n            set [in_potion v] to [1]\n            broadcast (potion v)\n        end\n        if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n            set [sy v] to [-3]\n        else\n            set [sy v] to [1]\n        end\n    else\n        if <[collision_ v] contains [4]?> then\n            set [in_potion v] to [0]\n            if <(in_water) = [0]> then\n                set [in_water v] to [1]\n                broadcast (water v)\n            end\n            if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>> then\n                set [sy v] to [3]\n            else\n                set [sy v] to [-1]\n            end\n        else\n            set [in_potion v] to [0]\n            change [sy v] by (-1)\n            set [in_water v] to [0]\n        end\n    end\n    set [sx v] to ((sx) * (0.7))\n    if <[collision_ v] contains [7]?> then\n        set [sy v] to [-14]\n    end\n    y (sy)\n    x (sx)\n    change [scroll x v] by (round (((x) - (SCROLL X)) / (10)))\n    change [scroll y v] by (round (((y) - (SCROLL Y)) / (3)))\n    set [scroll x v] to (round (SCROLL X))\n    if <(SCROLL Y) < [-100]> then\n        set [scroll y v] to [-100]\n    end\n    say []\n    if <<[collision_ v] contains [15]?> or <[collision_ v] contains [16]?>> then\n        if <[collision_ v] contains [15]?> then\n            if <(item ((item # of [15] in [collision_ v]) + (1)) of [type v]) = [16]> then\n                say [\[z\] to use portal]\n                if <key (z v) pressed?> then\n                    set [@portal target v] to ((item # of [15] in [collision_ v]) + (1))\n                    broadcast (@PORTAL warp v)\n                end\n            end\n        else\n            if <(item ((item # of [16] in [collision_ v]) + (-1)) of [type v]) = [15]> then\n                say [\[z\] to use portal]\n                if <key (z v) pressed?> then\n                    set [@portal target v] to ((item # of [16] in [collision_ v]) + (-1))\n                    broadcast (@PORTAL warp v)\n                end\n            end\n        end\n    end\nend\ngoto\nset [die v] to [0]\nif <<[collision_ v] contains [2]?> or <[collision_ v] contains [5]?>> then\n    set [die v] to [1]\nend\nif <[collision_ v] contains [3]?> then\n    set [sy v] to [14]\n    set [upbouncevel v] to [8]\nend\nif <[collision_ v] contains [12]?> then\n    if <not <[collected_keys v] contains (item # of [12] in [collision_ v])?>> then\n        add (item # of [12] in [collision_ v]) to [collected_keys v]\n        start sound [unlock v]\n    end\nend\nif <[collision_ v] contains [6]?> then\n    if <not <[collected_coins v] contains (item # of [6] in [collision_ v])?>> then\n        add (item # of [6] in [collision_ v]) to [collected_coins v]\n        if <<(@coins) = (length of [collected_coins v])> and <(players needs all coins to win) = [1]>> then\n            start sound [unlock v]\n        else\n            start sound [coin v]\n        end\n    end\nend\nif <(y) < [-300]> then\n    set [die v] to [1]\nend\nif <[collision_ v] contains [10]?> then\n    if <<(players needs all coins to win) = [1]> and <not <(@coins) = (length of [collected_coins v])>>> then\n        say (join [you need ] (join ((@coins) - (length of [collected_coins v])) [ more coins]))\n    else\n        if <(win) = [0]> then\n            broadcast (win v)\n        end\n        set [win v] to [1]\n        set [die v] to [0]\n    end\nend\ncollision\nif <[collision_ v] contains [9]?> then\n    if <not <(checkpoint) = (item # of [9] in [collision_ v])>> then\n        set [checkpoint v] to (item # of [9] in [collision_ v])\n        start sound [Collect v]\n        broadcast (activate checkpoint v)\n    end\nend\nif <[collision_ v] contains [8]?> then\n    set [sign_item v] to (item # of [8] in [collision_ v])\n    create clone of (_myself_ v)\nend\n\ndefine y (sy)\nchange [y v] by (sy)\nchange [in air v] by (1)\ngoto\nrepeat until <not <<<[collision_ v] contains [21]?> or <[collision_ v] contains [11]?>> or <[collision_ v] contains [1]?>>>\n    if <(sy) > [0]> then\n        change [y v] by (-1)\n    else\n        change [y v] by (1)\n        set [in air v] to [0]\n    end\n    goto\n    set [sy v] to [0]\nend\n\ndefine x (sx)\nchange [x v] by (sx)\ngoto\nif <<<[collision_ v] contains [21]?> or <[collision_ v] contains [11]?>> or <[collision_ v] contains [1]?>> then\n    repeat (10)\n        change [y v] by (1)\n        goto\n        if <not <<<[collision_ v] contains [21]?> or <[collision_ v] contains [11]?>> or <[collision_ v] contains [1]?>>> then\n            stop [this script v]\n        end\n    end\n    change [y v] by (-10)\n    repeat until <not <<<[collision_ v] contains [21]?> or <[collision_ v] contains [11]?>> or <[collision_ v] contains [1]?>>>\n        if <(sx) > [0]> then\n            change [x v] by (-1)\n        else\n            change [x v] by (1)\n        end\n        goto\n        set [sx v] to [0]\n    end\n    set [x v] to (x)\n    if <(walljump) = [1]> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>> then\n            if <([abs v] of (sx) ) = (sx)> then\n                set [sx v] to [-10]\n            else\n                set [sx v] to [10]\n            end\n            set [sy v] to [10]\n        end\n    end\nend\n\ndefine goto\ngo to x: ((x) - (SCROLL X)) y: ((y) - (SCROLL Y))\nclear graphic effects\ncollision\n\ndefine Die\nstart sound [crashed oof v]\nset [win v] to [1]\nif <(y position) < [-100]> then\n    set [sy v] to [0]\n    set [win v] to [0]\nelse\n    set [sy v] to [10]\n    set [sx v] to [-3]\n    repeat (25)\n        change [ghost v] effect by (5)\n        turn right (5) degrees\n        change x by (sx)\n        change y by (sy)\n        change [sy v] by (-1.3)\n    end\n    point in direction (90)\n    set [win v] to [0]\nend\n\ndefine Import level\nset [@editor portal lock v] to [0]\nset [@editor key lock v] to [0]\nset [checkpoint v] to [2]\nset [shrinked? v] to [0]\ndelete all of [type v]\ndelete all of [x v]\ndelete all of [y v]\ndelete all of [sign v]\nadd platfom [0] [-100] [1]\nadd platfom [0] [-75] [9]\nif <not <(input) = []>> then\n    set [debugging v] to [True]\n    set [paused2 v] to [0]\n    if < (input) contains [}]?> then\n        Savecode Decoder [1]\n        broadcast (hard-cscheck v) and wait\n    else\n        Savecode Decoder [2]\n        broadcast (hard-cscheck v) and wait\n    end\nelse\n    broadcast (hard-cscheck v)\n    set [players needs all coins to win v] to [0]\n    set [walljump v] to [0]\n    set [speed v] to [2.1]\n    set [jump height v] to [8]\nend\n\nwhen I receive [edit v]\nset [@editor portal lock v] to [0]\nset [@editor key lock v] to [0]\nset [pos_in_histr v] to [0]\ndelete all of [history v]\ndelete all of [collected_coins v]\ndelete all of [collected_keys v]\nImport level\nset [ghost v] effect to (100)\nset [change v] to [0]\nset [win v] to [0]\nset [x v] to [0]\nset [y v] to [-75]\nset [sy v] to [0]\nset [in air v] to [0]\nset [scroll x v] to [0]\nset [scroll y v] to [-75]\nset [blockselected v] to [1]\nset [. v] to [0]\nforever\n    change [direction of the saw v] by (1)\n    if <(@PLAYING warping) = [0]> then\n        point in direction (90)\n        set size to (50) %\n    end\n    if <(mode) = [editor]> then\n        set [checkpoint v] to [2]\n        if <<(blockselected) = [8]> or <(blockselected) = [1000]>> then\n            broadcast (update v) and wait\n        else\n            broadcast (update v)\n        end\n        if <<(paused2) = [0]> and <(debugging) = [False]>> then\n            broadcast (ui v)\n            if <(e?true) > [0]> then\n                if <key (o v) pressed?> then\n                    ask [What direction do you want the sign to point at? type \("left"/"right"/"up"/"down"\)] and wait\n                    if <not <(answer) = []>> then\n                        set [say v] to (letter (1) of (answer))\n                        if <not < [lrud] contains (say)?>> then\n                            set [say v] to [0]\n                        end\n                        replace item (e?true) of [sign v] with (say)\n                        set [change v] to [1]\n                    end\n                end\n            end\n            hide\n            set [sx v] to [0]\n            set [sy v] to [0]\n            set [x v] to [0]\n            set [y v] to [-75]\n            set [win v] to [0]\n            if <<(.) = [1]> and <not <mouse down?>>> then\n                Histr\n                set [. v] to [0]\n            end\n            if <(change) = [1]> then\n                set [change v] to [0]\n                set [. v] to [1]\n            end\n        end\n    else\n        show\n        if <(die) = [0]> then\n            if <<(paused2) = [0]> and <(debugging) = [False]>> then\n                set [die v] to [0]\n                Physics\n                set x to (round (x position))\n                broadcast (update v)\n                broadcast (ui v)\n            end\n        else\n            Die\n            set [die v] to [0]\n            set [sy v] to [0]\n            set [sx v] to [0]\n            if <(checkpoint) = [0]> then\n                set [checkpoint v] to [2]\n            end\n            set [x v] to (item (checkpoint) of [x v])\n            set [y v] to ((item (checkpoint) of [y v]) + (0))\n            set [scroll y v] to (y)\n            set [scroll x v] to (x)\n        end\n    end\nend\n\nchange x by (((x position) - ((item (item # of [10] in [type v]) of [x v]) - (SCROLL X))) / (-5))\nchange y by (((y position) - (((item (item # of [10] in [type v]) of [y v]) - (3)) - (SCROLL Y))) / (-5))\ngo to [back v] layer\n\nbroadcast (update v)\n\ndefine Editormovemnet\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <<[165] > (joystick dir)> and <(joystick dir) > [15]>>>> then\n    change [scroll x v] by (6.25)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(joystick active?) = [1]> and <<[-15] > (joystick dir)> and <(joystick dir) > [-165]>>>> then\n    change [scroll x v] by (-6.25)\nend\nif <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <<(joystick active?) = [1]> and <([abs v] of (joystick dir) ) > [112.5]>>> then\n    if <(SCROLL Y) > [-100]> then\n        change [scroll y v] by (-6.25)\n    end\nend\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>> then\n    change [scroll y v] by (6.25)\nend\nif <<(@EDITOR portal lock) = [0]> and <(@EDITOR key lock) = [0]>> then\n    if <key (1 v) pressed?> then\n        set [blockselected v] to [1]\n    end\n    if <key (2 v) pressed?> then\n        set [blockselected v] to [2]\n    end\n    if <key (3 v) pressed?> then\n        set [blockselected v] to [4]\n    end\n    if <key (4 v) pressed?> then\n        set [blockselected v] to [3]\n    end\n    if <key (5 v) pressed?> then\n        set [blockselected v] to [7]\n    end\n    if <key (6 v) pressed?> then\n        set [blockselected v] to [5]\n    end\n    if <key (7 v) pressed?> then\n        set [blockselected v] to [6]\n    end\n    if <key (8 v) pressed?> then\n        set [blockselected v] to [8]\n    end\n    if <key (9 v) pressed?> then\n        set [blockselected v] to [15]\n    end\n    if <key (a v) pressed?> then\n        set [blockselected v] to [12]\n    end\n    if <key (b v) pressed?> then\n        set [blockselected v] to [13]\n    end\n    if <key (c v) pressed?> then\n        set [blockselected v] to [9]\n    end\n    if <key (d v) pressed?> then\n        set [blockselected v] to [10]\n    end\n    if <key (e v) pressed?> then\n        set [blockselected v] to [1000]\n    end\n    if <key (m v) pressed?> then\n        set [scroll y v] to [0]\n        set [scroll x v] to [0]\n    end\nend\n\nwhen I receive [loadcode v]\nImport level\nHistr\n\ndefine Savecode Decoder (mode)\nif <(mode) = [2]> then\n    set [debugging v] to [True]\n    broadcast (decode level v)\nend\nif <(mode) = [1]> then\n    set [jump height v] to [8]\n    set [speed v] to [2.1]\n    set [author v] to [?]\n    set [status v] to [0]\n    set [zeile v] to [1]\n    set [zwische v] to []\n    delete all of [ouoot v]\n    add [] to [ouoot v]\n    if <not <(input) = []>> then\n        if <not <[history v] contains (input)?>> then\n            set [scroll x v] to [0]\n            set [scroll y v] to [0]\n        end\n        repeat (length of (input))\n            change [status v] by (1)\n            if <not <<(letter (status) of (input)) = [ß]> or <(letter (status) of (input)) = [}]>>> then\n                set [zwische v] to (join (zwische) (letter (status) of (input)))\n            else\n                if <not < (zwische) contains [\(]?>> then\n                    replace item (length of [ouoot v]) of [ouoot v] with (join (item (length of [ouoot v]) of [ouoot v]) (item (zwische) of [z\(old_decoder\) characterst v]))\n                else\n                    replace item (length of [ouoot v]) of [ouoot v] with (join (item (length of [ouoot v]) of [ouoot v]) (zwische))\n                end\n                set [zwische v] to []\n                if <(letter (status) of (input)) = [}]> then\n                    add [] to [ouoot v]\n                end\n            end\n        end\n    end\n    set [status v] to [0]\n    repeat (((length of [ouoot v]) - (2)) / (4))\n        change [status v] by (1)\n        add ((item (status) of [ouoot v]) * (25)) to [x v]\n    end\n    repeat (((length of [ouoot v]) - (2)) / (4))\n        change [status v] by (1)\n        add ((item (status) of [ouoot v]) * (25)) to [y v]\n    end\n    repeat (((length of [ouoot v]) - (2)) / (4))\n        change [status v] by (1)\n        add (item (status) of [ouoot v]) to [type v]\n    end\n    repeat (((length of [ouoot v]) - (2)) / (4))\n        change [status v] by (1)\n        add (item (status) of [ouoot v]) to [sign v]\n    end\n    delete (length of [ouoot v]) of [ouoot v]\n    if <<(item (length of [ouoot v]) of [ouoot v]) = [d]> or <(item (length of [ouoot v]) of [ouoot v]) = [g]>> then\n        set [@@level theme v] to (item (length of [ouoot v]) of [ouoot v])\n        delete (length of [ouoot v]) of [ouoot v]\n        if <(item (length of [ouoot v]) of [ouoot v]) = [yes]> then\n            set [walljump v] to [1]\n        else\n            set [walljump v] to [0]\n        end\n        delete (length of [ouoot v]) of [ouoot v]\n        set [checkpoint v] to [2]\n    else\n        broadcast (error v)\n        set [input v] to []\n        Import level\n    end\nend\n\ndefine collision\nset [o v] to [0]\nrepeat (length of [iterate_items v])\n    change [o v] by (1)\n    set [i v] to (item (o) of [iterate_items v])\n    replace item (i) of [collision_ v] with [0]\n    if <((item (i) of [x v]) - ((21) + ((1) / (2)))) < (x)> then\n        if <not <((item (i) of [x v]) - ((-21) + ((1) / (2)))) < (x)>> then\n            if <((item (i) of [y v]) - ((22) + ((1) / (2)))) < (y)> then\n                if <not <((item (i) of [y v]) - ((-22) + ((1) / (2)))) < (y)>> then\n                    if <not <[collected_coins v] contains (i)?>> then\n                        if <([floor v] of (item (i) of [type v]) ) = [17]> then\n                            replace item (i) of [collision_ v] with [1]\n                        else\n                            replace item (i) of [collision_ v] with ([floor v] of (item (i) of [type v]) )\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [reset v]\nset [input v] to []\nImport level\n\nwhen I start as a clone\nset size to (80) %\nswitch costume to (sign v)\nshow\nset [ghost v] effect to (100)\ngo to x: ((item (sign_item) of [x v]) - (SCROLL X)) y: ((item (sign_item) of [y v]) - (SCROLL Y))\nsay (item (sign_item) of [sign v])\n\nwhen I receive [n v]\nif <(pos_in_histr) < (length of [history v])> then\n    change [pos_in_histr v] by (1)\n    set [input v] to (item (pos_in_histr) of [history v])\n    Import level\nend\n\nwhen flag clicked\nhide\nset [paused2 v] to [0]\n\nwhen I receive [edit v]\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        wait (0.1) seconds\n        stop [other scripts in sprite v]\n        hide\n        stop [this script v]\n    end\nend\n\nwhen I receive [edit v]\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        delete this clone\n    end\nend\n\nwhen I receive [restart v]\nset [checkpoint v] to [2]\nset [x v] to [0]\nset [y v] to [-100]\nset [scroll x v] to [0]\nset [scroll y v] to [-100]\nset [win v] to [0]\ndelete all of [collected_coins v]\ndelete all of [collected_keys v]\n\nwhen I receive [update v]\ndelete this clone\n\ndefine Histr\nbroadcast (getdta v) and wait\nchange [pos_in_histr v] by (1)\ninsert (output) at (pos_in_histr) of [history v] \n\nwhen I receive [edit v]\nforever\n    go to [back v] layer\n    change [cooldown v] by (-2.7)\n    if <(mode) = [playing]> then\n        if <<(paused2) = [0]> and <(debugging) = [False]>> then\n            change [last v] by (-1)\n            if <(pick random (1) to (60)) = [1]> then\n                if <(last) < [0]> then\n                    set [last v] to [5]\n                    switch costume to (7 v)\n                    repeat (5)\n                        next costume\n                    end\n                    repeat (1)\n                        switch costume to (10 v)\n                    end\n                    repeat (1)\n                        switch costume to (8 v)\n                    end\n                    repeat (1)\n                        switch costume to (11 v)\n                    end\n                    repeat (1)\n                        switch costume to (7 v)\n                    end\n                end\n            else\n                if <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <<[165] > (joystick dir)> and <(joystick dir) > [15]>>>> and <<<key (up arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>>> then\n                    switch costume to (5 v)\n                else\n                    if <<<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(joystick active?) = [1]> and <<[-15] > (joystick dir)> and <(joystick dir) > [-165]>>>> and <<<key (up arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>>> then\n                        switch costume to (6 v)\n                    else\n                        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(joystick active?) = [1]> and <<[-15] > (joystick dir)> and <(joystick dir) > [-165]>>>> then\n                            switch costume to (2 v)\n                        else\n                            if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(joystick active?) = [1]> and <<[165] > (joystick dir)> and <(joystick dir) > [15]>>>> then\n                                switch costume to (3 v)\n                            else\n                                if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(joystick active?) = [1]> and <[67.5] > ([abs v] of (joystick dir) )>>> then\n                                    switch costume to (4 v)\n                                else\n                                    switch costume to (1 v)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [p v]\nif <[1] < (pos_in_histr)> then\n    change [pos_in_histr v] by (-1)\n    set [input v] to (item (pos_in_histr) of [history v])\n    Import level\nend\n\nwhen I receive [edit v]\nforever\n    if <(mode) = [editor]> then\n        Editormovemnet\n    end\nend\n\nwhen I receive [home v]\ndelete this clone\n\nwhen I receive [@portal warp v]\nstart sound [Teleport2 v]\nset [@playing warping v] to [1]\nrepeat (5)\n    change [ghost v] effect by (30)\n    change size by (-8)\n    say []\nend\nset [x v] to ((item (@PORTAL target) of [x v]) * (1))\nset [y v] to ((item (@PORTAL target) of [y v]) * (1))\nset [scroll x v] to ((item (@PORTAL target) of [x v]) * (1))\nset [scroll y v] to ((item (@PORTAL target) of [y v]) * (1))\ngo to x: (0) y: (0)\nrepeat (5)\n    change [ghost v] effect by (-30)\n    change size by (8)\n    say []\nend\nset [@playing warping v] to [0]\n\ndefine add platfom (xpos) (ypos) (id)\nset [o v] to [1]\nrepeat until <<<(item (o) of [x v]) = (xpos)> and <(item (o) of [y v]) = (ypos)>> or <(o) > (length of [type v])>>\n    change [o v] by (1)\nend\nif <(o) > (length of [type v])> then\n    add (xpos) to [x v]\n    add (ypos) to [y v]\n    add (id) to [type v]\n    add [0] to [sign v]\nend\n\nwhen [timer v] > (0)\nhide\n\nwhen flag clicked\nset volume to (50) %\n\n@Shrink\n\nwhen I start as a clone\nforever\n    wait until <<(\side-bar opened) = [1]> and <<(mode) = [editor]> or <(mode) = [playing]>>>\n    start sound [High Whoosh v]\n    set [ghost v] effect to (100)\n    go to x: (180) y: (0)\n    show\n    go to [back v] layer\n    go [forward v] (30) layers\n    repeat (9)\n        change [ghost v] effect by (-10)\n        go to [back v] layer\n        xb\n    end\n    repeat until <<not <(\side-bar opened) = [1]>> or <not <<(mode) = [editor]> or <(mode) = [playing]>>>>\n        go to [back v] layer\n        xb\n    end\n    start sound [Low Whoosh v]\n    repeat (10)\n        change x by (((x position) - (180)) / (-3))\n        change [ghost v] effect by (10)\n        set [\side-bar-x v] to (x position)\n        broadcast (side-bar v)\n    end\n    hide\n    delete this clone\nend\n\ndefine xb\nset [velocity.1 v] to (((velocity.1) * (0.5)) + (((x position) - (-5)) * (-0.3)))\nchange x by ([floor v] of (velocity.1) )\nset [\side-bar-x v] to (x position)\nbroadcast (side-bar v)\n\nwhen flag clicked\nforever\n    wait until <<not <(\side-bar opened) = [1]>> or <not <<(mode) = [editor]> or <(mode) = [playing]>>>>\n    set [\side-bar-x v] to [1000]\n    wait until <not <<not <(\side-bar opened) = [1]>> or <not <<(mode) = [editor]> or <(mode) = [playing]>>>>>\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nforever\n    if <(mode) = [playing]> then\n        switch costume to (costume3 v)\n    else\n        switch costume to (costume2 v)\n    end\nend\n\nset [@username v] to [gtrrgrtg]\n\nbroadcast (@ack v)\n\nwhen flag clicked\nhide\nwait (2) seconds\nforever\n    if <<(mode) = [editor]> or <(mode) = [playing]>> then\n        show\n        go to [back v] layer\n        switch costume to (mode)\n        go [forward v] (2) layers\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@x\n\ndefine new counter @ (x) (y)\nset [x v] to (x)\nset [y v] to (y)\nset [yc v] to [6]\ncreate clone of (_myself_ v)\nrepeat (14)\n    change [yc v] by (1)\n    set [x v] to ((x) + (((yc) - (6)) * (9)))\n    set [y v] to (y)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(yc) > [5]> then\n    switch costume to (0 v)\n    forever\n        if <<<(mode) = [playing]> or <(mode) = [editor]>> and <(\side-bar opened) = [1]>> then\n            show\n            set [brightness v] effect to (20)\n            set [ghost v] effect to (35)\n            show\n            switch costume to (0 v)\n            switch costume to (letter ((yc) - ((15) + ((0) - (length of (join [y ] (round (SCROLL Y))))))) of (join [y ] (round (SCROLL Y))))\n            go to x: ((x) - (0)) y: (y)\n            set size to (30) %\n            go to [front v] layer\n        else\n            hide\n        end\n    end\nend\n\nwhen flag clicked\nhide\nnew counter @ [140] [-124]\n\nwhen I receive [side-bar v]\nchange x by (6)\nchange x by (\side-bar-x)\n\nwhen [timer v] > (0)\nhide\n\n@y\n\ndefine new counter @ (x) (y)\nset [x v] to (x)\nset [y v] to (y)\nset [yc v] to [6]\ncreate clone of (_myself_ v)\nrepeat (14)\n    change [yc v] by (1)\n    set [x v] to ((x) + (((yc) - (6)) * (9)))\n    set [y v] to (y)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(yc) > [5]> then\n    switch costume to (0 v)\n    forever\n        if <<<(mode) = [playing]> or <(mode) = [editor]>> and <(\side-bar opened) = [1]>> then\n            show\n            set [brightness v] effect to (20)\n            set [ghost v] effect to (35)\n            show\n            switch costume to (0 v)\n            switch costume to (letter ((yc) - ((15) + ((0) - (length of (join [x ] (round (SCROLL X))))))) of (join [x ] (round (SCROLL X))))\n            go to x: ((x) - (0)) y: (y)\n            set size to (30) %\n            go to [front v] layer\n        else\n            hide\n        end\n    end\nend\n\nwhen flag clicked\nhide\nnew counter @ [140] [-100]\n\nwhen I receive [side-bar v]\nchange x by (6)\nchange x by (\side-bar-x)\n\nwhen [timer v] > (0)\nhide\n\n@Editor&Play UI\n\nwhen flag clicked\nhide\nforever\n    set [vel2 v] to [0]\n    point in direction (90)\n    wait until <(mode) = [editor]>\n    set volume to (100) %\n    set [clone-id v] to [1]\n    create clone of (_myself_ v)\n    point in direction (90)\n    set [clone-id v] to [2]\n    create clone of (_myself_ v)\n    set [clone-id v] to [3]\n    create clone of (_myself_ v)\n    set [clone-id v] to [4]\n    create clone of (_myself_ v)\n    set [clone-id v] to [6]\n    create clone of (_myself_ v)\n    set [clone-id v] to [7]\n    create clone of (_myself_ v)\n    set [clone-id v] to [8]\n    create clone of (_myself_ v)\n    set [clone-id v] to [9]\n    create clone of (_myself_ v)\n    set [clone-id v] to [10]\n    create clone of (_myself_ v)\n    set [clone-id v] to [11]\n    create clone of (_myself_ v)\n    wait until <not <(mode) = [editor]>>\nend\n\nwhen I start as a clone\nset size to (100) %\nif <(mode) = [editor]> then\n    set [ghost v] effect to (100)\n    show\n    if <(clone-id) = [1]> then\n        go to x: (218) y: (157)\n        switch costume to (... v)\n        set size to (100) %\n    end\n    if <(clone-id) = [2]> then\n        go to x: (155) y: (157)\n        set size to (100) %\n        if <(@@LEVEL shared) = [True]> then\n            switch costume to (unshare v)\n        else\n            switch costume to (share v)\n        end\n    end\n    if <(clone-id) = [3]> then\n        set size to (100) %\n        go to x: (75) y: (157)\n        switch costume to (save v)\n        show\n    end\n    if <(clone-id) = [4]> then\n        go to x: (-20) y: (157)\n        switch costume to (play v)\n        set size to (100) %\n    end\n    if <(clone-id) = [5]> then\n    if <(clone-id) = [6]> then\n        go to x: (170) y: (90)\n        set size to (100) %\n        switch costume to (information v)\n    end\n    if <(clone-id) = [7]> then\n        set size to (100) %\n        go to x: (170) y: (25)\n        switch costume to (theme v)\n    end\n    if <(clone-id) = [8]> then\n        set size to (100) %\n        go to x: (170) y: (-40)\n        switch costume to (settings v)\n    end\n    if <(clone-id) = [9]> then\n        set size to (100) %\n        go to x: (107) y: (-90)\n        switch costume to (import v)\n    end\n    if <(clone-id) = [10]> then\n        set size to (100) %\n        go to x: (107) y: (-120)\n        switch costume to (export v)\n    end\n    if <(clone-id) = [11]> then\n        set size to (100) %\n        go to x: (107) y: (98)\n        switch costume to (levelpage v)\n    end\n    set [ghost v] effect to (100)\n    if <(clone-id) < [6]> then\n        if <(clone-id) < [5]> then\n            set y to (187)\n            if <(mode) = [editor]> then\n                repeat (10)\n                    change [ghost v] effect by (-8)\n                    if <(clone-id) < [5]> then\n                        change y by (((y position) - (157)) / (-5))\n                    end\n                    sb\n                end\n            end\n            repeat until <not <(mode) = [editor]>>\n                if <(clone-id) = [2]> then\n                    if <(@@LEVEL shared) = [True]> then\n                        switch costume to (unshare v)\n                    else\n                        switch costume to (share v)\n                    end\n                end\n                if <(clone-id) < [5]> then\n                    change y by (((y position) - (157)) / (-5))\n                end\n                if <(clone-id) = [2]> then\n                    show\n                    if <(length of [type v]) = [1]> then\n                        hide\n                    end\n                end\n                if <<(clone-id) = [3]> and <(⛈️ STATUS) = [1]>> then\n                    switch costume to (save2 v)\n                    set size to (100) %\n                    set [ghost v] effect to ((([sin v] of ((tick) * (100)) ) * (10)) + (70))\n                else\n                    if <(clone-id) = [3]> then\n                        switch costume to (save v)\n                    end\n                    sb\n                    click\n                end\n            end\n            repeat (4)\n                change y by ((3) * ((-1) + (<([abs v] of (y position) ) = (y position)> * (2))))\n                change [ghost v] effect by (25)\n            end\n            delete this clone\n        end\n        set [ghost v] effect to (100)\n    else\n        forever\n            set [ghost v] effect to (100)\n            repeat until <<(mode) = [editor]> and <(\side-bar opened) = [1]>>\n                if <not <(mode) = [editor]>> then\n                    delete this clone\n                end\n            end\n            if <<(mode) = [editor]> and <(\side-bar opened) = [1]>> then\n                repeat until <not <<(mode) = [editor]> and <(\side-bar opened) = [1]>>>\n                    set x to (199)\n                    change [ghost v] effect by (-8)\n                    if <(theme) = [r]> then\n                        set [color v] effect to (150)\n                    end\n                    if <(theme) = [d]> then\n                        set [color v] effect to (150)\n                    end\n                    if <(theme) = [g]> then\n                        set [color v] effect to (0)\n                    end\n                    if <(theme) = [s]> then\n                        set [color v] effect to (62)\n                    end\n                    if <(clone-id) = [2]> then\n                        show\n                        if <(length of [type v]) = [1]> then\n                            hide\n                        end\n                    end\n                    if <[8] < (clone-id)> then\n                        change x by (-85)\n                    end\n                    sb\n                    click\n                end\n                if <not <(mode) = [editor]>> then\n                    show\n                    delete this clone\n                end\n            end\n        end\n    end\nend\nif <(mode) = [playing]> then\n    set [ghost v] effect to (100)\n    show\n    if <(clone-id) = [101]> then\n        go to x: (160) y: (187)\n        if <(@username) = (@@LEVEL author)> then\n            switch costume to (editor v)\n        else\n            switch costume to (remix v)\n        end\n    end\n    if <(clone-id) = [102]> then\n        go to x: (218) y: (187)\n        switch costume to (... v)\n        set size to (100) %\n    end\n    if <(clone-id) = [103]> then\n        go to x: (-60) y: (187)\n        switch costume to (pause v)\n        set size to (100) %\n    end\n    if <(clone-id) = [104]> then\n        go to x: (30) y: (187)\n        switch costume to (reset v)\n        set size to (100) %\n    end\nend\nrepeat (10)\n    change y by (((y position) - (157)) / (-5))\n    change [ghost v] effect by (-8)\nend\nrepeat until <not <(mode) = [playing]>>\n    if <(clone-id) = [103]> then\n        if <(paused2) = [1]> then\n            switch costume to (resume v)\n        else\n            switch costume to (pause v)\n        end\n    end\n    if <(clone-id) = [101]> then\n        if <(@username) = (@@LEVEL author)> then\n            switch costume to (editor v)\n        else\n            switch costume to (remix v)\n        end\n    end\n    change y by (((y position) - (157)) / (-5))\n    sb\n    click\nend\ndelete this clone\n\nwhen flag clicked\nshow list [export your level v]\n\ndefine sb\nif <(joystick active?) = [0]> then\n    if <<(clone-id) = [1]> or <(clone-id) = [102]>> then\n        change size by (((size) - ((100) + (<touching (mouse-pointer v)?> * (15)))) / (-4))\n        rb\n    else\n        change size by (((size) - ((100) + (<touching (mouse-pointer v)?> * (15)))) / (-4))\n    end\nend\n\ndefine rb\nset [vel2 v] to (((vel2) * (0.75)) + ((((90) + (<(\side-bar opened) = [1]> * (-90))) - (direction)) * (0.18)))\nturn right (round (vel2)) degrees\n\ndefine click\nchange [ghost v] effect by (-22)\nchange [ghost v] effect by (14)\nif <(joystick active?) = [0]> then\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n    end\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        set [ghost v] effect to (75)\n        repeat until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n            if <<<[5] < (clone-id)> and <(clone-id) < [100]>> and <(\side-bar opened) = [1]>> then\n                set x to (199)\n                if <[8] < (clone-id)> then\n                    change x by (-85)\n                end\n                sb\n            end\n        end\n        if <touching (mouse-pointer v)?> then\n            if <(clone-id) = [1]> then\n                change [\side-bar opened v] by (-1)\n                set [\side-bar opened v] to ([abs v] of (\side-bar opened) )\n                broadcast (side-bar v)\n                repeat (10)\n                    rb\n                end\n            end\n            if <(clone-id) = [2]> then\n                if <(@@LEVEL shared) = [True]> then\n                    broadcast (unshare-popup v)\n                else\n                    broadcast (@post level v)\n                    broadcast (share-popup v)\n                end\n            end\n            if <(clone-id) = [3]> then\n                broadcast (@post level v)\n                broadcast (post-notif v)\n                stop [this script v]\n            end\n            if <(clone-id) = [4]> then\n                set [mode v] to [playing]\n                delete all of [collected_coins v]\n                delete all of [collected_keys v]\n                set [checkpoint v] to [2]\n                broadcast (debug v) and wait\n                hide\n                set [scroll y v] to [0]\n                set [scroll x v] to [1]\n                set [win v] to [0]\n            end\n            if <(clone-id) = [6]> then\n                hide\n                broadcast (settings v) and wait\n                show\n            end\n            if <(clone-id) = [7]> then\n                hide\n                broadcast (change_theme v) and wait\n                show\n            end\n            if <(clone-id) = [8]> then\n                hide\n                ask [enter x position] and wait\n                set [scroll x v] to (answer)\n                ask [enter y position] and wait\n                set [scroll y v] to (answer)\n                show\n            end\n            if <(clone-id) = [9]> then\n                hide\n                ask [Enter your level code] and wait\n                set [input v] to (answer)\n                broadcast (loadcode v) and wait\n                broadcast (@post level v)\n                show\n            end\n            if <(clone-id) = [10]> then\n                broadcast (getdta v) and wait\n                broadcast (@post level v)\n                hide\n                delete all of [export your level v]\n                add [Triple click on the code below and then copy \(Ctrl+C\) and past \(Ctrl+V\) it to] to [export your level v]\n                add [your computer to save the level you made:] to [export your level v]\n                add [] to [export your level v]\n                add (output) to [export your level v]\n                hide list [export your level v]\n                ask [Enter the code here to confirm that you have all of it!] and wait\n                repeat until <(answer) = (item (4) of [export your level v])>\n                    ask [You didn't copy the whole code Remember to TRIPLE click on the code and then press Ctrl key + c key to copy  it and Ctrl key + V key to past it. If you need help, ask in comments.] and wait\n                end\n                show list [export your level v]\n                show\n            end\n            if <(clone-id) = [11]> then\n                broadcast (trans1 v) and wait\n                set [mode v] to [spotlight]\n                set [theme v] to [ui]\n                broadcast (editor-to-spotlight-loadlevel v)\n                wait (0.15) seconds\n                broadcast (trans2 v) and wait\n                broadcast (init UI v)\n            end\n            if <(clone-id) = [101]> then\n                if <(@@LEVEL author) = (@username)> then\n                    set [paused2 v] to [0]\n                    set [mode v] to [editor]\n                    set [scroll x v] to [0]\n                    set [scroll y v] to [0]\n                    delete all of [collected_keys v]\n                    delete all of [collected_coins v]\n                else\n                    broadcast (\[PROJ\] remix v)\n                end\n            end\n            if <(clone-id) = [102]> then\n                change [\side-bar opened v] by (-1)\n                set [\side-bar opened v] to ([abs v] of (\side-bar opened) )\n                broadcast (side-bar v)\n            end\n            if <(clone-id) = [103]> then\n                if <(paused2) = [1]> then\n                    set [paused2 v] to [0]\n                else\n                    set [paused2 v] to [1]\n                end\n                broadcast (pause v)\n            end\n            if <(clone-id) = [104]> then\n                broadcast (restart v)\n                broadcast (win-close v)\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    wait until <(mode) = [playing]>\n    set [paused2 v] to [0]\n    wait (0.1) seconds\n    set [clone-id v] to [101]\n    create clone of (_myself_ v)\n    set [clone-id v] to [102]\n    create clone of (_myself_ v)\n    set [clone-id v] to [103]\n    create clone of (_myself_ v)\n    set [clone-id v] to [104]\n    create clone of (_myself_ v)\n    wait until <not <(mode) = [playing]>>\nend\n\nwhen I start as a clone\nforever\n    wait until <touching (mouse-pointer v)?>\n    if <not <<<[5] < (clone-id)> and <(clone-id) < [100]>> and <(\side-bar opened) = [0]>>> then\n        start sound [Touch v]\n    end\n    wait until <not <touching (mouse-pointer v)?>>\nend\n\nif <[8] < (clone-id)> then\n    change x by (-85)\nend\n\nif <[8] < (clone-id)> then\n    change x by (-85)\nend\n\nif <[8] < (clone-id)> then\n    change x by (-85)\nend\n\nif <[8] < (clone-id)> then\n    change x by (-85)\nend\n\nset [__________top-bar-touching v] to [0]\n\nwhen I receive [side-bar v]\nif <<[5] < (clone-id)> and <(clone-id) < [12]>> then\n    change x by (6)\n    change x by (\side-bar-x)\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@Win UI\n\nwhen flag clicked\nhide\n\nwhen I receive [win v]\nset [win v] to [1]\nwait (0.2) seconds\nset size to (100) %\nstart sound [Connect v]\ngo to [front v] layer\nset [clone-id v] to [win]\ncreate clone of (_myself_ v)\nbroadcast (@win add v)\nif <(@@LEVEL shared) = [True]> then\n    set [clone-id v] to [close2]\n    create clone of (_myself_ v)\n    set [clone-id v] to [more]\n    create clone of (_myself_ v)\n    set [clone-id v] to [rando]\n    create clone of (_myself_ v)\nelse\n    set [clone-id v] to [close1]\n    create clone of (_myself_ v)\nend\nswitch costume to (costume1 v)\nshow\nset [ghost v] effect to (100)\ngo to x: (0) y: (-120)\nrepeat (15)\n    change y by ((y position) / (-3))\n    change [ghost v] effect by (-6)\nend\n\nwhen I start as a clone\ngo to [front v] layer\nswitch costume to (clone-id)\nshow\nset size to (100) %\nset [ghost v] effect to (100)\ngo to x: (0) y: (120)\nrepeat (15)\n    change y by ((y position) / (-3))\n    change [ghost v] effect by (-5)\nend\nforever\n    if <not <(clone-id) = [win]>> then\n        if <touching (mouse-pointer v)?> then\n            set [ghost v] effect to (35)\n            if <mouse down?> then\n                set [ghost v] effect to (70)\n                wait until <not <<touching (mouse-pointer v)?> and <mouse down?>>>\n                if <touching (mouse-pointer v)?> then\n                    if <(clone-id) = [rando]> then\n                        broadcast (win-to-random v)\n                    end\n                    if <(clone-id) = [more]> then\n                        broadcast (win-to-more v)\n                    end\n                    broadcast (win-close v)\n                end\n            end\n        else\n            clear graphic effects\n        end\n    end\n    if <not <(mode) = [playing]>> then\n        broadcast (win-close v)\n    end\nend\n\nwhen I start as a clone\nwait (0.16) seconds\nrepeat (3)\n    change size by (4)\nend\nrepeat (3)\n    change size by (-4)\nend\n\nwhen I receive [win-close v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\n    change size by (-4)\nend\ndelete this clone\n\nbroadcast (win-close v)\n\nwhen [timer v] > (0)\nhide\n\n@Selected block UI\n\nwhen flag clicked\nforever\n    repeat (3)\n        change [ghost v] effect by (-25)\n        change y by (((y position) - (-173)) / (-3))\n        go to [back v] layer\n    end\n    hide\n    wait until <(mode) = [editor]>\n    go to x: (-140) y: (-173)\n    set [m v] to (blockselected)\n    show\n    switch costume to (ground v)\n    set [ghost v] effect to (100)\n    repeat (3)\n        change [ghost v] effect by (-25)\n        change y by (((y position) - (-133)) / (-3))\n        go to [back v] layer\n    end\n    set [ghost v] effect to (25)\n    repeat (9)\n        change y by (((y position) - (-133)) / (-3))\n        go to [back v] layer\n    end\n    repeat until <not <(mode) = [editor]>>\n        show\n        if <not <(m) = (blockselected)>> then\n            cost\n        end\n    end\nend\n\ndefine cost\nset [m v] to (blockselected)\nrepeat (4)\n    change [ghost v] effect by (25)\n    change y by (1)\nend\nif <(blockselected) = [1000]> then\n    switch costume to (eraser v)\nelse\n    switch costume to (blockselected)\nend\ngo to x: (-140) y: (-173)\nrepeat (3)\n    change [ghost v] effect by (-25)\n    change y by (((y position) - (-133)) / (-3))\n    go to [back v] layer\nend\nset [ghost v] effect to (25)\nrepeat (9)\n    change y by (((y position) - (-133)) / (-3))\n    go to [back v] layer\nend\n\nwhen flag clicked\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        hide\n    end\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen I receive [pause v]\nif <(paused) = [1]> then\n    switch costume to (costume1 v)\nelse\n    switch costume to (costume2 v)\nend\nani\n\ndefine ani\nshow\nset size to (0) %\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-15)\n    change size by (((size) - (150)) / (-6))\nend\nrepeat (8)\n    change [ghost v] effect by (15)\n    change size by (((size) - (150)) / (-6))\nend\nhide\n\nwhen I receive [restart v]\nswitch costume to (costume3 v)\nani\n\nwhen [timer v] > (0)\nhide\n\n@Sprite4\n\nwhen flag clicked\nset [debugging v] to [False]\nforever\n    if <(debugging) = [False]> then\n        hide\n    else\n        show\n        set [ghost v] effect to (5)\n        go to [front v] layer\n    end\nend\n\nwhen I receive [activate checkpoint v]\nset [+*checkpoint_bounce v] to [0]\nset [yvel v] to [20]\nrepeat (19)\n    change [yvel v] by (-2)\n    change [+*checkpoint_bounce v] by (yvel)\nend\n\nwhen [timer v] > (0)\nhide\n\n@in water\n\nwhen flag clicked\nset [last_water v] to [0]\ngo to x: (0) y: (-30000)\nhide\n\nwhen I start as a clone\nset [y v] to (pick random (20) to (30))\nshow\neff (pick random (-3) to (3))\n\ndefine eff (x)\nset [-1 v] to [1]\nset [color v] effect to (0)\nset [ghost v] effect to (pick random (40) to (80))\nset [brightness v] effect to (0)\nset size to (pick random (40) to (90)) %\nforever\n    go to [front v] layer\n    change x by ((x) * (-1))\n    change y by (y)\n    change [y v] by (-2)\n    if <touching (_edge_ v)?> then\n        if <(-1) = [1]> then\n            set [-1 v] to [-1]\n        else\n            set [-1 v] to [1]\n        end\n    end\n    if <(y position) < [-170]> then\n        delete this clone\n    end\nend\n\nwhen I receive [water v]\nif <((last_water) + (3)) < (@@tick)> then\n    set [last_water v] to (@@tick)\n    start sound [Splash v]\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\nend\nset [last_water v] to (@@tick)\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@effect_snowflake\n\nwhen I start as a clone\nset size to (40) %\nshow\nset [ghost v] effect to (60)\nforever\n    turn right (10) degrees\nend\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\ngo to [back v] layer\ngo to x: (pick random (-200) to (200)) y: (180)\nrepeat (10)\n    change y by (-3)\nend\nrepeat until <touching (_edge_ v)?>\n    change y by (-3)\nend\nrepeat (10)\n    change [ghost v] effect by (6)\nend\ndelete this clone\n\nwhen flag clicked\nswitch costume to (snow v)\nforever\n    if <<<(mode) = [playing]> or <(mode) = [editor]>> and <(theme) = [s]>> then\n        create clone of (_myself_ v)\n        wait (0.5) seconds\n    end\nend\n\nwhen I start as a clone\nforever\n    if <not <(theme) = [s]>> then\n        delete this clone\n    end\nend\n\nwhen [timer v] > (0)\nhide\n\n@ChangeTheme\n\nwhen I receive [change_theme v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [1]\n    create clone of (_myself_ v)\n    set [clone-id v] to [2]\n    create clone of (_myself_ v)\n    set [clone-id v] to [3]\n    create clone of (_myself_ v)\n    set [clone-id v] to [4]\n    create clone of (_myself_ v)\n    set [clone-id v] to [okay]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme_actual_close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n    if <not <(mode) = [editor]>> then\n        set [open v] to [0]\n        delete this clone\n    end\nend\n\nwhen I receive [change_theme_actual_close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme_actual_close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(letter (clone-id) of [gdsr]) = (@@LEVEL theme)> then\n            set [brightness v] effect to (5)\n        else\n            set [brightness v] effect to (30)\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (17)\n                if <mouse down?> then\n                    set [brightness v] effect to (10)\n                    set [@@level theme v] to (letter (clone-id) of [gdsr])\n                    set [theme v] to (@@LEVEL theme)\n                    set [change v] to [1]\n                    broadcast (@post level v)\n                    if <(@@LEVEL theme) = [g]> then\n                        change [☁ stats: grassland theme users v] by (1)\n                    end\n                    if <(@@LEVEL theme) = [d]> then\n                        change [☁ stats: desert theme users v] by (1)\n                    end\n                    if <(@@LEVEL theme) = [s]> then\n                        change [☁ stats: snow theme users v] by (1)\n                    end\n                    if <(@@LEVEL theme) = [r]> then\n                        change [☁ stats: lava theme users v] by (1)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [change_theme_actual_close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [change_theme_actual_close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Leave2\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [error v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [okay]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\nend\n\nwhen I start as a clone\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        hide\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    if <(length of [type v]) < [5]> then\n                        broadcast (init UI v)\n                        broadcast (init-home v)\n                        set [theme v] to [ui]\n                    end\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [home v]\nhide\ndelete this clone\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [editor-to-spotlight-loadlevel v]\ndelete this clone\n\n@Blockl"\n\nwhen flag clicked\nClone\n\ndefine Clone\nset size to (90) %\nshow\nset [clone id v] to [0]\nswitch costume to (1 v)\ngo to x: (-220) y: (-170)\nrepeat (2)\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\n    change x by (28)\nend\nchange [clone id v] by (1)\nchange [clone id v] by (1)\ncreate clone of (_myself_ v)\nchange x by (56)\nrepeat (2)\n    change x by (28)\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\nend\nchange [clone id v] by (1)\nchange x by (28)\nchange [clone id v] by (1)\ncreate clone of (_myself_ v)\nchange x by (84)\nrepeat (2)\n    change x by (28)\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\nend\ngo to x: (-220) y: (-170)\nchange x by ((28) * (7))\nset [clone id v] to [10]\nchange x by (28)\nchange [clone id v] by (1)\nrepeat (2)\n    change x by (28)\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\nend\ngo to x: (-220) y: (-170)\nchange x by ((28) * (3))\nset [clone id v] to [3]\ncreate clone of (_myself_ v)\nchange x by (28)\nset [clone id v] to [7]\ncreate clone of (_myself_ v)\nset [clone id v] to [1000]\nchange x by ((28) * (9.2))\nset [clone id v] to [1000]\ncreate clone of (_myself_ v)\ngo to x: (-220) y: (-170)\nchange x by ((28) * (8))\nset [clone id v] to [15]\ncreate clone of (_myself_ v)\nhide\n\nwhen I start as a clone\nforever\n    hide\n    wait until <(mode) = [editor]>\n    set [ghost v] effect to (100)\n    show\n    if <<(mode) = [editor]> and <not <<[type v] contains [10]?> and <(clone id) = [10]>>>> then\n        repeat until <not <(mode) = [editor]>>\n            if <<(@EDITOR portal lock) = [0]> and <(@EDITOR key lock) = [0]>> then\n                change y by (((y position) - (-164)) / (-2))\n                show\n                point in direction (90)\n                switch costume to (clone id)\n                set [ghost v] effect to (60)\n                if <touching (mouse-pointer v)?> then\n                    if <(joystick active?) = [0]> then\n                        set [ghost v] effect to (35)\n                    end\n                end\n                if <(clone id) = (blockselected)> then\n                    set [ghost v] effect to (0)\n                    change size by (((size) - (105)) / (-4.5))\n                else\n                    change size by (((size) - (86)) / (-4.5))\n                end\n                if <(clone id) = [5]> then\n                    point in direction (direction of the saw)\n                end\n                if <<mouse down?> and <touching (mouse-pointer v)?>> then\n                    if <(joystick active?) = [0]> then\n                        wait until <not <mouse down?>>\n                        set [blockselected v] to (clone id)\n                    end\n                end\n                if <(clone id) = [10]> then\n                    if <[type v] contains [10]?> then\n                        hide\n                    end\n                end\n            else\n                hide\n            end\n        end\n    end\nend\n\nwhen [timer v] > (0)\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Encoder / Decoder\n\nwhen I receive [getdta v]\nset [author v] to (@username)\nEncode level\nset [@@level code v] to (output)\n\ndefine Encode level\nset [output v] to []\nEncode Blocks\nEncode_ (players needs all coins to win)\nset [output v] to (join (output) [94])\nEncode_ (@@LEVEL theme)\nset [output v] to (join (output) [92])\nEncode_ (walljump)\nset [output v] to (join (output) [92])\nEncode_ (jump height)\nset [output v] to (join (output) [92])\nEncode_ (speed)\nset [output v] to (join (output) [92])\nEncode_ (author)\nset [output v] to (join (output) [92])\nset [raw_code v] to (output)\n\ndefine Encode Blocks\nset [o v] to [2]\nrepeat ((length of [x v]) - (2))\n    change [o v] by (1)\n    Encode_ ((item (o) of [x v]) / (25))\n    set [output v] to (join (output) [87])\n    Encode_ ((item (o) of [y v]) / (25))\n    set [output v] to (join (output) [88])\n    Encode_ (item (o) of [type v])\n    set [output v] to (join (output) [89])\n    if <not <(item (o) of [sign v]) = [0]>> then\n        Encode_ (item (o) of [sign v])\n        set [output v] to (join (output) [90])\n    end\nend\n\nwhen I receive [decode level v]\nset [debugging v] to [True]\nDecode level\nset [debugging v] to [False]\n\ndefine Decode level\nset [players needs all coins to win v] to [0]\ndelete all of [cs v]\nset [@@level theme v] to []\nset [walljump v] to []\nset [jump height v] to []\nset [speed v] to []\nset [author v] to []\nset [u v] to [0]\nset [betw.output v] to []\nset [cut v] to [0]\nset [cut sign v] to [0]\nset [decoded v] to [0]\nrepeat (length of (input))\n    change [u v] by (<not < (input) contains [÷]?>> + (1))\n    Process decode\nend\nset [debugging v] to [False]\nset [checkpoint v] to [2]\nif <<[y v] contains []?> or <<[type v] contains []?> or <<(@@LEVEL theme) = []> or <<(walljump) = []> or <<(jump height) = []> or <<(speed) = []> or <<(speed) = []> or <(author) = []>>>>>>>> then\n    broadcast (error v)\nelse\n    if <(cut) = [1]> then\n        broadcast (cut-level-popup v)\n    else\n        if <(cut sign) = [1]> then\n            broadcast (cut-sign-popup v)\n        end\n    end\nend\n\nwhen I receive [error v]\nset [debugging v] to [False]\n\nwhen I receive [error v]\nset [speed v] to [2.1]\nset [jump height v] to [8]\nset [@@level theme v] to [g]\n\ndefine Process decode\nif < (input) contains [÷]?> then\n    switch costume to (item # of (letter (u) of (input)) in [unicodes v])\nelse\n    switch costume to (join (letter ((u) - (1)) of (input)) (letter (u) of (input)))\nend\nif < (costume [name v]) contains [=]?> then\n    set [betw.output v] to (join (betw.output) (letter (2) of (costume [name v])))\nelse\n    if <(costume [name v]) = [x_row]> then\n        if <(decoded) < [800]> then\n            if <([abs v] of (betw.output) ) < [100]> then\n                add ((betw.output) * (25)) to [x v]\n                add [] to [y v]\n                add [] to [type v]\n                add [] to [cs v]\n                add [0] to [sign v]\n            else\n                set [cut v] to [1]\n                stop [this script v]\n            end\n        else\n            set [cut v] to [1]\n        end\n    end\n    if <(costume [name v]) = [y_row]> then\n        if <(decoded) < [800]> then\n            if <([abs v] of (betw.output) ) < [100]> then\n                replace item (length of [y v]) of [y v] with ((betw.output) * (25))\n            else\n                delete (length of [x v]) of [x v]\n                delete (length of [y v]) of [y v]\n                delete (length of [type v]) of [type v]\n                delete (length of [cs v]) of [cs v]\n                delete (length of [sign v]) of [sign v]\n                set [cut v] to [1]\n                stop [this script v]\n            end\n        else\n            set [cut v] to [1]\n        end\n    end\n    if <(costume [name v]) = [mode_row]> then\n        if <(decoded) < [800]> then\n            replace item (length of [type v]) of [type v] with (betw.output)\n        else\n            set [cut v] to [1]\n        end\n    end\n    if <(costume [name v]) = [sign_row]> then\n        if <(decoded) < [800]> then\n            if <<<(betw.output) = [r]> or <(length of (betw.output)) = [2]>> or <<(betw.output) = [l]> or <<(betw.output) = [u]> or <<(betw.output) = [d]> or <(betw.output) = []>>>>> then\n                replace item (length of [sign v]) of [sign v] with (betw.output)\n            else\n                replace item (length of [sign v]) of [sign v] with []\n                set [cut sign v] to [1]\n            end\n        else\n            set [cut v] to [1]\n        end\n    end\n    if <(costume [name v]) = [cs]> then\n        if <(decoded) < [800]> then\n            replace item (length of [sign v]) of [cs v] with (betw.output)\n            change [decoded v] by (1)\n        else\n            set [cut v] to [1]\n        end\n    end\n    if <(costume [name v]) = [allcoins]> then\n        set [players needs all coins to win v] to (betw.output)\n    end\n    if <(costume [name v]) = [settings]> then\n        if <(@@LEVEL theme) = []> then\n            set [@@level theme v] to (betw.output)\n        else\n            if <(walljump) = []> then\n                set [walljump v] to (betw.output)\n            else\n                if <(jump height) = []> then\n                    set [jump height v] to (betw.output)\n                else\n                    if <(speed) = []> then\n                        set [speed v] to (betw.output)\n                    else\n                        if <(author) = []> then\n                            set [author v] to (betw.output)\n                        end\n                    end\n                end\n            end\n        end\n    end\n    set [betw.output v] to []\nend\n\ndefine Encode_ (input)\nset [i v] to [0]\nrepeat (length of (input))\n    change [i v] by (1)\n    if <not <<(letter (i) of (input)) = [\(]> or <(letter (i) of (input)) = [\)]>>> then\n        switch costume to (join [=] (letter (i) of (input)))\n        set [output v] to (join (output) (costume [number v]))\n    end\nend\n\n@Transitions\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\n\nwhen I receive [trans1 v]\nshow\nclear graphic effects\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [trans2 v]\nshow\nerase all\nclear graphic effects\nset [ghost v] effect to (0)\nwait (0) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    go to [front v] layer\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@q121235\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [settings v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [okay]\n    show variable [jump height v]\n    show variable [speed v]\n    create clone of (_myself_ v)\n    set [clone-id v] to [reset]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n    if <not <(mode) = [editor]>> then\n        set [open v] to [0]\n        delete this clone\n    end\nend\n\nwhen I receive [change_theme close v]\nhide variable [speed v]\nhide variable [jump height v]\nhide variable [players needs all coins to win v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\nset [open v] to [0]\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [reset]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        set [speed v] to [2.1]\n                        set [jump height v] to [8]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@walljump?\n\ndefine Off\nswitch costume to (costume1 v)\nrepeat (5)\n    change [brightness v] effect by (2)\n    next costume\nend\n\ndefine On\nswitch costume to (costume3 v)\nrepeat (1)\n    switch costume to (4 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (3 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (2 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (1 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    change [brightness v] effect by (2)\n    switch costume to (costume1 v)\nend\n\nset [change v] to [1]\n\nwhen I receive [side-bar v]\ngo to x: (114) y: (33)\nchange x by (\side-bar-x)\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    hide\n    wait until <(mode) = [editor]>\n    wait (0) seconds\n    set [ghost v] effect to (100)\n    if <(walljump) = [0]> then\n        switch costume to (costume1 v)\n    else\n        switch costume to (costume3 v)\n    end\n    show\n    go to [front v] layer\n    if <(mode) = [editor]> then\n        repeat (10)\n            go to x: (100000) y: (-40)\n            change [ghost v] effect by (-10)\n        end\n    end\n    repeat until <not <(mode) = [editor]>>\n        go [backward v] () layers\n        if <(walljump) = [0]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume3 v)\n        end\n        set [brightness v] effect to (0)\n        if <(joystick active?) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (-10)\n            end\n            if <<mouse down?> and <touching (mouse-pointer v)?>> then\n                set [brightness v] effect to (-20)\n                wait until <not <mouse down?>>\n                if <(answer) = (s)> then\n                    start sound [Select v]\n                    if <(walljump) = [0]> then\n                        set [walljump v] to [1]\n                        Off\n                    else\n                        set [walljump v] to [0]\n                        On\n                    end\n                end\n            end\n            set [s v] to (answer)\n        end\n    end\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@walljump?2\n\ndefine Off\nswitch costume to (costume1 v)\nrepeat (5)\n    change [brightness v] effect by (2)\n    next costume\nend\n\ndefine On\nswitch costume to (costume3 v)\nrepeat (1)\n    switch costume to (4 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (3 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (2 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    switch costume to (1 v)\n    change [brightness v] effect by (2)\nend\nrepeat (1)\n    change [brightness v] effect by (2)\n    switch costume to (costume1 v)\nend\n\nset [change v] to [1]\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    hide\n    wait until <(mode) = [editor]>\n    wait (0) seconds\n    set [ghost v] effect to (100)\n    if <(players needs all coins to win) = [0]> then\n        switch costume to (costume1 v)\n    else\n        switch costume to (costume3 v)\n    end\n    show\n    go to [front v] layer\n    if <(mode) = [editor]> then\n        repeat (10)\n            go to x: (100000) y: (-40)\n            change [ghost v] effect by (-10)\n        end\n    end\n    repeat until <not <(mode) = [editor]>>\n        go [backward v] (1) layers\n        if <(players needs all coins to win) = [0]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume3 v)\n        end\n        set [brightness v] effect to (0)\n        if <(joystick active?) = [0]> then\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (-10)\n            end\n            if <<mouse down?> and <touching (mouse-pointer v)?>> then\n                set [brightness v] effect to (-20)\n                wait until <not <mouse down?>>\n                if <(answer) = (s)> then\n                    start sound [Select v]\n                    if <(players needs all coins to win) = [0]> then\n                        set [players needs all coins to win v] to [1]\n                        Off\n                    else\n                        set [players needs all coins to win v] to [0]\n                        On\n                    end\n                end\n            end\n            set [s v] to (answer)\n        end\n    end\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [side-bar v]\ngo to x: (114) y: (-56)\nchange x by (\side-bar-x)\n\n@Share\n\nif <[] = [1]> then\n\nset [@username v] to [TImMcCool]\n\nif <(open) = [1]> then\n    change [ghost v] effect by (-10)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (40)\n            wait until <not <mouse down?>>\n            broadcast (close v)\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [init-home v]\nhide\ndelete this clone\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [share-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    if <(mode) = [...]> then\n                        set [mode v] to [spotlight]\n                    end\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            set [paused2 v] to [1]\n                            if <not <(mode) = [editor]>> then\n                                set [mode v] to [-]\n                            end\n                            broadcast (shared v)\n                            broadcast (change_theme close v)\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@After Share Popup\n\ngo to [back v] layer\nswitch costume to (win v)\neffect 1\nforever\n    if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n        broadcast (close v) and wait\n        set [open v] to [0]\n        stop [this script v]\n    end\n    if <(open) = [0]> then\n        stop [this script v]\n    end\nend\n\nbroadcast (popup0 v)\n\nset [clone-id v] to [bg]\n\ncreate clone of (_myself_ v)\n\nwhen I receive [home v]\nbroadcast (close v)\n\nwhen I start as a clone\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\nwhen I start as a clone\nforever\n    if <not <(mode) = [level-shared]>> then\n        broadcast (close v)\n        stop [this script v]\n    end\nend\n\ndefine sb\nset size to (100) %\n\nwhen I receive [shared v]\nif <(open) = [0]> then\n    broadcast (trans1 v) and wait\n    set [theme v] to [ui]\n    set [mode v] to [level-shared]\n    wait (0.25) seconds\n    broadcast (trans2 v)\n    if <(⛈️ STATUS) = [1]> then\n        broadcast (loading v)\n        wait until <not <(⛈️ STATUS) = [1]>>\n        broadcast (loading-end v)\n    end\n    set [___level_to_share v] to (@@LEVEL id)\n    broadcast (@sharelevel v)\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [open v] to [1]\n    set [clone-id v] to [win]\n    create clone of (_myself_ v)\n    set [clone-id v] to [close]\n    create clone of (_myself_ v)\n    set [clone-id v] to [continue]\n    create clone of (_myself_ v)\n    set [clone-id v] to [community]\n    create clone of (_myself_ v)\n    wait (0.5) seconds\n    broadcast (init UI v)\nend\n\nwhen I receive [close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\nforever\n    if <<(clone-id) = [close]> or <(clone-id) = [community]>> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    set [mode v] to [community]\n                    broadcast (community v)\n                    broadcast (close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [continue]> then\n            if <(open) = [1]> then\n                change [ghost v] effect by (-10)\n                if <touching (mouse-pointer v)?> then\n                    set [ghost v] effect to (50)\n                    if <mouse down?> then\n                        set [ghost v] effect to (40)\n                        wait until <not <mouse down?>>\n                        broadcast (loadlevel-aftershare v)\n                        broadcast (close v)\n                        stop [this script v]\n                    end\n                end\n            end\n        else\n            if <(clone-id) = [bg]> then\n                if <(open) = [1]> then\n                    go to [back v] layer\n                    set size to (100) %\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen I receive [close v]\nset [open v] to [0]\n\nwhen I receive [close v]\nwait (0.1) seconds\n\nwhen [timer v] > (0)\nhide\n\n@Sprite6\n\nwhen flag clicked\nforever\n    hide\n    set [ghost v] effect to (100)\n    wait until <(mode) = [editor]>\n    repeat until <not <(mode) = [editor]>>\n        show\n        set [brightness v] effect to (0)\n        change [ghost v] effect by (-10)\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (-10)\n            if <mouse down?> then\n                set [brightness v] effect to (-20)\n                wait until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n                if <touching (mouse-pointer v)?> then\n                    if <(⛈️ STATUS) = [1]> then\n                        broadcast (note-stillsaving v)\n                    else\n                        broadcast (leave v)\n                    end\n                end\n            end\n        end\n    end\nend\n\n@Leave\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [editor-to-home v]\nset [mode v] to [...]\nbroadcast (trans1 v)\nwait (0.4) seconds\nset [mode v] to [home]\nbroadcast (trans2 v)\nset [theme v] to [ui]\nerase all\nbroadcast (init-home v)\nbroadcast (init UI v)\nbroadcast (change_theme close v)\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [home v]\nhide\ndelete this clone\n\nwhen I start as a clone\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        hide\n        stop [other scripts in sprite v]\n    end\nend\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [leave v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n                        if <touching (mouse-pointer v)?> then\n                            broadcast (editor-to-home v)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Unshare\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [unshare-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    if <(mode) = [...]> then\n                        set [mode v] to [spotlight]\n                    end\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            set [paused2 v] to [1]\n                            set [@@level shared v] to [False]\n                            set [___level_to_share v] to (@@LEVEL id)\n                            broadcast (@unsharelevel v)\n                            broadcast (change_theme close v)\n                            if <(mode) = [...]> then\n                                set [mode v] to [spotlight]\n                            end\n                            if <(mode) = [.....]> then\n                                broadcast (loading v)\n                                wait (0.1) seconds\n                                broadcast (@get-your-levels-bundle v) and wait\n                            end\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [--interaction opened v] to [0]\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [toolbar_y v] to [200]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nset [mode v] to [spotlight2]\n\nset [--interaction opened v] to [0]\n\nset [--interaction opened v] to [0]\n\nwhen [timer v] > (0)\nhide\n\n@Exceedinglimit\n\nset [clone-id v] to [bg]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\nwhen I receive [close v]\nwait (0.1) seconds\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen I receive [cut-level-popup v]\nif <(open) = [0]> then\n    if <(@@LEVEL author) = (@username)> then\n        go to x: (0) y: (0)\n        stop [other scripts in sprite v]\n        set [\side-bar opened v] to [0]\n        set [paused2 v] to [1]\n        set [open v] to [1]\n        set [clone-id v] to [popup]\n        create clone of (_myself_ v)\n        set [clone-id v] to [okay]\n        create clone of (_myself_ v)\n    end\nend\n\nwhen I receive [close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (25)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    broadcast (close v)\n                    if <([cut sign v] of [encoder / decoder v]) = [1]> then\n                        broadcast (cut-sign-popup v)\n                    end\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen I receive [close v]\nset [open v] to [0]\n\nwhen [timer v] > (0)\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Exceedinglimit2\n\nset [clone-id v] to [bg]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen I receive [cut-sign-popup v]\nif <(open) = [0]> then\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [\side-bar opened v] to [0]\n    set [paused2 v] to [1]\n    set [open v] to [1]\n    set [clone-id v] to [popup]\n    create clone of (_myself_ v)\n    set [clone-id v] to [okay]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [closecutsign v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (25)\nend\nhide\nset [open v] to [0]\nset [paused2 v] to [0]\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    broadcast (closecutsign v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [close v]\nset [paused2 v] to [0]\n\nwhen [timer v] > (0)\nhide\n\n@ParticlesWin\n\nwhen I start as a clone\nshow\neff (pick random (-10) to (10))\n\ndefine eff (x)\nset [-1 v] to [1]\nset [color v] effect to (0)\nset [ghost v] effect to (20)\nforever\n    go to [front v] layer\n    change x by ((x) * (-1))\n    change y by (y)\n    change [y v] by (-2)\n    if <touching (_edge_ v)?> then\n        if <(-1) = [1]> then\n            set [-1 v] to [-1]\n        else\n            set [-1 v] to [1]\n        end\n    end\n    if <(y position) < [-170]> then\n        delete this clone\n    end\nend\n\nwhen flag clicked\nset size to (80) %\ngo to x: (0) y: (-180)\nhide\n\nwhen I receive [win v]\nset [y v] to [30]\nswitch costume to (costume1 v)\ngo to x: (pick random (-200) to (200)) y: (-180)\nrepeat (10)\n    create clone of (_myself_ v)\nend\nwait (0.2) seconds\ngo to x: (pick random (-200) to (200)) y: (-180)\nrepeat (10)\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@UndoRedo\n\nwhen flag clicked\nforever\n    hide\n    set [ghost v] effect to (100)\n    wait until <(mode) = [editor]>\n    create clone of (_myself_ v)\n    repeat until <not <(mode) = [editor]>>\n        go to x: (190) y: (-167)\n        switch costume to (undo v)\n        if <(@EDITOR portal lock) = [0]> then\n            show\n        else\n            hide\n        end\n        set [brightness v] effect to (0)\n        change [ghost v] effect by (-10)\n        if <[2] > (pos_in_histr)> then\n            set [ghost v] effect to (80)\n        end\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (-10)\n            if <mouse down?> then\n                set [brightness v] effect to (-20)\n                wait until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n                if <touching (mouse-pointer v)?> then\n                    broadcast (p v)\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nrepeat until <not <(mode) = [editor]>>\n    go to x: (220) y: (-167)\n    if <(@EDITOR portal lock) = [0]> then\n        show\n    else\n        hide\n    end\n    switch costume to (redo v)\n    set [brightness v] effect to (0)\n    change [ghost v] effect by (-10)\n    if <(pos_in_histr) = (length of [history v])> then\n        set [ghost v] effect to (80)\n    end\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (-10)\n        if <mouse down?> then\n            set [brightness v] effect to (-20)\n            wait until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n            if <touching (mouse-pointer v)?> then\n                broadcast (n v)\n            end\n        end\n    end\nend\ndelete this clone\n\n@in potion\n\nwhen flag clicked\nset [last_water v] to [0]\ngo to x: (0) y: (-30000)\nhide\n\nwhen I start as a clone\nset [y v] to (pick random (10) to (15))\nshow\neff (pick random (-3) to (3))\n\ndefine eff (x)\nset [-1 v] to [1]\nset [color v] effect to (0)\nset [ghost v] effect to (pick random (40) to (80))\nset [brightness v] effect to (0)\nset size to (pick random (40) to (90)) %\nforever\n    go to [front v] layer\n    change x by ((x) * (-1))\n    change y by (y)\n    change [y v] by (-0.5)\n    if <touching (_edge_ v)?> then\n        if <(-1) = [1]> then\n            set [-1 v] to [-1]\n        else\n            set [-1 v] to [1]\n        end\n    end\n    if <(y position) < [-170]> then\n        delete this clone\n    end\nend\n\nwhen I receive [potion v]\nif <((last_potion) + (3)) < (@@tick)> then\n    set [last_potion v] to (@@tick)\n    start sound [Splash v]\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\n    go to x: ([x position v] of [hitbox v]) y: (-3000)\n    create clone of (_myself_ v)\nend\nset [last_potion v] to (@@tick)\n\nwhen flag clicked\nset volume to (50) %\n\nwhen [timer v] > (0)\nhide\n\n@levellimit\n\nset [clone-id v] to [bg]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen I receive [levellimit-popup v]\nif <(open) = [0]> then\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [\side-bar opened v] to [0]\n    set [paused2 v] to [1]\n    set [open v] to [1]\n    set [clone-id v] to [popup]\n    create clone of (_myself_ v)\n    set [clone-id v] to [okay]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [closecutsign v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (25)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    broadcast (closecutsign v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [close v]\nset [paused2 v] to [0]\n\nwhen [timer v] > (0)\nhide\n\n@Title\n\nwhen I receive [close-headbar v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [shutdownnotice-close v]\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [\[intro\]stop v]\nset [ghost v] effect to (100)\nforever\n    if <<(mode) = [editor]> or <(mode) = [playing]>> then\n        hide\n    else\n        clear graphic effects\n        show\n        if <touching (mouse-pointer v)?> then\n            change size by (((size) - (110)) / (-2))\n            if <mouse down?> then\n                broadcast (failedtoload close v)\n                repeat until <not <mouse down?>>\n                    change size by (((size) - (100)) / (-2))\n                end\n                if <touching (mouse-pointer v)?> then\n                    if <not <(mode) = [home]>> then\n                        set [theme v] to [ui]\n                        set [mode v] to [home]\n                        broadcast (home v)\n                    end\n                end\n            end\n        else\n            change size by (((size) - (100)) / (-2))\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\n@Delete\n\nif <[] = [1]> then\n\nset [@username v] to [TImMcCool]\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [init-home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [delete-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            set [paused2 v] to [1]\n                            if <not <(mode) = [editor]>> then\n                                set [mode v] to [-]\n                            end\n                            broadcast (@deletelevel v)\n                            broadcast (init-home v)\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Messages bar\n\nwhen flag clicked\nhide\nset [____________ id v] to [main]\n\nwhen I receive [messages-site v]\nif <(____________ id) = [main]> then\n    broadcast (@messages v)\n    broadcast (loading v)\n    switch costume to (costume1 v)\n    show\n    set [@@messages offset v] to [1]\n    set [@@tab v] to [unread]\n    set [____________ id v] to [up]\n    create clone of (_myself_ v)\n    set [____________ id v] to [down]\n    create clone of (_myself_ v)\n    set [____________ id v] to [up-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [down-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [read]\n    create clone of (_myself_ v)\n    set [____________ id v] to [read-icon]\n    create clone of (_myself_ v)\n    set [____________ id v] to [reload]\n    create clone of (_myself_ v)\n    set [____________ id v] to [reload-icon]\n    create clone of (_myself_ v)\n    wait (1) seconds\n    set [____________ id v] to [main]\nend\n\nwhen I start as a clone\nset [ghost v] effect to (100)\nset [_________ brightness v] to [10]\nset y to (-70)\nif < (____________ id) contains [icon]?> then\nforever\n    go to [front v] layer\n    show\n    if <(⛈️ STATUS) = [2]> then\n        set x to ((side-bar-x) - (120))\n        change [ghost v] effect by (-10)\n        switch costume to (____________ id)\n        show\n        if < (____________ id) contains [icon]?> then\n            if <<(@@MESSAGES offset) < [4]> and < (____________ id) contains [up]?>> then\n                set [ghost v] effect to (93)\n            end\n            if <<(@@tab) = [unread]> and < (____________ id) contains [up]?>> then\n                set [ghost v] effect to (93)\n            end\n            if <<([🌤️response_output v] of [cloud requests v]) = [-2]> and < (____________ id) contains [down]?>> then\n                set [ghost v] effect to (93)\n            end\n            go to [front v] layer\n            go [backward v] (1) layers\n            if < (____________ id) contains (__________top-bar-touching)?> then\n                if <not <<(@@tab) = [unread]> and < (____________ id) contains [up]?>>> then\n                    if <not <<([🌤️response_output v] of [cloud requests v]) = [-2]> and < (____________ id) contains [down]?>>> then\n                        if < (____________ id) contains [down]?> then\n                            change y by (((y position) - (-72)) / (-3))\n                        else\n                            change y by (((y position) - (-68)) / (-3))\n                        end\n                    end\n                end\n            else\n                change y by (((y position) - (-70)) / (-3))\n            end\n        else\n            if <touching (mouse-pointer v)?> then\n                set [__________top-bar-touching v] to (____________ id)\n                change [_________ brightness v] by (-2)\n                if <(_________ brightness) < [0]> then\n                    set [_________ brightness v] to [0]\n                end\n            else\n                if <(__________top-bar-touching) = (____________ id)> then\n                    set [__________top-bar-touching v] to [none]\n                end\n                change [_________ brightness v] by (2)\n                if <[10] < (_________ brightness)> then\n                    set [_________ brightness v] to [10]\n                end\n            end\n            if <not <<(@@tab) = [unread]> and < (____________ id) contains [up]?>>> then\n                if <not <<([🌤️response_output v] of [cloud requests v]) = [-2]> and < (____________ id) contains [down]?>>> then\n                    set [brightness v] effect to (((_________ brightness) + (-10)) * (0.5))\n                end\n            end\n            if <<(@@MESSAGES offset) < [4]> and < (____________ id) contains [up]?>> then\n                set [ghost v] effect to (80)\n            end\n            if <<(@@tab) = [unread]> and < (____________ id) contains [up]?>> then\n                set [ghost v] effect to (80)\n            end\n            if <<([🌤️response_output v] of [cloud requests v]) = [-2]> and < (____________ id) contains [down]?>> then\n                set [ghost v] effect to (80)\n            end\n            go to [front v] layer\n            go [backward v] (4) layers\n            if <mouse down?> then\n                wait until <not <mouse down?>>\n                if <touching (mouse-pointer v)?> then\n                    if <(____________ id) = [up]> then\n                        if <[4] < (@@MESSAGES offset)> then\n                            if <not <(@@tab) = [unread]>> then\n                                change [@@messages offset v] by (-4)\n                                broadcast (@old-messages v)\n                                broadcast (loading v)\n                            end\n                        end\n                    end\n                    if <(____________ id) = [reload]> then\n                        if <(@@tab) = [unread]> then\n                            broadcast (@messages v)\n                        else\n                            broadcast (@old-messages v)\n                        end\n                        broadcast (loading v)\n                    end\n                    if <(____________ id) = [read]> then\n                        broadcast (@clear all messages v)\n                    end\n                    if <(____________ id) = [down]> then\n                        if <not <<([🌤️response_output v] of [cloud requests v]) = [-2]> and < (____________ id) contains [down]?>>> then\n                            if <(@@tab) = [unread]> then\n                                broadcast (@clear message page v)\n                                broadcast (loading v)\n                            else\n                                change [@@messages offset v] by (4)\n                                broadcast (@old-messages v)\n                                broadcast (loading v)\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    else\n        hide\n    end\n    if <not <(mode) = [messages]>> then\n        delete this clone\n    end\n    if <(@@tab) = [read]> then\n        if < (____________ id) contains [reload]?> then\n            delete this clone\n        end\n        if < (____________ id) contains [read]?> then\n            delete this clone\n        end\n    end\nend\n\nwhen I receive [trans1 v]\nset [\side-bar opened v] to [0]\ndelete this clone\n\nwhen flag clicked\nforever\n    switch costume to (costume2 v)\n    if  then\n        change [side-bar-x v] by ((side-bar-x) / (-3))\n        show\n        set [ghost v] effect to (10)\n    else\n        change [side-bar-x v] by (((side-bar-x) - (150)) / (-3))\n        show\n    end\n    set x to (side-bar-x)\n    go to [back v] layer\nend\n\nwhen I receive [init-home v]\ndelete this clone\n\nwhen I receive [home v]\ndelete this clone\n\n@community\n\nwhen flag clicked\nhide\n\nwhen I receive [community v]\nswitch costume to (costume1 v)\nshow\nset [@@page v] to [1]\nset [@@recent sub_page v] to [1]\nset [____________ id v] to [played-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [recent-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [toploved-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [popular-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [premium-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [topremixed-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [feed-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [feed]\ncreate clone of (_myself_ v)\nset [____________ id v] to [played]\ncreate clone of (_myself_ v)\nset [____________ id v] to [recent]\ncreate clone of (_myself_ v)\nset [____________ id v] to [toploved]\ncreate clone of (_myself_ v)\nset [____________ id v] to [popular]\ncreate clone of (_myself_ v)\nset [____________ id v] to [premium]\ncreate clone of (_myself_ v)\nset [____________ id v] to [topremixed]\ncreate clone of (_myself_ v)\nset [@@page v] to [1]\nset [@@tab v] to [recent]\nset [⛈️ status v] to [1]\nbroadcast (@get-public-levels-bundle v)\nbroadcast (loading v)\n\nwhen I start as a clone\nset [ghost v] effect to (100)\nset [_________ brightness v] to [10]\nset y to (-30)\nif < (____________ id) contains [icon]?> then\nforever\n    set [fisheye v] effect to (0)\n    go to [front v] layer\n    show\n    if <(⛈️ STATUS) = [2]> then\n        set x to ((side-bar-x) - (200))\n        broadcast (loading-end v)\n        change [ghost v] effect by (-10)\n        switch costume to (____________ id)\n        show\n        if < (____________ id) contains [icon]?> then\n            go to [front v] layer\n            go [backward v] (1) layers\n            if < (____________ id) contains (__________top-bar-touching)?> then\n                clear graphic effects\n                if < (____________ id) contains [premium]?> then\n                    change size by (-4)\n                else\n                    change [fisheye v] effect by (-7)\n                end\n                set [eff1val_ v] to [-5]\n                set [eff1vel_ v] to [15]\n                repeat (25)\n                    sb\n                    set [fisheye v] effect to ((eff1val_) * (5))\n                    if < (____________ id) contains [feed]?> then\n                        set [fisheye v] effect to ((eff1val_) * (20))\n                    end\n                    if < (____________ id) contains [premium]?> then\n                        set [fisheye v] effect to (0)\n                        set size to ((100) + ((eff1val_) * (-4))) %\n                    end\n                end\n                wait until <not < (____________ id) contains (__________top-bar-touching)?>>\n            else\n                change y by (((y position) - (-30)) / (-9))\n            end\n        else\n            set y to (-30)\n            if <touching (mouse-pointer v)?> then\n                set [__________top-bar-touching v] to (____________ id)\n                change [_________ brightness v] by (-2)\n                if <(_________ brightness) < [0]> then\n                    set [_________ brightness v] to [0]\n                end\n            else\n                if <(__________top-bar-touching) = (____________ id)> then\n                    set [__________top-bar-touching v] to [none]\n                end\n                change [_________ brightness v] by (2)\n                if <[10] < (_________ brightness)> then\n                    set [_________ brightness v] to [10]\n                end\n            end\n            set [brightness v] effect to (((_________ brightness) + (-10)) * (0.5))\n            go to [front v] layer\n            go [backward v] (10) layers\n            if <(____________ id) = (@@tab)> then\n                set [brightness v] effect to (-11)\n            end\n            if <mouse down?> then\n                wait until <not <mouse down?>>\n                if <touching (mouse-pointer v)?> then\n                    broadcast (failedtoload close v)\n                    broadcast (@get-public-levels-bundle v)\n                    broadcast (loading v)\n                    set [@@page v] to [1]\n                    set [@@recent sub_page v] to [1]\n                    set [@@tab v] to (____________ id)\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (50)\n        change [ghost v] effect by (-30)\n        go [backward v] (8) layers\n    end\n    if <not <(mode) = [community]>> then\n        delete this clone\n    end\nend\n\nwhen I receive [trans1 v]\nset [\side-bar opened v] to [0]\ndelete this clone\n\nwhen flag clicked\nforever\n    switch costume to (costume2 v)\n    if <<(mode) = [mystuff]> or > then\n        change [side-bar-x v] by ((side-bar-x) / (-3))\n        show\n        set [ghost v] effect to (10)\n    else\n        hide\n    end\n    set x to (side-bar-x)\n    go to [back v] layer\nend\n\nif < (____________ id) contains [down]?> then\n    change y by (((y position) - (-30)) / (-9))\nelse\n    change y by (((y position) - (-29)) / (-3))\nend\n\nwhen I start as a clone\nforever\n    if < (____________ id) contains [icon]?> then\n        go to [front v] layer\n        go [backward v] (1) layers\n        if < (____________ id) contains [premium]?> then\n            go to x: (210) y: (35)\n        end\n    end\nend\n\ndefine sb\nset [eff1vel_ v] to (((eff1vel_) * (0.6)) + ((((0) + ()) - (eff1val_)) * (0.15)))\nchange [eff1val_ v] by (eff1vel_)\n\n@mystuff bar\n\nwhen flag clicked\nhide\n\nwhen I receive [mystuff v]\nswitch costume to (costume1 v)\nshow\nbroadcast (@get-your-levels-bundle v)\nbroadcast (loading v)\nset [____________ id v] to [all]\ncreate clone of (_myself_ v)\nset [____________ id v] to [shared]\ncreate clone of (_myself_ v)\nset [____________ id v] to [unshare/d]\ncreate clone of (_myself_ v)\nset [____________ id v] to [all-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [shared-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [unshare/d-icon]\ncreate clone of (_myself_ v)\nset [____________ id v] to [community]\ncreate clone of (_myself_ v)\nset [@@page v] to [1]\nhide\n\nwhen I start as a clone\nset [ghost v] effect to (100)\nset [_________ brightness v] to [10]\nset y to (-30)\nforever\n    go to [front v] layer\n    show\n    if <(⛈️ STATUS) = [2]> then\n        set x to ((side-bar-x) - (85))\n        broadcast (loading-end v)\n        change [ghost v] effect by (-10)\n        switch costume to (____________ id)\n        show\n        if < (____________ id) contains [icon]?> then\n            go to [front v] layer\n            go [backward v] (1) layers\n            if < (____________ id) contains (__________top-bar-touching)?> then\n                clear graphic effects\n                repeat (3)\n                    change [fisheye v] effect by (-7)\n                end\n                set [eff1val_ v] to [-5]\n                set [eff1vel_ v] to [15]\n                repeat (25)\n                    sb\n                    set [fisheye v] effect to ((eff1val_) * (8))\n                end\n                wait until <not < (____________ id) contains (__________top-bar-touching)?>>\n            end\n        else\n            if <touching (mouse-pointer v)?> then\n                set [__________top-bar-touching v] to (____________ id)\n                change [_________ brightness v] by (-2)\n                if <(_________ brightness) < [0]> then\n                    set [_________ brightness v] to [0]\n                end\n                if <mouse down?> then\n                    wait until <not <mouse down?>>\n                    if <touching (mouse-pointer v)?> then\n                        broadcast (failedtoload close v)\n                        if <(____________ id) = [community]> then\n                            set [mode v] to [community]\n                            broadcast (community v)\n                        else\n                            set [@@tab v] to (____________ id)\n                            if <(@@tab) = [unshare/d]> then\n                                set [@@tab v] to [unshared]\n                            end\n                            set [⛈️ status v] to [1]\n                            set [@@page v] to [1]\n                            hide\n                            broadcast (@get-your-levels-bundle v) and wait\n                        end\n                    end\n                end\n            else\n                if <(__________top-bar-touching) = (____________ id)> then\n                    set [__________top-bar-touching v] to [none]\n                end\n                change [_________ brightness v] by (2)\n                if <[10] < (_________ brightness)> then\n                    set [_________ brightness v] to [10]\n                end\n            end\n            set [brightness v] effect to (((_________ brightness) + (-10)) * (0.5))\n            go to [front v] layer\n            go [backward v] (10) layers\n            if <(____________ id) = (@@tab)> then\n                set [brightness v] effect to (-11)\n            end\n        end\n    else\n        hide\n    end\n    if <not <(mode) = [mystuff]>> then\n        if <<(mode) = [...]> or <(mode) = [.....]>> then\n            hide\n        else\n            delete this clone\n        end\n    end\nend\n\nwhen I receive [trans1 v]\nset [\side-bar opened v] to [0]\ndelete this clone\n\ndefine sb\nset [eff1vel_ v] to (((eff1vel_) * (0.6)) + ((((0) + ()) - (eff1val_)) * (0.15)))\nchange [eff1val_ v] by (eff1vel_)\n\n@Delete2\n\nif <[] = [1]> then\n\nset [@username v] to [TImMcCool]\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [init-home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [delete-mystuff-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\nend\n\nwhen I receive [change_theme close v]\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    set [mode v] to [mystuff]\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            set [paused2 v] to [1]\n                            set [mode v] to [mystuff]\n                            broadcast (delete-from-mystuff v)\n                            broadcast (change_theme close v)\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen [timer v] > (0)\nhide\n\n@Up/Down Buttons User Levels\n\nwhen I start as a clone\nyb\n\nwhen flag clicked\nyb\n\nwhen flag clicked\nset size to (100) %\nset [id v] to [1]\ncreate clone of (_myself_ v)\nset [id v] to [0]\nbutton\n\ndefine button\nforever\n    if << (mode) contains [userlevels]?> or <<<(mode) = [userbundle]> or <(mode) = [mystuff]>> or <<(mode) = [more]> or <<(mode) = [search]> or <(mode) = [community]>>>>> then\n        change [ghost v] effect by (-10)\n        hide\n        if <(⛈️ STATUS) = [2]> then\n            point in direction (0)\n            show\n            if <(mode) = [userbundle]> then\n                if <(id) = [0]> then\n                    switch costume to (left v)\n                    go to x: (210) y: (-160)\n                end\n                if <(id) = [1]> then\n                    switch costume to (right v)\n                    go to x: (170) y: (-160)\n                end\n            else\n                if <(id) = [0]> then\n                    switch costume to (left v)\n                    go to x: ((57) + ()) y: (-155)\n                end\n                if <(id) = [1]> then\n                    switch costume to (right v)\n                    go to x: ((57) + ()) y: (-100)\n                end\n            end\n            if <(id) = [2]> then\n            show\n            if <(id) = [1]> then\n                if <(@@page) = [1]> then\n                    hide\n                end\n            end\n            if <(id) = [0]> then\n                if <(mode) = [userbundle]> then\n                    if <(item ((((@@page) + (1)) * (15)) - (14)) of [@decoded_response v]) = []> then\n                        hide\n                    end\n                else\n                    if <(item ((((@@page) + (1)) * (24)) - (23)) of [@decoded_response v]) = []> then\n                        hide\n                    end\n                end\n            end\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (-10)\n                if <mouse down?> then\n                    set [brightness v] effect to (-20)\n                    wait until <not <<mouse down?> and <touching (mouse-pointer v)?>>>\n                    if <touching (mouse-pointer v)?> then\n                        if <(id) = [1]> then\n                            if <not <(@@page) = [1]>> then\n                                change [@@page v] by (-1)\n                                set [item-y v] to [100]\n                            end\n                        end\n                        if <(id) = [0]> then\n                            if <(mode) = [userbundle]> then\n                                if <not <(item ((((@@page) + (1)) * (15)) - (14)) of [@decoded_response v]) = []>> then\n                                    change [@@page v] by (1)\n                                    set [item-y v] to [-100]\n                                end\n                            else\n                                if <not <(item ((((@@page) + (1)) * (24)) - (23)) of [@decoded_response v]) = []>> then\n                                    change [@@page v] by (1)\n                                    set [item-y v] to [-100]\n                                end\n                            end\n                        end\n                        change size by (-150)\n                        set [ghost v] effect to (100)\n                    end\n                end\n            else\n                set [brightness v] effect to (0)\n            end\n        else\n            set size to (0) %\n        end\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nbutton\n\ndefine yb\nforever\n    set [bounce v] to (((bounce) * (0.6)) + (((size) - ((120) + (<touching (mouse-pointer v)?> * (25)))) * (-0.2)))\n    change size by ([floor v] of (bounce) )\nend\n\nwhen I receive [update-x v]\nchange x by ([x position v] of [home v])\n\n@StillSaving\n\nwhen I start as a clone\nforever\n    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n        hide\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [trans1 v]\nset [open v] to [0]\n\nwhen I receive [home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [note-stillsaving v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nset [clone-id v] to []\ncreate clone of (_myself_ v)\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [yes]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen I receive [editor-to-home v]\nset [mode v] to [...]\nbroadcast (trans1 v)\nwait (0.4) seconds\nset [mode v] to [home]\nbroadcast (trans2 v)\nset [theme v] to [ui]\nerase all\nbroadcast (init-home v)\nbroadcast (init UI v)\nbroadcast (change_theme close v)\n\nwhen [timer v] > (0)\nhide\n\n@Sprite1\n\n@Sprite5\n\nwhen flag clicked\nforever\n    if <<(@EDITOR portal lock) = [0]> or <not <(mode) = [editor]>>> then\n        hide\n        if <(blockselected) = [16]> then\n            set [blockselected v] to [15]\n        end\n    else\n        show\n        set [blockselected v] to [16]\n    end\nend\n\n@Sprite7\n\nwhen flag clicked\nforever\n    if <<not <(mode) = [editor]>> or <(@EDITOR key lock) = [0]>> then\n        hide\n        if <(blockselected) = [17]> then\n            set [blockselected v] to [12]\n        end\n    else\n        show\n        switch costume to (main v)\n        if <(blockselected) = [12]> then\n            create clone of (_myself_ v)\n            set [blockselected v] to [17]\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n    switch costume to (button v)\n    show\n    go to x: (0) y: (0)\n    clear graphic effects\n    go to [front v] layer\n    if <<not <(mode) = [editor]>> or <(@EDITOR key lock) = [0]>> then\n        delete this clone\n    end\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (35)\n        if <mouse down?> then\n            set [ghost v] effect to (70)\n            wait until <not <<touching (mouse-pointer v)?> and <mouse down?>>>\n            if <touching (mouse-pointer v)?> then\n                set [@editor key lock v] to [0]\n            end\n        end\n    end\nend\n\n@UnshareDueToEdit\n\nif <[] = [1]> then\n\nset [@username v] to [TImMcCool]\n\nif <(open) = [1]> then\n    change [ghost v] effect by (-10)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (40)\n            wait until <not <mouse down?>>\n            broadcast (close v)\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [init-home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [unshareduetoedit-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nset [paused2 v] to [0]\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    if <not <(mode) = [playing]>> then\n                        set [mode v] to [spotlight]\n                    end\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            if <(mode) = [playing]> then\n                                set [paused2 v] to [0]\n                                set [mode v] to [editor]\n                                set [scroll x v] to [0]\n                                set [scroll y v] to [0]\n                                delete all of [collected_keys v]\n                                delete all of [collected_coins v]\n                            else\n                                broadcast (_spotlight to editor v)\n                            end\n                            broadcast (change_theme close v)\n                            stop [this script v]\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@UnshareDueToRename\n\nif <[] = [1]> then\n\nif <(open) = [1]> then\n    change [ghost v] effect by (-10)\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n        if <mouse down?> then\n            set [ghost v] effect to (40)\n            wait until <not <mouse down?>>\n            broadcast (close v)\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nswitch costume to (clone-id)\neffect 1\n\nwhen I receive [init-home v]\nhide\ndelete this clone\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\n\nwhen I receive [unshareduetorename-popup v]\nif <(open) = [0]> then\n    stop [other scripts in sprite v]\n    set [paused2 v] to [1]\n    set [\side-bar opened v] to [0]\n    set [open v] to [1]\n    set [clone-id v] to [yes]\n    create clone of (_myself_ v)\n    set [clone-id v] to [no]\n    create clone of (_myself_ v)\n    set [clone-id v] to []\n    go to [back v] layer\n    switch costume to (costume1 v)\n    effect 1\n    forever\n        if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n            broadcast (change_theme close v) and wait\n            set [open v] to [0]\n            stop [this script v]\n        end\n        if <(open) = [0]> then\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [change_theme close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nset [ghost v] effect to (100)\nset [brightness v] effect to (5)\nset size to (20) %\nrepeat (20)\n    change [ghost v] effect by (-10)\n    sb\nend\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [no]> then\n        if <(open) = [1]> then\n            clear graphic effects\n            if <touching (mouse-pointer v)?> then\n                set [brightness v] effect to (16)\n                if <mouse down?> then\n                    set [brightness v] effect to (30)\n                    wait until <not <mouse down?>>\n                    broadcast (change_theme close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [yes]> then\n            if <(open) = [1]> then\n                clear graphic effects\n                if <touching (mouse-pointer v)?> then\n                    set [brightness v] effect to (10)\n                    if <mouse down?> then\n                        set [brightness v] effect to (20)\n                        wait until <not <mouse down?>>\n                        if <touching (mouse-pointer v)?> then\n                            broadcast (\[SPOTLIGHT\] rename v)\n                            broadcast (change_theme close v)\n                            stop [this script v]\n                        end\n                        stop [this script v]\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen I receive [change_theme close v]\nwait (0.1) seconds\nset [paused2 v] to [0]\n\nwhen I receive [change_theme close v]\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\n@After Name Edit\n\ngo to [back v] layer\nswitch costume to (win v)\neffect 1\nforever\n    if <<mouse down?> and <not <touching (mouse-pointer v)?>>> then\n        broadcast (close v) and wait\n        set [open v] to [0]\n        stop [this script v]\n    end\n    if <(open) = [0]> then\n        stop [this script v]\n    end\nend\n\nbroadcast (popup0 v)\n\nset [clone-id v] to [bg]\n\ncreate clone of (_myself_ v)\n\nwhen I receive [home v]\nbroadcast (close v)\n\nwhen I start as a clone\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\ndefine sb\nset size to (100) %\n\nwhen I receive [edit-name-comment v]\nif <(open) = [0]> then\n    delete all of [new level name v]\n    add (answer) to [new level name v]\n    hide list [new level name v]\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [open v] to [1]\n    set [clone-id v] to [win]\n    create clone of (_myself_ v)\n    set [clone-id v] to [continue]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\nforever\n    if <<(clone-id) = [close]> or <(clone-id) = [community]>> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    set [mode v] to [community]\n                    broadcast (community v)\n                    broadcast (close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [continue]> then\n            if <(open) = [1]> then\n                change [ghost v] effect by (-10)\n                if <touching (mouse-pointer v)?> then\n                    set [ghost v] effect to (50)\n                    if <mouse down?> then\n                        set [ghost v] effect to (40)\n                        wait until <not <mouse down?>>\n                        show list [new level name v]\n                        broadcast (@edit-name v)\n                        broadcast (loading v)\n                        broadcast (close v)\n                        set [--interaction opened v] to [0]\n                        stop [this script v]\n                    end\n                end\n            end\n        else\n            if <(clone-id) = [bg]> then\n                if <(open) = [1]> then\n                    go to [back v] layer\n                    set size to (100) %\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen I receive [close v]\nset [open v] to [0]\n\nwhen I receive [close v]\nwait (0.1) seconds\n\nwhen [timer v] > (0)\nhide\n\n@//📊 Scratch Analytics by @TimMcCool2\n\ndefine Send Data (payload)\nset [☁ to_host v] to (payload)\n\ndefine Encode (input)\nset [//output v] to []\nset [i v] to [0]\nrepeat (length of (input))\n    change [i v] by (1)\n    switch costume to (join [=] (letter (i) of (input)))\n    set [//output v] to (join (//output) (costume [number v]))\nend\n\nwhen flag clicked\nwait (0.6) seconds\nEncode (join (username) (join [,] (join (current [hour v]) (join [,] []))))\nSend Data (//output)\n\n@Intro\n\nwhen flag clicked\nset [mode v] to [intro]\ngo to x: (0) y: (0)\nset size to (0) %\nhide\nwait (0.2) seconds\nClone\nswitch costume to (costume1 v)\nshow\nset volume to (10) %\nstart sound [Intro v]\nset [ghost v] effect to (100)\npoint in direction (-165)\nset [bounce_3_vel v] to [0]\nrepeat (50)\n    turn right (((direction) - (90)) / (-3)) degrees\n    change [ghost v] effect by (-10)\n    set [bounce_3_vel v] to (((bounce_3_vel) * (0.7)) + (((size) - (70)) * (-0.15)))\n    change size by (bounce_3_vel)\nend\nset [bounce_3_vel v] to [0]\nbroadcast (\[intro\]stop v)\n\nturn right (((direction) - (-90)) / (-4)) degrees\n\ndefine Clone\nset [target raidus v] to [bg]\ncreate clone of (_myself_ v)\nset [target raidus v] to [skip]\ncreate clone of (_myself_ v)\nrepeat (20)\n    if <(pick random (1) to (4)) = [2]> then\n        switch costume to (costume3 v)\n    else\n        if <(pick random (1) to (2)) = [2]> then\n            switch costume to (costume2 v)\n        else\n            switch costume to (costume4 v)\n        end\n    end\n    set [target raidus v] to (pick random (100) to (200))\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(target raidus) = [bg]> then\n    go to x: (0) y: (0)\n    show\n    set [ghost v] effect to (85)\n    set size to (0) %\n    forever\n        switch costume to (costume1 v)\n        change size by (((size) - (100)) / (-3.5))\n        change [ghost v] effect by (0.5)\n        switch costume to (costume5 v)\n    end\nelse\n    if <(target raidus) = [skip]> then\n        point in direction (90)\n        switch costume to (costume7 v)\n        go to x: (0) y: (0)\n        show\n        set [ghost v] effect to (50)\n        set size to (100) %\n        wait (1) seconds\n        forever\n            change [ghost v] effect by (10)\n        end\n    else\n        go to x: (0) y: (20)\n        show\n        set [ghost v] effect to (pick random (30) to (50))\n        set size to (pick random (10) to (50)) %\n        set [direction v] to (pick random (1) to (360))\n        set [target x v] to (([sin v] of (direction) ) * (target raidus))\n        set [target y v] to (([cos v] of (direction) ) * (target raidus))\n        repeat (5)\n            change x by (((x position) - (target x)) / (-4))\n            change y by (((y position) - (target y)) / (-4))\n        end\n        set [xspeed v] to (((x position) - (target x)) / (-6))\n        set [yvel v] to (((y position) - (target y)) / (-4))\n        forever\n            change [ghost v] effect by (1.2)\n            change y by (yvel)\n            change [yvel v] by (-0.5)\n            change x by (xspeed)\n            turn right (xspeed) degrees\n        end\n    end\nend\n\nwhen I receive [\[intro\]stop v]\ndelete this clone\n\nwhen I start as a clone\nif <(target raidus) = [skip]> then\n    forever\n        if <mouse down?> then\n            broadcast (\[intro\]stop v)\n        end\n    end\nend\n\nwhen I receive [\[intro\]stop v]\nstop [other scripts in sprite v]\nset [target raidus v] to [bg]\ncreate clone of (_myself_ v)\nrepeat (100)\n    change [bounce_3_vel v] by (6)\n    change [ghost v] effect by (10)\n    change size by (-10)\nend\n\n@Fishey Bouncing icon\n\nwhen flag clicked\nhide\n\nwhen [timer v] > (0)\nwait (0.15) seconds\nshow\nset size to (100) %\nset [ghost v] effect to (100)\ngo to x: (203) y: (-144)\nchange y by (-100)\nforever\n    go to [front v] layer\n    change [ghost v] effect by (-10)\n    set [bounce2vel v] to (((bounce2vel) * (0.6)) + (((y position) - (-144)) * (-0.2)))\n    change y by (bounce2vel)\nend\n\nwhen [timer v] > (0)\nforever\n    wait until <touching (mouse-pointer v)?>\n    repeat (10)\n        change [brightness v] effect by (5)\n    end\n    wait until <not <touching (mouse-pointer v)?>>\n    repeat (10)\n        change [brightness v] effect by (-5)\n    end\n    clear graphic effects\nend\n\nwhen [timer v] > (0)\nforever\n    repeat until <touching (mouse-pointer v)?>\n        change size by (((size) - (100)) / (-4))\n    end\n    wait until <not <touching (mouse-pointer v)?>>\n    start sound [Boing v]\n    set size to (100) %\n    set [__stop_effect_size_vel v] to [20]\n    repeat (17)\n        change [__stop_effect_size_vel v] by (-2.5)\n        change size by (__stop_effect_size_vel)\n    end\nend\n\n@levellimit2\n\nset [clone-id v] to [bg]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen I receive [twclientrequired-popup v]\nif <(open) = [0]> then\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [\side-bar opened v] to [0]\n    set [paused2 v] to [1]\n    set [open v] to [1]\n    set [clone-id v] to [popup]\n    create clone of (_myself_ v)\n    set [clone-id v] to [okay]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [closecutsign v]\nset [open v] to [0]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (25)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    broadcast (closecutsign v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [close v]\nset [paused2 v] to [0]\n\nwhen [timer v] > (0)\nhide\n\n@shutdown notice\n\nset [clone-id v] to [bg]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen I receive [shutdown-popup v]\n\n    if <(open) = [0]> then\n        go to x: (0) y: (0)\n        stop [other scripts in sprite v]\n        set [\side-bar opened v] to [0]\n        set [paused2 v] to [1]\n        set [open v] to [1]\n        set [clone-id v] to [popup2]\n        create clone of (_myself_ v)\n        set [clone-id v] to [okay]\n        create clone of (_myself_ v)\n    end\nelse\n    broadcast (shutdownnotice-close v)\nend\n\nwhen I receive [shutdownnotice-close v]\nset [open v] to [0]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (25)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(clone-id) = [okay]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    broadcast (shutdownnotice-close v)\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen [timer v] > (0)\nhide\n\nwhen I receive [close v]\nset [paused2 v] to [0]\n\nwhen [timer v] > (0)\nhide\n\n@Thumbnail\n\nwhen I start as a clone\nwait (0.1) seconds\nshow\nclear graphic effects\nset [ghost v] effect to (75)\nswitch costume to (woosh v)\nset size to (100) %\ngo to x: (-300) y: (0)\nrepeat (100)\n    change x by (70)\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\nwhen [timer v] > (0)\nwait (0.15) seconds\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nhide\nforever\n    reset timer\n    set [ghost v] effect to (100)\nend\n\nwhen [timer v] > (0)\nwait (0.15) seconds\nset volume to (40) %\nstart sound [Zoop v]\ncreate clone of (_myself_ v)\nswitch costume to (thumbnail v)\nshow\nset size to (200) %\nset [ghost v] effect to (100)\nrepeat (100)\n    go to [front v] layer\n    go [backward v] (1) layers\n    change size by (((size) - (100)) / (-3))\n    change [ghost v] effect by (-10)\n    change size by (((size) - (100)) / (-8))\nend\n\n@FailedToLoad\n\nwhen I receive [@failed to load v]\nif <(open) = [0]> then\n    go to x: (0) y: (0)\n    stop [other scripts in sprite v]\n    set [open v] to [1]\n    if <(mode) = [init]> then\n        set [clone-id v] to [newscratcher]\n        create clone of (_myself_ v)\n        stop [this script v]\n    else\n        if <(⛈️ STATUS) = [-9]> then\n            set [clone-id v] to [nostorage]\n        else\n            if <(⛈️ STATUS) = [-5]> then\n                if <not <(mode) = [editor]>> then\n                    set [clone-id v] to [timeout]\n                else\n                    set [clone-id v] to [failedtosave]\n                end\n            else\n                if <<(@@LEVEL shared) = [False]> and <not <(@@LEVEL author) = (@username)>>> then\n                    set [clone-id v] to [403]\n                else\n                    set [clone-id v] to [500]\n                end\n            end\n        end\n    end\n    if <not <(mode) = [editor]>> then\n        set [mode v] to [-]\n    end\n    create clone of (_myself_ v)\n    set [clone-id v] to [close]\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nforever\n    \n        hide\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [failedtoload close v]\nrepeat (10)\n    change size by (((size) - (70)) / (-4.5))\n    change [ghost v] effect by (15)\nend\nhide\ndelete this clone\n\ndefine effect 1\nshow\nif <(clone-id) = [bg]> then\n\nwhen I start as a clone\nforever\n    if <(clone-id) = [close]> then\n        if <(open) = [1]> then\n            change [ghost v] effect by (-10)\n            if <touching (mouse-pointer v)?> then\n                set [ghost v] effect to (50)\n                if <mouse down?> then\n                    set [ghost v] effect to (40)\n                    wait until <not <mouse down?>>\n                    set [⛈️ status v] to [2]\n                    broadcast (failedtoload close v)\n                    if <not <<(mode) = [editor]> or <(mode) = [playing]>>> then\n                        set [mode v] to [home]\n                        wait (0.1) seconds\n                        broadcast (init-home v)\n                    end\n                    stop [this script v]\n                end\n            end\n        end\n    else\n        if <(clone-id) = [bg]> then\n            if <(open) = [1]> then\n                go to [back v] layer\n                set size to (100) %\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [open v] to [0]\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nset [open v] to [0]\nswitch costume to (pick random (1) to (1))\nnext costume\nrepeat until <(costume [number v]) = [1]>\n    wait (0.1) seconds\n    next costume\nend\nhide\n\nwhen I receive [failedtoload close v]\nset [open v] to [0]\n\nwhen I start as a clone\nswitch costume to (clone-id)\n\nwhen I start as a clone\nif <(clone-id) = [bg]> then\n    if <(open) = [1]> then\n        set [ghost v] effect to (100)\n        repeat (10)\n            change [ghost v] effect by (-4)\n        end\n    end\nend\n\nwhen I start as a clone\neffect 1\n\nbroadcast (popup0 v)\n\ndefine sb\nset [vel2 v] to (((vel2) * (0.65)) + ((((100) + ()) - (size)) * (0.15)))\nchange size by (vel2)\nchange y by ((y position) / (-3))\n\nwhen [timer v] > (0)\nhide\n\nset [@username v] to [test]\nbroadcast (@ack v)\n\nwhen I receive [ban v]\nstop [other scripts in sprite v]\nhide\ndelete this clone\n\n